@import "https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700&display=swap";.portfolio-site a{text-decoration:none}.c-nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;max-width:1400px;height:78px;margin:auto;padding:0 34px;display:flex}.c-brand{align-items:center;gap:12px;display:flex}.c-brand>b{background:var(--lime);color:#161913;border-radius:10px;place-items:center;width:34px;height:34px;font-size:.8rem;display:grid}.c-brand>span{font-size:.84rem;font-weight:600}.c-brand small{color:var(--muted);font-size:.66rem;font-weight:400;display:block}.c-nav nav{color:var(--muted);gap:24px;font-size:.76rem;display:flex}.c-nav a:hover{color:var(--lime)}.portfolio-site main{max-width:1400px;margin:auto;padding:0 34px}.c-intro{grid-template-columns:1.5fr .6fr;align-items:end;gap:10vw;padding:75px 0 58px;display:grid}.c-status{color:#b7bfca;align-items:center;gap:8px;font-size:.7rem;display:inline-flex}.c-status i{background:var(--lime);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #d0ef7b1e}.c-intro h1{letter-spacing:-.06em;max-width:980px;margin:25px 0 0;font-size:clamp(3rem,6vw,6.6rem);line-height:.95}.c-intro>p{color:var(--muted);font-size:.95rem;line-height:1.7}.c-browser{border:1px solid var(--line);background:var(--panel);border-radius:18px;overflow:hidden;box-shadow:0 30px 80px #0005}.c-browser-bar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:56px;padding:0 18px;display:flex}.c-browser-bar h2{font-size:.82rem}.c-browser-bar span{color:var(--muted);font-size:.68rem}.c-browser-body{grid-template-columns:310px 1fr;min-height:690px;display:grid}.c-project-list{border-right:1px solid var(--line);padding:12px}.c-project-list button{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;grid-template-columns:1fr auto;align-items:center;padding:20px 14px;display:grid}.c-project-list button:hover,.c-project-list button.active{background:var(--panel2);border-bottom-color:#0000;border-radius:10px}.c-project-list button.active span{color:var(--lime)}.c-project-list small{color:var(--muted);grid-column:1;margin-top:5px;font-size:.63rem}.c-project-list svg{grid-area:1/2/3;font-size:1rem}.c-project-panel{grid-template-columns:1.22fr .78fr;gap:18px;padding:18px;display:grid}.c-preview{background:#101219;border-radius:12px;min-width:0;min-height:520px;overflow:hidden}.c-preview-freight{grid-template-rows:auto auto;grid-template-columns:1fr 1fr;place-content:center;gap:45px;padding:50px;display:grid;position:relative}.c-preview-freight:before{content:"";filter:blur(.2px);border:1px solid #404754;border-radius:50%;position:absolute;inset:25%}.c-service{text-align:center;z-index:1;background:#1d222d;border:1px solid #555e6c;border-radius:10px;padding:18px;font-size:.75rem}.c-main-service{color:#1b2013;background:#d0ef7b;border-color:#d0ef7b}.c-datastores{z-index:1;grid-column:1/-1;grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.c-datastores span{text-align:center;background:#151923;border:1px solid #424957;border-radius:8px;padding:14px 5px;font-size:.61rem}.c-preview-outing{background:radial-gradient(circle at 50% 38%,#5f3f7e,#241d31 48%,#12131a 80%);place-items:center;padding:50px;display:grid}.c-preview-outing img{width:60%;max-width:330px}.c-preview-outing div{color:#c1b8cd;justify-content:space-between;width:100%;font-size:.65rem;display:flex}.c-preview-chart{background:#d9ddd7;place-items:center;padding:20px;display:grid}.c-preview-chart img{width:100%}.c-preview-storage{flex-direction:column;justify-content:center;padding:60px;display:flex}.c-preview-storage span{background:#1d222c;border:1px solid #47505f;border-radius:8px;margin-top:-1px;padding:21px;font-size:.78rem}.c-preview-storage span:nth-child(2){margin-left:8%}.c-preview-storage span:nth-child(3){background:#2a3325;border-color:#72835c;margin-left:16%}.c-preview-storage span:nth-child(4){margin-left:24%}.c-preview-storage span:nth-child(5){margin-left:32%}.c-project-info{flex-direction:column;padding:16px 8px;display:flex}.c-project-info>div:first-child>p:first-child{text-transform:uppercase;letter-spacing:.1em;color:var(--lime);font-size:.62rem}.c-project-info h2{letter-spacing:-.045em;margin:14px 0;font-size:2.6rem}.c-project-info>div:first-child>p:last-child{color:var(--muted);font-size:.84rem;line-height:1.65}.c-project-meta{margin-top:28px}.c-project-meta>div{border-top:1px solid var(--line);grid-template-columns:85px 1fr;gap:10px;padding:15px 0;display:grid}.c-project-meta span{color:var(--muted);font-size:.63rem}.c-project-meta b{font-size:.7rem;font-weight:400;line-height:1.5}.c-project-meta .c-note b{color:#eacb91}.c-project-info>a{color:var(--lime);align-items:center;gap:7px;margin-top:auto;font-size:.78rem;font-weight:600;display:inline-flex}.c-tech,.c-journey,.c-archive{padding:140px 0 0}.c-tech>header,.c-archive>header{grid-template-columns:.55fr 1.45fr;margin-bottom:44px;display:grid}.c-tech>header span,.c-journey-head>span,.c-archive>header span,.c-footer span{text-transform:uppercase;letter-spacing:.12em;color:var(--lime);font-size:.63rem}.c-tech h2,.c-journey h2,.c-archive h2{letter-spacing:-.05em;margin:0;font-size:clamp(2rem,4vw,4.5rem);line-height:1}.c-tech-app{border:1px solid var(--line);border-radius:14px;grid-template-columns:260px 1fr;display:grid;overflow:hidden}.c-tabs{border-right:1px solid var(--line);background:#151821;padding:12px}.c-tabs button{width:100%;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:15px;display:block}.c-tabs button[aria-selected=true]{background:var(--panel2);color:var(--lime)}.c-tech-rows{padding:12px 24px}.c-tech-rows>div{border-bottom:1px solid var(--line);grid-template-columns:.65fr 1fr 1.5fr;align-items:center;padding:20px 4px;display:grid}.c-tech-rows strong{font-size:.86rem}.c-tech-rows span{color:var(--orange);font-size:.7rem}.c-tech-rows p{color:var(--muted);margin:0;font-size:.7rem}.c-journey-head{grid-template-columns:.55fr 1fr .45fr;align-items:end;margin-bottom:44px;display:grid}.c-journey-head p{color:var(--muted);font-size:.75rem}.c-journey-app{grid-template-columns:1.25fr .75fr;gap:18px;display:grid}.c-stage-select{border:1px solid var(--line);border-radius:14px;grid-template-columns:repeat(5,1fr);display:grid;overflow:hidden}.c-stage-select button{color:var(--text);border:0;border-right:1px solid var(--line);text-align:left;cursor:pointer;background:#151821;flex-direction:column;justify-content:space-between;min-height:240px;padding:24px 16px;display:flex}.c-stage-select button.active{color:#1b2014;background:#d0ef7b}.c-stage-select span{color:inherit;opacity:.65;font-size:.61rem}.c-stage-select b{font-size:.8rem}.c-stage-panel{background:var(--panel2);border-radius:14px;padding:30px}.c-stage-panel small{color:var(--lime);text-transform:uppercase;letter-spacing:.1em}.c-stage-panel h3{margin:18px 0;font-size:2rem}.c-stage-panel>p{color:var(--muted);font-size:.8rem;line-height:1.6}.c-stage-panel>div{flex-wrap:wrap;gap:7px;margin-top:24px;display:flex}.c-stage-panel>div span{border:1px solid #434957;border-radius:20px;padding:7px 10px;font-size:.63rem}.c-archive{padding-bottom:130px}.c-archive>div{border-top:1px solid var(--line)}.c-archive article{border-bottom:1px solid var(--line)}.c-archive article>button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:1fr 1fr auto;align-items:center;padding:18px 8px;display:grid}.c-archive article>button small{color:var(--muted)}.c-archive article>div{color:var(--muted);padding:0 8px 22px 50%;font-size:.78rem}.c-archive article>div span{color:var(--orange);font-size:.65rem}.c-footer{border-top:1px solid var(--line);grid-template-columns:1fr 1.4fr;gap:10vw;max-width:1400px;margin:auto;padding:75px 34px 90px;display:grid}.c-footer h2{letter-spacing:-.03em;font-size:2rem}.c-footer p{color:var(--muted);font-size:.8rem;line-height:1.6}.portfolio-site :focus-visible{outline:2px solid var(--lime);outline-offset:3px}@media (width<=850px){.c-nav{padding:0 18px}.c-nav nav{gap:14px}.c-nav nav a:nth-child(2),.c-nav nav a:nth-child(3){display:none}.portfolio-site main{padding:0 18px}.c-intro{grid-template-columns:1fr;gap:28px;padding:55px 0 38px}.c-intro h1{font-size:3.5rem}.c-browser-body{grid-template-columns:1fr}.c-project-list{border-right:0;border-bottom:1px solid var(--line);display:flex;overflow:auto}.c-project-list button{min-width:190px}.c-project-panel{grid-template-columns:1fr}.c-preview{min-height:340px}.c-preview-freight{gap:22px;padding:25px}.c-datastores{grid-template-columns:repeat(3,1fr)}.c-project-info{min-height:460px}.c-tech,.c-journey,.c-archive{padding-top:95px}.c-tech>header,.c-archive>header,.c-journey-head{grid-template-columns:1fr;gap:18px}.c-tech-app{grid-template-columns:1fr}.c-tabs{border-right:0;border-bottom:1px solid var(--line);display:flex;overflow:auto}.c-tabs button{white-space:nowrap;width:auto}.c-tech-rows{padding:8px 14px}.c-tech-rows>div{grid-template-columns:1fr 1fr}.c-tech-rows p{grid-column:1/-1;margin-top:7px}.c-journey-app{grid-template-columns:1fr}.c-stage-select{display:flex;overflow:auto}.c-stage-select button{min-width:150px;min-height:180px}.c-stage-panel{min-height:330px}.c-archive article>button{grid-template-columns:1fr auto}.c-archive article>button small{grid-column:1}.c-archive article>button svg{grid-area:1/2/3}.c-archive article>div{padding-left:8px}.c-footer{grid-template-columns:1fr;gap:40px;padding:65px 18px}}body{background:#11131a}.portfolio-site{--bg:#11131a;--panel:#181b24;--panel2:#20242e;--line:#303541;--text:#edf0f4;--muted:#9098a7;--lime:#d0ef7b;--orange:#e8a86d;background:var(--bg);color:var(--text);min-height:100vh;font-family:Geist,system-ui,sans-serif}.portfolio-site *{box-sizing:border-box}.portfolio-site a{color:inherit;text-decoration:none}.site-nav{border-bottom:1px solid var(--line);z-index:10;justify-content:space-between;align-items:center;max-width:1400px;height:78px;margin:auto;padding:0 34px;display:flex;position:relative}.site-identity{align-items:baseline;gap:12px;display:flex}.site-identity strong{letter-spacing:-.02em;font-size:.95rem}.site-identity span{text-transform:uppercase;letter-spacing:.12em;color:var(--lime);font-size:.64rem}.site-nav>nav{color:var(--muted);gap:25px;font-size:.75rem;display:flex}.site-nav>nav a:hover{color:var(--lime)}.site-menu{border:1px solid var(--line);color:var(--text);background:0 0;border-radius:8px;width:38px;height:38px;display:none}.site-mobile-nav{display:none}.site-home{max-width:1400px;margin:auto;padding:0 34px}.home-hero{grid-template-columns:1.3fr .7fr;align-items:end;gap:10vw;padding:88px 0 68px;display:grid}.section-kicker,.section-heading>span,.home-ending>div>span,.project-kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--lime);font-size:.64rem}.home-hero h1{letter-spacing:-.075em;margin:24px 0 0;font-size:clamp(4.2rem,9vw,9.2rem);line-height:.82}.hero-summary strong{font-size:1.15rem;line-height:1.45;display:block}.hero-summary p{color:var(--muted);font-size:.9rem;line-height:1.7}.hero-summary a{color:var(--lime);gap:8px;margin-top:18px;font-size:.76rem;display:inline-flex}.section-heading{gap:8vw;grid-template-columns:.45fr 1.2fr!important;align-items:start!important;margin-bottom:42px!important;display:grid!important}.section-heading h2{letter-spacing:-.045em!important;margin:0!important;font-size:clamp(2rem,3.6vw,3.8rem)!important;line-height:1.04!important}.section-heading p{color:var(--muted);max-width:570px;font-size:.82rem;line-height:1.6}.c-tech-content{min-width:0}.scale-key{color:var(--muted);text-align:center;grid-template-columns:repeat(4,1fr);gap:0;margin-left:34%;padding:18px 28px 4px;font-size:.54rem;display:grid}.c-tech-rows>div{grid-template-columns:.6fr 1.05fr 1.35fr}.c-tech-rows>div>div{padding-right:22px}.experience-scale{align-items:center;height:16px;display:flex}.experience-line{background:#424957;width:100%;height:1px;position:relative}.experience-line i{background:var(--lime);height:1px;position:absolute;top:0;left:0}.experience-line span{background:var(--panel);border:2px solid #59616f;border-radius:50%;width:9px;height:9px;position:absolute;top:-4px}.experience-line span:first-of-type{left:0}.experience-line span:nth-of-type(2){left:33.333%}.experience-line span:nth-of-type(3){left:66.666%}.experience-line span:nth-of-type(4){right:0}.experience-line span.reached{border-color:var(--lime);background:var(--lime)}.skill-evidence{margin-top:4px;display:block;color:var(--orange)!important;font-size:.64rem!important}.roadmap{padding:140px 0 0}.roadmap-track{height:330px;position:relative}.roadmap-track svg{width:100%;height:270px;position:absolute;inset:12px 0 0;overflow:visible}.road-base,.road-progress{fill:none;stroke-width:2px;vector-effect:non-scaling-stroke}.road-base{stroke:#353b47;stroke-dasharray:5 8}.road-progress{stroke:var(--lime);stroke-dasharray:1300;stroke-dashoffset:0;opacity:.75;animation:1.4s ease-out both draw-road}.road-node{width:165px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;padding:0;position:absolute;transform:translate(-50%,-50%)}.road-node i{border:3px solid var(--bg);background:#667080;border-radius:50%;width:15px;height:15px;margin-bottom:12px;transition:all .2s;display:block;box-shadow:0 0 0 1px #667080}.road-node span{color:var(--muted);letter-spacing:.1em;font-size:.58rem;display:block}.road-node b{margin-top:3px;font-size:.73rem;line-height:1.35;display:block}.road-node.active i,.road-node:hover i{background:var(--lime);box-shadow:0 0 0 2px var(--lime)}.road-node.active b{color:var(--lime)}.node-0{top:102px;left:5.5%}.node-1{top:112px;left:32.5%}.node-2{top:177px;left:51%}.node-3{top:76px;left:72%}.node-4{top:154px;left:94%}.road-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1.2fr .8fr;gap:10vw;padding:34px 0;display:grid}.road-details>div:first-child>span{color:var(--lime);font-size:.65rem}.road-details h3{letter-spacing:-.04em;margin:10px 0;font-size:2.1rem}.road-details p{color:var(--muted);font-size:.8rem;line-height:1.65}.road-details small{text-transform:uppercase;letter-spacing:.1em;color:var(--orange);margin-top:4px;font-size:.57rem;display:block}.home-ending{border-top:1px solid var(--line);grid-template-columns:1fr 1.3fr;gap:10vw;padding:80px 0 100px;display:grid}.home-ending h2{letter-spacing:-.04em;font-size:2rem}.home-ending p{color:var(--muted);font-size:.8rem;line-height:1.7}.site-footer{border-top:1px solid var(--line);max-width:1400px;color:var(--muted);justify-content:space-between;margin:auto;padding:30px 34px 42px;font-size:.7rem;display:flex}.site-footer div{gap:12px;display:flex}.site-footer strong{color:var(--text)}@keyframes draw-road{0%{stroke-dashoffset:1300px}}@media (width<=850px){.site-nav{height:68px;padding:0 18px}.site-identity{flex-direction:column;gap:1px}.site-nav>nav{display:none}.site-menu{place-items:center;display:grid}.site-mobile-nav{background:var(--panel);border:1px solid var(--line);border-radius:12px;flex-direction:column;padding:10px;position:absolute;top:67px;left:18px;right:18px;gap:0!important;display:flex!important}.site-mobile-nav a{border-bottom:1px solid var(--line);color:var(--text);justify-content:space-between;padding:14px;display:flex}.site-home{padding:0 18px}.home-hero{grid-template-columns:1fr;gap:45px;padding:62px 0 48px}.home-hero h1{font-size:4.8rem}.section-heading{grid-template-columns:1fr!important;gap:14px!important}.c-project-list{scrollbar-width:none}.c-project-list::-webkit-scrollbar{display:none}.scale-key{display:none}.c-tech-rows>div{grid-template-columns:.75fr 1.25fr}.c-tech-rows>div>p{grid-column:1/-1}.roadmap{padding-top:95px}.roadmap-track{height:auto;padding-left:26px}.roadmap-track svg{display:none}.road-node{border-left:1px solid #4a5260;width:100%;min-height:104px;padding:0 0 22px 32px;position:relative;transform:none;top:auto!important;left:auto!important}.road-node:last-child{border-left-color:#0000}.road-node:before{content:"";background:#4a5260;width:22px;height:1px;position:absolute;top:8px;left:-1px}.road-node i{position:absolute;top:4px;left:-8px}.road-node b{font-size:.84rem}.road-details{grid-template-columns:1fr;gap:15px;padding:28px 0}.home-ending{grid-template-columns:1fr;gap:48px;padding:65px 0}.site-footer{flex-direction:column;gap:20px;padding:28px 18px}.site-footer div{flex-direction:column;gap:3px}}@media (prefers-reduced-motion:reduce){.road-progress{animation:none}}.project-page,.project-not-found{max-width:1400px;margin:auto;padding:0 34px}.project-hero{padding:55px 0 100px}.back-link{margin-bottom:70px;font-size:.74rem;display:inline-block;color:var(--muted)!important}.back-link:hover{color:var(--lime)!important}.project-title{grid-template-columns:1.25fr .75fr;align-items:end;gap:10vw;margin-bottom:58px;display:grid}.project-title h1{letter-spacing:-.07em;margin:18px 0 25px;font-size:clamp(4rem,8vw,8.5rem);line-height:.88}.project-title>div:first-child>p:last-child{color:var(--muted);max-width:750px;font-size:1rem;line-height:1.7}.technology-list{flex-wrap:wrap;align-content:flex-end;gap:7px;display:flex}.technology-list span{border:1px solid var(--line);color:#bbc2cd;border-radius:20px;padding:7px 10px;font-size:.62rem}.project-visual{border:1px solid var(--line);background:var(--panel);border-radius:16px;min-height:550px;overflow:hidden}.freightline-visual{background:radial-gradient(circle at 50% 45%,#263228,#151821 60%);flex-direction:column;justify-content:center;gap:48px;padding:70px;display:flex}.visual-layer{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;display:grid}.visual-layer span{text-align:center;background:#191e27;border:1px solid #48515d;border-radius:9px;padding:20px 12px;font-size:.72rem}.visual-layer.emphasis span{border-color:#7d9052}.visual-layer.emphasis span:first-child{background:var(--lime);color:#18200d}.outing-visual{background:radial-gradient(circle,#563c70,#221b2e 45%,#141720 75%);place-content:center;gap:60px;padding:70px;display:grid}.outing-visual>div{justify-content:center;gap:12px;display:flex}.outing-visual span{border:1px solid #6b5b7d;border-radius:9px;padding:15px 18px;font-size:.7rem}.outing-visual strong{color:#d9bafa;letter-spacing:-.05em;justify-self:center;font-size:3.3rem}.outing-visual p{text-align:center;color:var(--muted);font-size:.72rem}.storage-visual{background:linear-gradient(145deg,#151821,#1b221b);grid-template-columns:1fr 1fr;gap:10vw;padding:60px;display:grid}.write-path,.read-path{flex-direction:column;justify-content:center;display:flex}.write-path span{background:#1d222c;border:1px solid #4b5660;flex-direction:column;align-items:center;padding:17px;font-size:.8rem;display:flex}.write-path i{color:var(--lime);height:22px;font-style:normal}.read-path{gap:10px}.read-path small{color:var(--orange);text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}.read-path span{border-bottom:1px solid #4b5660;padding:17px;font-size:.75rem}.nbody-visual{color:#151815;background:#d9ded9;grid-template-columns:1fr 1fr;gap:30px;padding:65px;display:grid}.nbody-visual>div:not(.benchmark-path){border-top:3px solid #20241f;flex-direction:column;gap:10px;padding-top:18px;display:flex}.nbody-visual div>span{letter-spacing:-.05em;font-size:2.5rem;font-weight:700}.nbody-visual b{border-bottom:1px solid #9ca39c;padding:12px 0;font-size:.72rem;font-weight:500}.benchmark-path{grid-column:1/-1;align-items:end;gap:8px;display:flex}.benchmark-path span{height:calc(45px + var(--i,0)*10px);border-left:1px solid #858c85;padding:10px;flex:1!important;font-size:.65rem!important}.project-notice{color:#e7cb98;border-block:1px solid #7a6747;grid-template-columns:.3fr 1fr;gap:40px;padding:25px 0;display:grid}.project-notice span{text-transform:uppercase;letter-spacing:.12em;font-size:.62rem}.project-notice p{margin:0;font-size:.82rem;line-height:1.6}.project-section{border-top:1px solid var(--line);grid-template-columns:.34fr 1fr;gap:7vw;padding:95px 0;display:grid}.project-section>header>span{text-transform:uppercase;letter-spacing:.12em;color:var(--lime);font-size:.62rem}.project-section>header>p{color:var(--muted);margin-top:18px;font-size:.72rem;line-height:1.6}.project-lead{letter-spacing:-.035em;margin:0 0 50px;font-size:clamp(1.45rem,2.6vw,2.7rem);line-height:1.35}.focus-grid{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);display:grid}.focus-grid span{border-bottom:1px solid var(--line);padding:17px 0;font-size:.8rem}.detail-list{border-top:1px solid var(--line)}.detail-list>p{border-bottom:1px solid var(--line);color:#b6bdc8;margin:0;padding:18px 0;font-size:.82rem;line-height:1.6}.architecture-groups{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.architecture-groups section{border-left:1px solid var(--line);padding:24px}.architecture-groups h3{color:var(--orange);margin:0 0 22px;font-size:.82rem}.architecture-groups p{color:var(--muted);font-size:.75rem;line-height:1.5}.detail-columns{grid-template-columns:1fr 1fr;gap:50px;display:grid}.project-metrics{grid-template-columns:repeat(4,1fr);margin-bottom:55px;display:grid}.project-metrics>div{border-left:1px solid var(--line);padding:22px}.project-metrics strong{color:var(--lime);letter-spacing:-.05em;font-size:2.4rem;display:block}.project-metrics span,.project-metrics small{font-size:.68rem;display:block}.project-metrics small{color:var(--muted);margin-top:5px}.project-gallery{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.project-gallery figure{background:#d9ddd8;border-radius:10px;margin:0;overflow:hidden}.project-gallery img{object-fit:contain;width:100%;min-height:300px}.project-gallery figcaption{background:var(--panel);color:var(--muted);padding:12px;font-size:.64rem}.project-next{border-top:1px solid var(--line);justify-content:space-between;padding:40px 0 90px;font-size:.78rem;display:flex}.project-next a:hover{color:var(--lime)}.project-not-found{min-height:70vh;padding-top:140px}.project-not-found h1{font-size:4rem}@media (width<=850px){.project-page,.project-not-found{padding:0 18px}.project-hero{padding:40px 0 70px}.back-link{margin-bottom:50px}.project-title{grid-template-columns:1fr;gap:28px}.project-title h1{font-size:4.2rem}.project-visual{min-height:420px}.freightline-visual{gap:24px;padding:30px 20px}.visual-layer{grid-template-columns:repeat(2,1fr)}.outing-visual{padding:35px 20px}.outing-visual>div{flex-direction:column}.storage-visual{grid-template-columns:1fr;gap:35px;padding:30px}.nbody-visual{grid-template-columns:1fr;padding:30px}.benchmark-path{grid-column:1}.project-notice,.project-section{grid-template-columns:1fr;gap:24px}.project-section{padding:68px 0}.focus-grid,.detail-columns,.project-gallery,.architecture-groups{grid-template-columns:1fr}.architecture-groups section{border-left:0;border-top:1px solid var(--line)}.project-metrics{grid-template-columns:1fr 1fr}.project-metrics>div{border-bottom:1px solid var(--line)}.project-gallery img{min-height:220px}.project-next{padding-bottom:70px}}.home-hero{grid-template-columns:minmax(0,1.15fr) minmax(270px,.6fr);align-items:center;gap:9vw;min-height:calc(62vh - 78px);padding:62px 0 54px}.hero-primary{max-width:800px}.home-hero h1{margin:20px 0 28px;font-size:clamp(3.8rem,6.7vw,6.5rem);line-height:.9}.hero-primary>strong{max-width:660px;font-size:1.18rem;line-height:1.45;display:block}.hero-primary>p{max-width:670px;color:var(--muted);margin:12px 0 0;font-size:.9rem;line-height:1.7}.hero-primary>a{color:var(--lime);gap:8px;margin-top:22px;font-size:.76rem;display:inline-flex}.hero-support{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;align-self:center;gap:30px;padding-top:18px;display:grid}.hero-support>div>span{color:var(--lime);text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px;font-size:.57rem;display:block}.hero-support p{color:#b7bec9;margin:7px 0;font-size:.73rem;line-height:1.35}.road-graphics{width:100%;margin-top:4px}.roadmap-desktop{width:100%;height:auto;display:block;overflow:visible}.roadmap-mobile{display:none}.roadmap-desktop .road-base,.roadmap-mobile .road-base{stroke:#414854;stroke-dasharray:none}.roadmap-desktop .road-progress,.roadmap-mobile .road-progress{stroke:var(--lime);stroke-dasharray:none;opacity:.9;transition:d .45s cubic-bezier(.2,.7,.2,1);animation:none}.svg-milestone{cursor:pointer;outline:none}.svg-milestone line{stroke:#59616d;stroke-width:1px;vector-effect:non-scaling-stroke}.svg-milestone .node-ring{fill:var(--bg);stroke:#66707e;stroke-width:2px;vector-effect:non-scaling-stroke;transition:r .2s,stroke .2s}.svg-milestone .node-core{fill:#0000;transition:fill .2s}.svg-milestone.complete .node-ring{fill:#626b76;stroke:#626b76}.svg-milestone.complete .node-core{fill:#626b76}.svg-milestone.active .node-ring{fill:var(--bg);stroke:var(--lime);stroke-width:3px}.svg-milestone.active .node-core{fill:var(--lime)}.svg-milestone:hover .node-ring,.svg-milestone:focus .node-ring{stroke:var(--lime)}.svg-milestone:focus .node-ring{stroke-width:4px}.road-period{fill:var(--muted);letter-spacing:1.2px;font:500 9px Geist,system-ui,sans-serif}.road-title{fill:#c4cad3;font:600 12px Geist,system-ui,sans-serif}.svg-milestone.active .road-period,.svg-milestone.active .road-title{fill:var(--lime)}.road-details{margin-top:4px}@media (width<=850px){.home-hero{grid-template-columns:1fr;gap:44px;min-height:0;padding:54px 0 48px}.home-hero h1{margin-bottom:24px;font-size:clamp(3.55rem,16vw,4.6rem)}.hero-primary>strong{font-size:1.05rem}.hero-support{grid-template-columns:1fr 1fr;width:100%}.roadmap-desktop{display:none}.roadmap-mobile{width:100%;max-width:420px;height:auto;display:block;overflow:visible}.road-graphics{margin-top:8px}.road-period{font-size:9px}.road-title{font-size:12px}.road-details{margin-top:6px}}@media (width<=500px){.hero-support{gap:20px}.hero-support p{font-size:.7rem}}.road-hit{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0}.svg-milestone:has(.road-hit:focus-visible) .node-ring{stroke:var(--lime);stroke-width:4px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}html,body,#root{min-width:320px;min-height:100%;margin:0}body{margin:0;overflow-x:hidden}::selection{color:#081018;background:#7c9cff}a{color:inherit}img{max-width:100%;display:block}.mono{font-family:Cascadia Code,SFMono-Regular,Consolas,monospace}@keyframes enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-soft{0%,to{opacity:.45}50%{opacity:.8}}.enter{animation:.55s cubic-bezier(.2,.7,.2,1) both enter}.enter-delay{animation:.55s cubic-bezier(.2,.7,.2,1) .12s both enter}.soft-pulse{animation:4s ease-in-out infinite pulse-soft}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
