*{box-sizing:border-box}html,body{margin:0;padding:0;background:#faf9f5;color:#1a1f1d;font-family:"Inter",-apple-system,BlinkMacSystemFont,"Avenir Next","Segoe UI",system-ui,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:radial-gradient(ellipse 1100px 600px at 50% -200px, rgba(142,217,115,0.1), transparent 70%),#faf9f5;background-attachment:fixed}a{color:#3d7d2a;text-decoration:none;transition:color 0.15s ease}a:hover{color:#2b5b1d}img{max-width:100%;display:block}em{font-style:italic;font-family:"Caudex",Georgia,"Times New Roman",serif;color:#3d7d2a;font-weight:400}code{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:0.92em;background:#f4f2eb;color:#1a1f1d;padding:1px 6px;border-radius:4px;border:1px solid #e8e6dd}.eyebrow{display:inline-block;font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:0.95rem;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:#3d7d2a;margin-bottom:18px;padding:4px 12px;background:#f0fae8;border-radius:4px;border:1px solid #a8e293}.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:16px clamp(20px, 5vw, 48px);backdrop-filter:blur(12px);background:rgba(250,249,245,0.85);border-bottom:1px solid #e8e6dd}.nav-brand{display:flex;align-items:center}.nav-logo{height:38px;width:auto}.nav-links{display:flex;gap:clamp(14px, 2.4vw, 24px);align-items:center}.nav-links a{color:#5a615a;font-size:0.92rem;font-weight:500;letter-spacing:-0.005em}.nav-links a:hover{color:#1a1f1d}.nav-links a.nav-cta{color:#3d7d2a;font-weight:600}.hero{padding:clamp(48px, 8vw, 104px) clamp(20px, 5vw, 48px) clamp(40px, 7vw, 80px);overflow-x:clip}.hero-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0, 0.92fr) minmax(0, 1.08fr);gap:clamp(28px, 4vw, 60px);align-items:center}.hero-copy{text-align:left;min-width:0}.hero-copy .hero-logo-svg{margin:0 0 22px;height:clamp(58px, 6.5vw, 88px)}.hero-media{min-width:0}.hero-media .media-frame{margin:0;max-width:100%}.hero-logo-svg{height:clamp(80px, 11vw, 115px);width:auto;display:block;margin:0 auto 36px;overflow:visible;position:relative;z-index:10;outline:none;-webkit-tap-highlight-color:transparent}.hero-logo-svg:focus,.hero-logo-svg:focus-visible,.hero-logo-svg:focus-within{outline:none}.hero-logo-svg .vlogo-node{transform-box:fill-box;transform-origin:center}.vlogo-connector{opacity:1}.hero-logo-svg.intro-active .vlogo-node{animation:vlogo-fire 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) 1 forwards}.hero-logo-svg.intro-active .intro-wrap{animation:intro-spread 5.1s cubic-bezier(0.16, 1, 0.3, 1) forwards}.hero-logo-svg.intro-active .vlogo-connector{animation:connector-fade 5.1s linear forwards}@keyframes vlogo-fire{0%{transform:scale(1);fill:#8ed973;filter:brightness(1) saturate(1) drop-shadow(0 0 0 rgba(142,217,115,0))}22%{transform:scale(1.1);fill:#d8f7b8;filter:brightness(1.25) saturate(1.3) drop-shadow(0 0 14px rgba(180,255,140,0.95))}100%{transform:scale(1);fill:#8ed973;filter:brightness(1) saturate(1) drop-shadow(0 0 0 rgba(142,217,115,0))}}.hero-logo-svg.intro-active .node-lm{animation-delay:0.80s}.hero-logo-svg.intro-active .node-bl{animation-delay:1.00s}.hero-logo-svg.intro-active .node-cl{animation-delay:1.20s}.hero-logo-svg.intro-active .node-tm{animation-delay:1.40s}.hero-logo-svg.intro-active .node-c{animation-delay:1.60s}.hero-logo-svg.intro-active .node-bm{animation-delay:1.80s}.hero-logo-svg.intro-active .node-ztl{animation-delay:2.00s}.hero-logo-svg.intro-active .node-ztr{animation-delay:2.20s}.hero-logo-svg.intro-active .node-zbl{animation-delay:2.40s}.hero-logo-svg.intro-active .node-zbr{animation-delay:2.60s}.hero-logo-svg.intro-active .node-tr{animation-delay:2.80s}.hero-logo-svg.intro-active .node-mr{animation-delay:3.00s}.hero-logo-svg.intro-active .node-br{animation-delay:3.20s}.intro-wrap{transform-origin:center}@keyframes intro-spread{0%{transform:translate(0, 0)}4%{transform:translate(0, 0)}16%{transform:translate(var(--scatter-x, 0), var(--scatter-y, 0))}75%{transform:translate(var(--scatter-x, 0), var(--scatter-y, 0))}86%{transform:translate(0, 0)}100%{transform:translate(0, 0)}}.intro-lm{--scatter-x: -5vw;--scatter-y: -4vh}.intro-cl{--scatter-x: +11vw;--scatter-y: -12vh}.intro-bl{--scatter-x: +3vw;--scatter-y: +14vh}.intro-tm{--scatter-x: +29vw;--scatter-y: -20vh}.intro-c{--scatter-x: +36vw;--scatter-y: -5vh}.intro-bm{--scatter-x: +25vw;--scatter-y: +18vh}.intro-tr{--scatter-x: +66vw;--scatter-y: -20vh}.intro-mr{--scatter-x: +71vw;--scatter-y: -2vh}.intro-br{--scatter-x: +63vw;--scatter-y: +16vh}.intro-ztl{--scatter-x: +43vw;--scatter-y: -16vh}.intro-ztr{--scatter-x: +55vw;--scatter-y: -8vh}.intro-zbl{--scatter-x: +39vw;--scatter-y: +18vh}.intro-zbr{--scatter-x: +51vw;--scatter-y: +12vh}@keyframes connector-fade{0%{opacity:1}4%{opacity:0}86%{opacity:0}100%{opacity:1}}.hero-logo-svg{cursor:pointer}.hero-tagline{font-family:"Caudex",Georgia,"Times New Roman",serif;font-size:clamp(1.75rem, 3.1vw, 2.7rem);font-weight:700;letter-spacing:-0.015em;line-height:1.12;margin:0 0 18px;color:#1a1f1d}.hero-tagline em{font-family:"Caudex",Georgia,"Times New Roman",serif;font-style:italic;font-weight:700;color:#3d7d2a}.hero-sub{font-size:clamp(0.98rem, 1.3vw, 1.1rem);color:#5a615a;margin:0 0 26px;line-height:1.5;max-width:520px}.hero-sub a{color:#3d7d2a;border-bottom:1px dotted #3d7d2a}.hero-cta{display:flex;gap:12px;justify-content:flex-start;flex-wrap:wrap;margin-bottom:22px}.hero-meta{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:0.92rem;font-weight:500;color:#5a615a;letter-spacing:0.02em;margin:0}.hero-meta .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#8ed973;margin-right:8px;vertical-align:middle;box-shadow:0 0 8px rgba(142,217,115,0.7)}.btn{display:inline-block;padding:12px 24px;border-radius:6px;font-weight:600;font-size:0.96rem;letter-spacing:-0.005em;border:1px solid transparent;transition:transform 0.12s ease, background 0.15s ease, border-color 0.15s ease, color 0.15s ease;cursor:pointer}.btn-sm{padding:9px 18px;font-size:0.88rem}.btn-primary{background:#1a1f1d;color:#faf9f5;border-color:#1a1f1d}.btn-primary:hover{background:#3d7d2a;border-color:#3d7d2a;color:#faf9f5;transform:translateY(-1px)}.btn-ghost{background:transparent;color:#1a1f1d;border-color:#d4d1c5}.btn-ghost:hover{border-color:#3d7d2a;color:#3d7d2a;transform:translateY(-1px)}.demo-band{padding:20px clamp(20px, 5vw, 48px) clamp(60px, 10vw, 100px)}.media-frame{position:relative;width:100%;max-width:1180px;margin:0 auto;aspect-ratio:16 / 10;border-radius:18px;overflow:hidden;background:#fff;border:1px solid #d4d1c5;box-shadow:0 24px 60px -28px rgba(60,80,50,0.22),0 0 0 1px rgba(142,217,115,0.08)}.media-fill{width:100%;height:100%;object-fit:cover;object-position:center}.media-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:linear-gradient(180deg, rgba(250,249,245,0) 30%, rgba(20,25,22,0.45) 100%);pointer-events:none}.play-icon{width:68px;height:68px;border-radius:50%;background:#8ed973;position:relative;box-shadow:0 8px 28px rgba(60,100,40,0.35)}.play-icon::before{content:"";position:absolute;top:50%;left:56%;transform:translate(-50%, -50%);width:0;height:0;border-left:20px solid #1a1f1d;border-top:13px solid transparent;border-bottom:13px solid transparent}.media-caption{color:#1a1f1d;background:rgba(255,255,255,0.95);padding:6px 14px;border-radius:999px;font-size:0.82rem;letter-spacing:0.02em;border:1px solid #d4d1c5}.section-head{text-align:center;max-width:780px;margin:0 auto clamp(40px, 6vw, 60px);padding:0 clamp(20px, 5vw, 48px)}.section-head h2{font-family:"Caudex",Georgia,"Times New Roman",serif;font-size:clamp(2rem, 4.2vw, 3rem);font-weight:700;letter-spacing:-0.018em;line-height:1.15;margin:0 0 16px;color:#1a1f1d}.section-sub{color:#5a615a;font-size:1.1rem;margin:0;line-height:1.55;font-weight:500}.features{padding:clamp(50px, 8vw, 90px) clamp(20px, 5vw, 48px)}.feature-grid{list-style:none;padding:0;margin:0 auto;max-width:1180px;display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:14px}.feature{background:#fff;border:1px solid #e8e6dd;border-radius:12px;padding:28px 26px;transition:border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease}.feature:hover{border-color:#d4d1c5;transform:translateY(-2px);box-shadow:0 12px 32px -16px rgba(60,80,50,0.18)}.feature-num{display:inline-block;font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:0.74rem;color:#3d7d2a;letter-spacing:0.1em;margin-bottom:14px}.feature h3{font-family:"Caudex",Georgia,"Times New Roman",serif;font-size:1.18rem;font-weight:700;letter-spacing:-0.01em;margin:0 0 10px;color:#1a1f1d}.feature p{font-size:0.94rem;color:#5a615a;line-height:1.55;margin:0}.use-cases{padding:clamp(50px, 8vw, 90px) clamp(20px, 5vw, 48px);background:#f4f2eb;border-top:1px solid #e8e6dd;border-bottom:1px solid #e8e6dd}.usecase-grid{list-style:none;padding:0;margin:0 auto;max-width:1180px;display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:16px}.usecase{background:#fff;border:1px solid #e8e6dd;border-radius:12px;padding:30px 28px;position:relative;overflow:hidden;transition:border-color 0.2s ease, transform 0.2s ease}.feature::before,.usecase::before,.stack-card::before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:#8ed973;opacity:0;transition:opacity 0.2s ease;z-index:1}.usecase:hover{border-color:#d4d1c5;transform:translateY(-2px)}.feature:hover::before,.usecase:hover::before,.stack-card:hover::before{opacity:1}.usecase h3{font-family:"Caudex",Georgia,"Times New Roman",serif;font-size:1.25rem;font-weight:700;letter-spacing:-0.01em;margin:0 0 12px;color:#1a1f1d}.usecase p{font-size:0.94rem;color:#5a615a;line-height:1.6;margin:0}.under-the-hood{padding:clamp(50px, 8vw, 100px) clamp(20px, 5vw, 48px)}.stack-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));gap:16px;max-width:1180px;margin:0 auto}.stack-card{background:#fff;border:1px solid #e8e6dd;border-radius:12px;padding:28px 26px}.stack-tag{display:inline-block;font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:0.7rem;letter-spacing:0.14em;text-transform:uppercase;color:#3d7d2a;background:#f0fae8;border:1px solid #a8e293;padding:3px 9px;border-radius:4px;margin-bottom:14px}.stack-card h3{font-family:"Caudex",Georgia,"Times New Roman",serif;font-size:1.2rem;font-weight:700;letter-spacing:-0.01em;margin:0 0 10px;color:#1a1f1d}.stack-card p{font-size:0.93rem;color:#5a615a;line-height:1.6;margin:0}.workflow{padding:clamp(50px, 8vw, 100px) clamp(20px, 5vw, 48px);background:#f4f2eb;border-top:1px solid #e8e6dd;border-bottom:1px solid #e8e6dd}.workflow-frame{aspect-ratio:1180 / 740;background:#fbfaf6;border-color:#d4d1c5}.workflow-svg{width:100%;height:100%;display:block}.status{padding:clamp(50px, 8vw, 90px) clamp(20px, 5vw, 48px);background:#f4f2eb;border-top:1px solid #e8e6dd}.status-card{max-width:1180px;margin:0 auto;background:#fff;border:1px solid #d4d1c5;border-radius:18px;padding:clamp(28px, 5vw, 56px);display:grid;grid-template-columns:2fr 1fr;gap:clamp(28px, 5vw, 56px);align-items:center}.status-text h2{font-family:"Caudex",Georgia,"Times New Roman",serif;font-size:clamp(1.4rem, 2.6vw, 1.9rem);font-weight:700;line-height:1.25;letter-spacing:-0.01em;margin:0 0 16px;color:#1a1f1d}.status-text p{font-size:0.98rem;line-height:1.6;color:#5a615a;margin:0 0 14px}.status-meta{font-size:0.95rem !important;color:#5a615a !important;font-weight:500}.ledger{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.ledger li{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:10px;border-bottom:1px solid #e8e6dd;font-size:0.92rem}.ledger li:last-child{border-bottom:none}.ledger-k{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:0.88rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:#5a615a}.ledger-v{color:#1a1f1d;font-weight:600;font-size:1rem}@media (max-width: 760px){.status-card{grid-template-columns:1fr}}.about-lab{padding:clamp(50px, 8vw, 100px) clamp(20px, 5vw, 48px)}.lab-card{max-width:920px;margin:0 auto;display:grid;grid-template-columns:130px 1fr;gap:clamp(24px, 4vw, 48px);align-items:center;background:#fff;border:1px solid #e8e6dd;border-radius:18px;padding:clamp(28px, 4vw, 48px)}.lab-logo{width:130px;height:130px;border-radius:16px;object-fit:cover;border:1px solid #d4d1c5}.lab-text h2{font-family:"Caudex",Georgia,"Times New Roman",serif;font-size:clamp(1.4rem, 2.4vw, 1.8rem);font-weight:700;letter-spacing:-0.01em;margin:0 0 14px}.lab-text p{font-size:0.98rem;line-height:1.6;color:#5a615a;margin:0 0 20px}@media (max-width: 600px){.lab-card{grid-template-columns:1fr;text-align:center}.lab-logo{margin:0 auto}}.footer{padding:60px clamp(20px, 5vw, 48px) 30px;border-top:1px solid #e8e6dd;background:#fbfaf6}.footer-inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.5fr 2fr;gap:40px}.footer-brand{max-width:360px}.footer-logo{height:24px;width:auto;margin-bottom:12px}.footer-tag{color:#5a615a;font-size:0.92rem;margin:0;line-height:1.55}.footer-cols{display:grid;grid-template-columns:repeat(3, 1fr);gap:24px}.footer-col h5{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:0.74rem;letter-spacing:0.14em;text-transform:uppercase;color:#9aa098;margin:0 0 14px;font-weight:500}.footer-col a{display:block;color:#5a615a;font-size:0.92rem;padding:4px 0}.footer-col a:hover{color:#3d7d2a}.footer-fine{max-width:1180px;margin:40px auto 0;text-align:left;color:#9aa098;font-size:0.82rem;padding-top:28px;border-top:1px solid #e8e6dd}@media (max-width: 760px){.footer-inner{grid-template-columns:1fr}.footer-cols{grid-template-columns:repeat(2, 1fr)}}@media (max-width: 880px){.hero-inner{grid-template-columns:1fr;gap:clamp(30px, 6vw, 48px);max-width:760px}.hero-copy{text-align:center}.hero-copy .hero-logo-svg{margin-left:auto;margin-right:auto}.hero-sub{margin-left:auto;margin-right:auto}.hero-cta{justify-content:center}.intro-lm{--scatter-x: -38vw;--scatter-y: -4vh}.intro-cl{--scatter-x: -22vw;--scatter-y: -12vh}.intro-bl{--scatter-x: -30vw;--scatter-y: +14vh}.intro-tm{--scatter-x: -4vw;--scatter-y: -20vh}.intro-c{--scatter-x: +3vw;--scatter-y: -5vh}.intro-bm{--scatter-x: -8vw;--scatter-y: +18vh}.intro-tr{--scatter-x: +33vw;--scatter-y: -20vh}.intro-mr{--scatter-x: +38vw;--scatter-y: -2vh}.intro-br{--scatter-x: +30vw;--scatter-y: +16vh}.intro-ztl{--scatter-x: +10vw;--scatter-y: -16vh}.intro-ztr{--scatter-x: +22vw;--scatter-y: -8vh}.intro-zbl{--scatter-x: +6vw;--scatter-y: +18vh}.intro-zbr{--scatter-x: +18vw;--scatter-y: +12vh}}@media (max-width: 720px){.nav-links a:not(.nav-cta){display:none}}html{scroll-behavior:smooth}.reveal{opacity:0;transform:translateY(56px) scale(0.96);transition:opacity 1s cubic-bezier(0.16, 1, 0.3, 1),transform 1.1s cubic-bezier(0.16, 1, 0.3, 1);will-change:opacity, transform}.reveal.is-in{opacity:1;transform:translateY(0) scale(1)}.feature-grid>.feature.reveal:nth-child(2){transition-delay:100ms}.feature-grid>.feature.reveal:nth-child(3){transition-delay:200ms}.feature-grid>.feature.reveal:nth-child(4){transition-delay:300ms}.feature-grid>.feature.reveal:nth-child(5){transition-delay:400ms}.feature-grid>.feature.reveal:nth-child(6){transition-delay:500ms}.feature-grid>.feature.reveal:nth-child(7){transition-delay:600ms}.feature-grid>.feature.reveal:nth-child(8){transition-delay:700ms}.usecase-grid>.usecase.reveal:nth-child(2){transition-delay:130ms}.usecase-grid>.usecase.reveal:nth-child(3){transition-delay:260ms}.usecase-grid>.usecase.reveal:nth-child(4){transition-delay:390ms}.stack-grid>.stack-card.reveal:nth-child(2){transition-delay:130ms}.stack-grid>.stack-card.reveal:nth-child(3){transition-delay:260ms}.stack-grid>.stack-card.reveal:nth-child(4){transition-delay:390ms}.hero{position:relative}.hero-inner{position:relative;z-index:1}.feature,.usecase,.stack-card{position:relative;overflow:hidden}.feature::after,.usecase::after,.stack-card::after{content:"";position:absolute;inset:0;background:radial-gradient(320px circle at var(--mx, 50%) var(--my, 50%), rgba(142,217,115,0.18), transparent 55%);opacity:0;transition:opacity 0.3s ease;pointer-events:none;z-index:0;border-radius:inherit}.feature:hover::after,.usecase:hover::after,.stack-card:hover::after{opacity:1}.feature>*,.usecase>*,.stack-card>*{position:relative;z-index:1}.stack-card{transition:border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease}.stack-card:hover{border-color:#d4d1c5;box-shadow:0 12px 32px -16px rgba(60,80,50,0.18)}.download-hero{padding:clamp(56px, 9vw, 110px) clamp(20px, 5vw, 48px) clamp(48px, 8vw, 90px)}.download-inner{max-width:980px;margin:0 auto;text-align:center}.download-inner h1{font-family:"Caudex",Georgia,"Times New Roman",serif;font-size:clamp(2.1rem, 4.4vw, 3.1rem);font-weight:700;letter-spacing:-0.018em;line-height:1.12;margin:14px 0 16px;color:#1a1f1d}.download-sub{font-size:clamp(1.02rem, 1.5vw, 1.18rem);color:#5a615a;line-height:1.55;max-width:620px;margin:0 auto 20px}.download-note{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:0.9rem;color:#5a615a;letter-spacing:0.02em;margin:0 0 clamp(36px, 5vw, 56px)}.download-note .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#8ed973;margin-right:8px;vertical-align:middle;box-shadow:0 0 8px rgba(142,217,115,0.7)}.download-grid{list-style:none;margin:0 auto;padding:0;display:grid;grid-template-columns:repeat(3, 1fr);gap:clamp(16px, 2.5vw, 24px);text-align:left}.download-card{background:#fff;border:1px solid #d4d1c5;border-radius:18px;padding:clamp(22px, 3vw, 32px);display:flex;flex-direction:column;gap:8px;box-shadow:0 12px 32px -22px rgba(60,80,50,0.2)}.download-card h2{font-family:"Caudex",Georgia,"Times New Roman",serif;font-size:1.5rem;font-weight:700;margin:0;color:#1a1f1d}.dl-meta{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-size:0.85rem;color:#5a615a;letter-spacing:0.02em;margin:0 0 14px}.dl-btn{align-self:flex-start}.dl-btn.is-disabled{background:#f4f2eb;color:#9aa098;border-color:#d4d1c5;cursor:not-allowed;pointer-events:none}.dl-fine{font-size:0.82rem;color:#9aa098;margin:12px 0 0}.download-foot{margin:clamp(40px, 6vw, 60px) 0 0;color:#5a615a;font-size:0.96rem}@media (max-width: 720px){.download-grid{grid-template-columns:1fr}}
