.marketing-shell.ecosystem-home{--home-canvas:#fbfaf7;--home-surface:#fff;--home-ink:#17181b;--home-muted:#6b6d74;--home-line:#e2e0da;--home-line-strong:#c9c7c0;--home-iris:#5752cf;--home-iris-deep:#433eb2;--home-iris-soft:#ecebff;--home-sand:#eadca8;--home-sand-soft:#faf4dd;--home-mono:"Geist Mono Variable", ui-monospace, SFMono-Regular, Menlo, monospace;background:var(--home-canvas);color:var(--home-ink);overflow:visible}.ecosystem-home main{overflow-x:clip}.ecosystem-home h1,.ecosystem-home h2,.ecosystem-home h3,.ecosystem-home p{margin-top:0}.ecosystem-home h1,.ecosystem-home h2,.ecosystem-home h3{color:var(--home-ink);font-family:Mona Sans Variable,Mona Sans,ui-sans-serif,sans-serif}.ecosystem-account-status{z-index:12;border:1px solid color-mix(in srgb, var(--home-iris) 22%, var(--home-line));background:var(--home-iris-soft);width:min(760px,100% - 36px);color:var(--home-iris-deep);text-align:center;border-radius:10px;margin:22px auto -58px;padding:13px 16px;font-size:13px;font-weight:680;line-height:1.55;position:relative}.ecosystem-hero-lede{max-width:36ch;color:var(--home-muted);letter-spacing:-.012em;text-wrap:pretty;margin:34px 0 0;font-size:clamp(18px,1.45vw,21px);line-height:1.55}.ecosystem-hero-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:36px;display:flex}.ecosystem-primary-link,.ecosystem-secondary-link{letter-spacing:-.01em;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 22px;font-size:15px;font-weight:700;transition:background-color .18s,border-color .18s,box-shadow .18s,color .18s,transform .18s;display:inline-flex}.ecosystem-primary-link{border-color:var(--home-ink);background:var(--home-ink);color:#fff;box-shadow:inset 0 1px #ffffff24,0 10px 24px -12px #17181b8c}.ecosystem-primary-link svg{width:17px;height:17px;transition:transform .2s cubic-bezier(.2,.8,.2,1)}.ecosystem-primary-link:hover,.ecosystem-primary-link:focus-visible{border-color:var(--home-iris-deep);background:var(--home-iris-deep);box-shadow:inset 0 1px #ffffff2e,0 14px 30px -14px #433eb2b3}.ecosystem-primary-link:hover svg,.ecosystem-primary-link:focus-visible svg{transform:translate(3px)}.ecosystem-primary-link:active,.ecosystem-secondary-link:active{transform:translateY(1px)}.ecosystem-secondary-link{border-color:var(--home-line-strong);color:var(--home-ink);background:#ffffffb3}.ecosystem-secondary-link:hover,.ecosystem-secondary-link:focus-visible{border-color:var(--home-ink);background:#fff}.ecosystem-primary-link:focus-visible,.ecosystem-secondary-link:focus-visible{outline-offset:3px;outline:3px solid #5752cf57}.pv-art text{font-family:Mona Sans Variable,Mona Sans,ui-sans-serif,sans-serif}.pv-t-strong{fill:#181619;letter-spacing:-.01em;font-weight:690}.pv-t-muted{fill:#716b6e;font-weight:540}.pv-t-mono{font-variant-numeric:tabular-nums;font-family:Geist Mono Variable,ui-monospace,monospace}.pv-art .pv-t-label{fill:#8d878c;letter-spacing:.06em;font-family:Geist Mono Variable,ui-monospace,monospace;font-weight:500}.pv-t-chip{fill:#433eb2;font-weight:740}.pv-t-chip-sand{fill:#73520a;font-weight:740}.pv-t-avatar,.pv-t-button{fill:#fff;font-weight:740}@keyframes pv-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pv-draw{to{stroke-dashoffset:0}}.ecosystem-boundaries>header h2 span{color:#6f6a76;letter-spacing:-.035em;font-family:Mona Sans Variable,Mona Sans,ui-sans-serif,system-ui,sans-serif;font-weight:420;display:block}.ecosystem-boundaries>header h2{letter-spacing:-.046em;text-wrap:balance;margin:0;font-size:clamp(40px,4.6vw,68px);font-weight:560;line-height:.98}.ecosystem-boundaries>header h2 span{color:#77727d;display:block}.sd-film{--sd-dur:26s;border-radius:clamp(12px,1.6vw,20px);width:100%;height:auto;display:block;box-shadow:0 1px 2px #17181b0d,0 40px 90px -40px #17181b61}.sd-film text{font-family:Mona Sans Variable,Mona Sans,ui-sans-serif,sans-serif}.sd-canvas{fill:#fbfaf7}.sd-sidebar-bg{fill:#f5f3ee}.sd-frame{fill:none;stroke:#dcd7cf}.sd-hairline{fill:none;stroke:#e6e1da;stroke-width:1px}.sd-surface{fill:#fff;stroke:#e6e1da;stroke-width:1px}.sd-lifted{filter:drop-shadow(0 18px 30px #17181b1a)}.sd-primary{fill:#5752cf}.sd-ink-button{fill:#17181b}.sd-avatar{fill:#f0eff9}.sd-row-next{fill:#f7f6ff}.sd-new-task-bg{fill:#f6f5ff}.sd-icon{fill:none;stroke:#6f6a70;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round}.sd-icon-white{fill:none;stroke:#fff;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.sd-icon-iris{fill:none;stroke:#5752cf;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round}.sd-task-check{fill:#fff;stroke:#c9c3ba;stroke-width:1.5px}.sd-nav-highlight{fill:#ecebff;transform:translateY(168px)}.sd-t-brand{fill:#17181b;letter-spacing:-.03em;font-weight:680}.sd-t-title{fill:#17181b;letter-spacing:-.03em;font-weight:640}.sd-t-heading{fill:#17181b;letter-spacing:-.01em;font-weight:640}.sd-t-strong{fill:#1f1d22;font-weight:620}.sd-t-body{fill:#2a272d;font-weight:480}.sd-t-muted{fill:#78727a;font-weight:500}.sd-t-nav{fill:#3d3940;font-weight:540}.sd-t-white{fill:#fff;font-weight:650}.sd-t-figure{fill:#17181b;letter-spacing:-.03em;font-weight:620}.sd-t-chip-iris{fill:#433eb2;font-weight:700}.sd-t-rec{fill:#a83a2c;font-weight:650}.sd-t-crumb{fill:#3d3940;font-weight:600}.sd-t-step{fill:#6f6a70;font-weight:600}.sd-film .sd-t-label,.sd-film .sd-t-mono,.sd-film .sd-t-mono-strong{font-variant-numeric:tabular-nums;font-family:Geist Mono Variable,ui-monospace,monospace}.sd-film .sd-t-label{fill:#8d878c;letter-spacing:.06em;font-weight:500}.sd-film .sd-t-mono{fill:#8d878c;font-weight:500}.sd-film .sd-t-mono-strong{fill:#1f1d22;font-weight:600}.sd-chip text{font-weight:680}.sd-chip-final rect{fill:#e7f2ed}.sd-chip-final text{fill:#27634e}.sd-chip-sand rect{fill:#fff5dc}.sd-chip-sand text{fill:#73520a}.sd-chip-quiet rect{fill:#f1eee9}.sd-chip-quiet text{fill:#6f6a70}.sd-chip-iris rect{fill:#ecebff}.sd-chip-iris text{fill:#433eb2}.sd-step-track{fill:none;stroke:#e6e1da;stroke-width:2px}.sd-step-fill{fill:none;stroke:#5752cf;stroke-width:2px;transform-box:fill-box;transform-origin:0}.sd-step-node{fill:#5752cf;stroke:#5752cf;stroke-width:2px}.sd-check-box{fill:#5752cf;stroke:#5752cf;stroke-width:1.5px}.sd-check-mark,.sd-source-thread{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}.sd-check-mark{stroke:#fff;stroke-width:2.4px}.sd-source-thread{stroke:#5752cf;stroke-width:2px}.sd-source-mark{fill:#ecebff}.sd-port{fill:#fff;stroke:#5752cf;stroke-width:2px}.sd-rec-ring{fill:#d4543f;opacity:.25;transform-box:fill-box;transform-origin:50%}.sd-live-dot{fill:#5752cf}.sd-wave rect{fill:#5752cf;transform-box:fill-box;transform-origin:50%}.sd-wave rect:nth-child(3n){fill:#8a85e6}.sd-ring-track{fill:none;stroke:#ece8e2;stroke-width:6px}.sd-ring{fill:none;stroke:#5752cf;stroke-width:6px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}.sd-soap-chip rect{fill:#ecebff}.sd-soap-chip text{fill:#433eb2;font-family:Geist Mono Variable,ui-monospace,monospace;font-weight:600}.sd-cursor-shape{fill:#17181b;stroke:#fff;stroke-width:1.4px;stroke-linejoin:round}.sd-cursor-press{transform-box:fill-box;transform-origin:0 0}.sd-ripple{fill:none;stroke:#5752cf;stroke-width:2px;opacity:0;transform-box:fill-box;transform-origin:50%}.sd-today,.sd-today-after,.sd-consent,.sd-capture,.sd-drafting,.sd-crumb-today,.sd-cursor,.sd-toast,.sd-badge-final{opacity:0}.sd-scene{transform-box:fill-box;transform-origin:50%}.sd-film .sd-today,.sd-film .sd-today-after,.sd-film .sd-encounter,.sd-film .sd-consent,.sd-film .sd-capture,.sd-film .sd-drafting,.sd-film .sd-review,.sd-film .sd-step-fill,.sd-film .sd-step-node-2,.sd-film .sd-step-node-3,.sd-film .sd-step-node-4,.sd-film .sd-crumb-today,.sd-film .sd-crumb-encounter,.sd-film .sd-nav-highlight,.sd-film .sd-cursor,.sd-film .sd-cursor-press{animation-duration:var(--sd-dur);animation-timing-function:cubic-bezier(.65,0,.35,1);animation-iteration-count:infinite;animation-fill-mode:both}.sd-film .sd-today{animation-name:sd-today}.sd-film .sd-today-after{animation-name:sd-today-after}.sd-film .sd-encounter{animation-name:sd-encounter}.sd-film .sd-consent{animation-name:sd-consent}.sd-film .sd-capture{animation-name:sd-capture}.sd-film .sd-drafting{animation-name:sd-drafting}.sd-film .sd-review{animation-name:sd-review}.sd-film .sd-step-fill{animation-name:sd-step-fill}.sd-film .sd-step-node-2{animation-name:sd-step-node-2}.sd-film .sd-step-node-3{animation-name:sd-step-node-3}.sd-film .sd-step-node-4{animation-name:sd-step-node-4}.sd-film .sd-crumb-today{animation-name:sd-crumb-today}.sd-film .sd-crumb-encounter{animation-name:sd-crumb-encounter}.sd-film .sd-nav-highlight{animation-name:sd-nav-highlight}.sd-film .sd-cursor{animation-name:sd-cursor}.sd-film .sd-cursor-press{animation-name:sd-cursor-press}.sd-film .sd-pop-early,.sd-film .sd-pop-late,.sd-film .sd-hide-late,.sd-film .sd-check-early,.sd-film .sd-draw-early,.sd-film .sd-draw-slow-late,.sd-film .sd-ring-early,.sd-film .sd-chip-early,.sd-film .sd-shift-late,.sd-film .sd-toast,.sd-film .sd-ripple{animation-duration:var(--sd-dur);animation-delay:calc(var(--sd-dur) * var(--at));transform-box:fill-box;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-iteration-count:infinite;animation-fill-mode:both}.sd-film .sd-pop-early{animation-name:sd-pop-early}.sd-film .sd-pop-late{animation-name:sd-pop-late}.sd-film .sd-hide-late{animation-name:sd-hide-late}.sd-film .sd-check-early{animation-name:sd-check-early}.sd-film .sd-draw-early{animation-name:sd-draw-early}.sd-film .sd-draw-slow-late{animation-name:sd-draw-slow-late}.sd-film .sd-ring-early{animation-name:sd-ring-early}.sd-film .sd-chip-early{animation-name:sd-chip-early}.sd-film .sd-shift-late{animation-name:sd-shift-late}.sd-film .sd-toast{animation-name:sd-toast}.sd-film .sd-ripple{animation-name:sd-ripple}.sd-film .sd-wave rect{animation:.76s ease-in-out infinite alternate both sd-wave;animation-delay:calc(var(--i) * -53ms)}.sd-film .sd-rec-ring{animation:1.5s ease-out infinite both sd-rec}.sd-film .sd-live-dot{animation:1.2s ease-in-out infinite both sd-blink}.sd-film .sd-digits{animation:10s steps(10,end) infinite both sd-digits}.sd-film[data-playing=false] *,.sd-film:not([data-playing]) *{animation-play-state:paused!important}@keyframes sd-today{0%,18%{opacity:1;transform:none}21%{opacity:0;transform:translate(-28px)}95%{opacity:0;transform:none}to{opacity:1;transform:none}}@keyframes sd-today-after{0%,82.5%{opacity:0;transform:translate(28px)}85.5%,95%{opacity:1;transform:none}to{opacity:0;transform:none}}@keyframes sd-encounter{0%,18.5%{opacity:0;transform:translate(28px)}21.5%,81%{opacity:1;transform:none}84%,to{opacity:0;transform:translate(-28px)}}@keyframes sd-consent{0%,20%{opacity:0;transform:translateY(18px)scale(.97)}22.5%,31.6%{opacity:1;transform:none}33.5%,to{opacity:0;transform:scale(.985)}}@keyframes sd-capture{0%,32.5%{opacity:0;transform:translateY(14px)}34.5%,50.5%{opacity:1;transform:none}52%,to{opacity:0;transform:none}}@keyframes sd-drafting{0%,51%{opacity:0;transform:scale(.96)}52.5%,58.5%{opacity:1;transform:none}60%,to{opacity:0;transform:scale(1.03)}}@keyframes sd-review{0%,59%{opacity:0;transform:translateY(14px)}61%,99%{opacity:1;transform:none}to{opacity:0}}@keyframes sd-step-fill{0%,33.5%{transform:scaleX(0)}35.5%,51.5%{transform:scaleX(.3333)}53.5%,59.5%{transform:scaleX(.6667)}61.5%,to{transform:scaleX(1)}}@keyframes sd-step-node-2{0%,34.5%{fill:#fff;stroke:#d6d0c7}35.5%,to{fill:#5752cf;stroke:#5752cf}}@keyframes sd-step-node-3{0%,52.5%{fill:#fff;stroke:#d6d0c7}53.5%,to{fill:#5752cf;stroke:#5752cf}}@keyframes sd-step-node-4{0%,60.5%{fill:#fff;stroke:#d6d0c7}61.5%,to{fill:#5752cf;stroke:#5752cf}}@keyframes sd-crumb-today{0%,19%{opacity:1}20.5%,83%{opacity:0}85%,to{opacity:1}}@keyframes sd-crumb-encounter{0%,19.5%{opacity:0}21%,82.5%{opacity:1}84%,to{opacity:0}}@keyframes sd-nav-highlight{0%,19%{transform:none}21.5%,82%{transform:translateY(168px)}84.5%,to{transform:none}}@keyframes sd-cursor{0%,5%{opacity:0;transform:translate(1130px,720px)}6%{opacity:1;transform:translate(1130px,720px)}11.5%,15%{opacity:1;transform:translate(806px,452px)}19.5%,25%{opacity:1;transform:translate(1010px,640px)}29%,31.5%{opacity:1;transform:translate(752px,488px)}35%,45%{opacity:1;transform:translate(1030px,712px)}48.4%,50.6%{opacity:1;transform:translate(654px,676px)}54%,69%{opacity:1;transform:translate(1070px,690px)}72.6%,75.2%{opacity:1;transform:translate(814px,253px)}80%{opacity:1;transform:translate(1100px,700px)}82%,to{opacity:0;transform:translate(1130px,720px)}}@keyframes sd-cursor-press{0%,12.6%{transform:none}13%{transform:scale(.8)}13.6%,30%{transform:none}30.4%{transform:scale(.8)}31%,48.8%{transform:none}49.2%{transform:scale(.8)}49.8%,73.1%{transform:none}73.5%{transform:scale(.8)}74.1%,to{transform:none}}@keyframes sd-pop-early{0%{opacity:0;transform:translateY(8px)}2.4%,62%{opacity:1;transform:none}63%,to{opacity:0;transform:translateY(8px)}}@keyframes sd-pop-late{0%{opacity:0;transform:translateY(8px)}2.4%,36%{opacity:1;transform:none}37%,to{opacity:0;transform:translateY(8px)}}@keyframes sd-hide-late{0%{opacity:1}1%,36%{opacity:0}37%,to{opacity:1}}@keyframes sd-check-early{0%{fill:#fff;stroke:#c9c3ba}1.2%,62%{fill:#5752cf;stroke:#5752cf}63%,to{fill:#fff;stroke:#c9c3ba}}@keyframes sd-draw-early{0%{stroke-dashoffset:1px}1.6%,62%{stroke-dashoffset:0}63%,to{stroke-dashoffset:1px}}@keyframes sd-draw-slow-late{0%{stroke-dashoffset:1px}3.4%,36%{stroke-dashoffset:0}37%,to{stroke-dashoffset:1px}}@keyframes sd-ring-early{0%{stroke-dashoffset:1px}6%,62%{stroke-dashoffset:0}63%,to{stroke-dashoffset:1px}}@keyframes sd-chip-early{0%{opacity:.35;transform:scale(.92)}1.4%,62%{opacity:1;transform:none}63%,to{opacity:.35;transform:scale(.92)}}@keyframes sd-shift-late{0%{transform:translateY(-54px)}2.4%,36%{transform:none}37%,to{transform:translateY(-54px)}}@keyframes sd-toast{0%{opacity:0;transform:translateY(16px)}1.6%,6%{opacity:1;transform:none}7.4%,to{opacity:0;transform:translateY(6px)}}@keyframes sd-ripple{0%{opacity:0;transform:scale(.35)}.4%{opacity:.6}3.4%,to{opacity:0;transform:scale(1.7)}}@keyframes sd-wave{0%{transform:scaleY(.3)}to{transform:scaleY(1)}}@keyframes sd-rec{0%{opacity:.45;transform:scale(.6)}to{opacity:0;transform:scale(2.1)}}@keyframes sd-blink{0%,to{opacity:1}50%{opacity:.25}}@keyframes sd-digits{0%{transform:translateY(0)}to{transform:translateY(-220px)}}@media (prefers-reduced-motion:reduce){.sd-film *{animation:none!important}}.ecosystem-value-band{--ink:var(--home-ink);--muted:var(--home-muted);--line:var(--home-line);--line-strong:var(--home-line-strong);--primary:var(--home-iris);--primary-hover:var(--home-iris-deep);border-top:1px solid var(--home-line);background:var(--home-surface);padding:clamp(88px,10vw,144px) clamp(16px,6vw,96px)}.ecosystem-value-band .time-estimator{width:min(1240px,100%);margin:0 auto}.ecosystem-value-band .time-estimator-intro{display:block}.ecosystem-value-band .time-estimator-intro h2{letter-spacing:-.046em;text-wrap:balance;max-width:15ch;font-size:clamp(40px,4.6vw,68px);font-weight:560;line-height:.98}.ecosystem-value-band .time-estimator-workspace{grid-template-columns:minmax(320px,.8fr) minmax(480px,1.2fr);align-items:start;gap:clamp(40px,5.5vw,84px);margin-top:52px}.ecosystem-value-band .time-estimator-controls{width:100%;max-width:500px}.ecosystem-value-band .estimator-control{padding-block:18px 20px}.ecosystem-value-band .estimator-control-heading label,.ecosystem-value-band .estimator-number-input{font-size:14px}.ecosystem-value-band .estimator-input-pair{gap:16px;margin-top:12px}.ecosystem-value-band .estimator-input-pair input[type=range]{accent-color:var(--home-iris)}.ecosystem-value-band .estimator-number-input{border-color:var(--home-line-strong);color:var(--home-ink);font-variant-numeric:tabular-nums;background:#fff;border-radius:10px}.ecosystem-value-band .estimator-assumptions{border-bottom:1px solid var(--home-line-strong)}.ecosystem-value-band .estimator-assumptions summary{min-height:60px;color:var(--home-ink);cursor:pointer;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 2px;list-style:none;display:grid}.ecosystem-value-band .estimator-assumptions summary::-webkit-details-marker{display:none}.ecosystem-value-band .estimator-assumptions summary:before{content:"";transform-origin:50%;border-bottom:1.5px solid;border-right:1.5px solid;width:7px;height:7px;transition:transform .17s;transform:rotate(-45deg)}.ecosystem-value-band .estimator-assumptions[open] summary:before{transform:rotate(45deg)}.ecosystem-value-band .estimator-assumptions summary>span{font-size:14px;font-weight:680}.ecosystem-value-band .estimator-assumptions summary>small{color:var(--home-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px}.ecosystem-value-band .estimator-assumptions>div{border-top:1px solid var(--home-line);padding:0 0 4px 30px}.ecosystem-value-band .estimator-assumptions>div .estimator-control:last-child{border-bottom:0}.ecosystem-value-band .time-estimator-results{border:1px solid var(--home-line);background:var(--home-canvas);border-radius:24px;min-height:500px;padding:clamp(28px,3.6vw,46px);position:relative;overflow:hidden;box-shadow:0 1px 2px #17181b0a,0 24px 60px -36px #2c27684d}.ecosystem-value-band .time-estimator-primary-result p,.ecosystem-value-band .time-estimator-value-result p{color:var(--home-iris)}.ecosystem-value-band .time-estimator-result-figure>strong{font-variant-numeric:tabular-nums;font-size:clamp(42px,4.4vw,64px)}.ecosystem-value-band .estimator-bar-scenario{background:linear-gradient(90deg, #7770df, var(--home-iris))}.ecosystem-boundaries{--night:#131217;--night-raised:#1b1a21;--night-line:#ffffff17;--night-ink:#f5f4f8;--night-muted:#a3a0ad;--night-iris:#9d98f2;isolation:isolate;background:var(--night);color:var(--night-ink);padding:clamp(96px,11vw,160px) clamp(16px,6vw,96px);position:relative;overflow:hidden}.ecosystem-boundaries>header,.boundary-grid,.boundary-provider-note{width:min(1240px,100%);margin-inline:auto}.ecosystem-boundaries>header h2{max-width:18ch;color:var(--night-ink);letter-spacing:-.046em;text-wrap:balance;margin:0;font-size:clamp(40px,4.6vw,68px);font-weight:560;line-height:.98}.ecosystem-boundaries>header h2 span{color:var(--night-muted)}.boundary-grid{border:1px solid var(--night-line);background:var(--night-line);border-radius:24px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:64px;display:grid;overflow:hidden}.boundary-grid article{background:var(--night);align-content:start;gap:14px;min-width:0;padding:clamp(26px,2.6vw,38px);transition:background-color .26s;display:grid;position:relative}.boundary-grid article:hover{background:var(--night-raised)}.boundary-grid h3{color:var(--night-ink);letter-spacing:-.018em;margin:10px 0 0;font-size:18px;font-weight:640;line-height:1.3}.boundary-grid p{color:var(--night-muted);text-wrap:pretty;margin:0;font-size:14px;line-height:1.65}.boundary-grid p a{color:var(--night-ink);white-space:nowrap;border-bottom:1px solid #ffffff3d;align-items:center;gap:4px;margin-left:2px;font-weight:650;transition:border-color .16s,color .16s;display:inline-flex}.boundary-grid p a:hover,.boundary-grid p a:focus-visible{border-color:var(--night-iris);color:#fff}.boundary-grid p a:focus-visible,.boundary-provider-note>a:focus-visible{outline:2px solid var(--night-iris);outline-offset:3px}.boundary-grid p a svg{width:13px;height:13px}.pv-glyph{width:44px;height:44px;color:var(--night-ink);overflow:visible}.pv-glyph .pv-glyph-fill{fill:#7770df38}.pv-glyph .pv-glyph-accent{stroke:var(--night-iris);stroke-dasharray:1;stroke-dashoffset:0}.boundary-grid article:hover .pv-glyph-accent{animation:.62s cubic-bezier(.4,0,.2,1) both pv-glyph-redraw}@keyframes pv-glyph-redraw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.boundary-provider-note{border:1px solid var(--night-line);background:#ffffff08;border-radius:18px;grid-template-columns:minmax(220px,.7fr) minmax(300px,1fr) auto;align-items:center;gap:clamp(20px,4vw,56px);margin-top:20px;padding:22px 26px;display:grid}.boundary-provider-note>div{align-items:flex-start;gap:12px;display:flex}.boundary-provider-note>div>svg{width:20px;height:20px;color:var(--night-iris);flex:0 0 20px;margin-top:1px}.boundary-provider-note>div>span{gap:4px;display:grid}.boundary-provider-note>div strong{color:var(--night-ink);font-size:14px}.boundary-provider-note>div small,.boundary-provider-note>p{color:var(--night-muted);font-size:13px;line-height:1.6}.boundary-provider-note>p{margin:0}.boundary-provider-note>a{min-height:40px;color:var(--night-ink);white-space:nowrap;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-size:13px;font-weight:650;transition:border-color .16s,background-color .16s;display:inline-flex}.boundary-provider-note>a:hover,.boundary-provider-note>a:focus-visible{border-color:var(--night-iris);background:#9d98f21a}.boundary-provider-note>a svg{width:15px;height:15px}.ecosystem-closing{isolation:isolate;border-top:1px solid var(--home-line);background:var(--home-surface);text-align:center;padding:clamp(104px,12vw,176px) clamp(16px,6vw,96px);position:relative;overflow:hidden}.ecosystem-closing-mark{width:56px;height:56px;margin:0 auto 36px;display:block}.ecosystem-closing-mark .porvio-mark{width:100%;height:100%;display:block}.ecosystem-closing-inner{width:min(980px,100%);margin:0 auto;position:relative}.ecosystem-closing h2{font-kerning:normal;font-optical-sizing:auto;justify-items:center;row-gap:clamp(18px,1.5vw,24px);margin:0;font-size:clamp(52px,6.8vw,96px);font-weight:560;display:grid}.ecosystem-closing-line{text-wrap:balance;max-width:100%;display:block}.ecosystem-closing-line-primary{letter-spacing:-.025em;line-height:1.06}.ecosystem-closing-line-secondary{color:#6f6a76;letter-spacing:-.015em;font-family:Mona Sans Variable,Mona Sans,ui-sans-serif,system-ui,sans-serif;font-weight:420;line-height:1.12}.ecosystem-closing-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:44px;display:flex}.ecosystem-closing small{color:var(--home-muted);margin-top:28px;font-size:13px;display:block}@media (width>=901px) and (width<=1040px){.ecosystem-value-band .time-estimator-workspace{grid-template-columns:1fr;gap:52px}.ecosystem-value-band .time-estimator-controls{max-width:none}.ecosystem-value-band .time-estimator-value-result .time-estimator-result-figure.is-compact>strong{font-size:clamp(42px,5vw,50px)}}@media (width<=1100px){.boundary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.ecosystem-value-band .time-estimator-workspace{grid-template-columns:1fr;gap:44px}.ecosystem-value-band .time-estimator-controls{max-width:none}.boundary-provider-note{grid-template-columns:1fr;align-items:start}.boundary-provider-note>a{justify-self:start}}@media (width<=680px){.ecosystem-account-status{text-align:left;margin-top:16px;margin-bottom:0}.ecosystem-hero-lede{margin-top:22px;font-size:18px}.ecosystem-hero-actions{flex-direction:column;align-items:stretch;gap:10px;margin-top:28px}.ecosystem-hero-actions>a{width:100%}.ecosystem-value-band .time-estimator-intro h2,.ecosystem-boundaries>header h2{font-size:clamp(38px,11.4vw,54px)}.ecosystem-value-band,.ecosystem-boundaries{padding-block:72px}.ecosystem-value-band .time-estimator-results{border-radius:20px;min-height:0}.boundary-grid{border-radius:20px;grid-template-columns:1fr;margin-top:36px}.boundary-provider-note{padding:20px}.ecosystem-closing{padding-block:96px}.ecosystem-closing h2{row-gap:clamp(14px,4vw,18px);font-size:clamp(40px,11.75vw,54px)}.ecosystem-closing-actions{flex-direction:column;align-items:stretch;width:min(100%,360px);margin-inline:auto}}@media (prefers-reduced-motion:reduce){.ecosystem-primary-link,.ecosystem-primary-link svg,.ecosystem-secondary-link{transition:none}.pv-art *,.pv-glyph *{animation:none!important}}.workflow-film-frame{min-width:0}.sd-film[data-playing=scrub]{will-change:contents}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.ecosystem-value-band .time-estimator-intro h2,.ecosystem-boundaries>header h2,.boundary-grid article,.boundary-provider-note{animation:linear both rise-in;animation-timeline:view();animation-range:entry entry 70%}.ecosystem-boundaries{animation:linear both band-open;animation-timeline:view();animation-range:entry entry 55%}.ecosystem-closing-inner{animation:linear both closing-in;animation-timeline:view();animation-range:entry 10% cover 45%}}}@keyframes rise-in{0%{opacity:0;transform:translateY(56px)}to{opacity:1;transform:none}}@keyframes band-open{0%{clip-path:inset(0 7% round 48px)}to{clip-path:inset(0)}}@keyframes closing-in{0%{opacity:.2;transform:scale(.88)}to{opacity:1;transform:none}}@media (width<=680px){.workflow-film-frame{border:1px solid #dcd7cf;border-radius:14px;overflow:hidden}.workflow-film-frame>.sd-film{width:122.6%;max-width:none;box-shadow:none;border-radius:0;margin-left:-22.6%}}.page-progress{z-index:60;pointer-events:none;height:2px;position:fixed;inset:0 0 auto}.page-progress i{background:linear-gradient(90deg, #8f8ae8, var(--home-iris-deep));height:100%;transform:scaleX(var(--page,0));transform-origin:0;display:block}.statement-track{background:var(--home-canvas);position:relative}.statement-stage{width:min(1180px,100% - clamp(32px,8vw,128px));margin:0 auto;padding:clamp(96px,12vw,180px) 0}.statement-track[data-scroll=on]{height:260vh}.statement-track[data-scroll=on] .statement-stage{align-content:center;height:100svh;padding:0;display:grid;position:sticky;top:0}.statement-text{color:var(--home-ink);letter-spacing:-.038em;text-wrap:pretty;margin:0;font-size:clamp(32px,4.4vw,68px);font-weight:560;line-height:1.12}.statement-track[data-scroll=on] .statement-text span{opacity:clamp(.12, calc(var(--p) * var(--n) * 1.35 - var(--i)), 1);transition:opacity .12s linear}.statement-text .is-accent{color:var(--home-iris)}.gallery-track{border-top:1px solid var(--home-line);--card-w:min(58vw, 760px);--card-gap:3vw;--row-w:calc(var(--card-w) * 4 + var(--card-gap) * 3);--gutter:clamp(16px, 5vw, 80px);background:#fff;position:relative}.gallery-stage{padding:clamp(88px,10vw,140px) 0;overflow:hidden}.gallery-header{width:min(1280px,100% - clamp(32px,6vw,96px));margin:0 auto 40px}.gallery-header h2{letter-spacing:-.046em;text-wrap:balance;max-width:18ch;margin:0;font-size:clamp(40px,4.6vw,68px);font-weight:560;line-height:.98}.gallery-header h2 span{color:#77727d;display:block}.gallery-row{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:20px;width:min(1280px,100% - clamp(32px,6vw,96px));margin:0 auto;display:grid}.gallery-card{border:1px solid var(--home-line);background:var(--home-canvas);border-radius:28px;grid-template-rows:minmax(0,1fr) auto;min-width:0;display:grid;overflow:hidden}.gallery-card-art{place-items:center;min-height:0;padding:clamp(16px,2.4vw,32px);display:grid}.pv-feature-art{width:100%;max-height:100%;display:block;overflow:visible}.gallery-card-copy{padding:0 clamp(22px,2.6vw,36px) clamp(22px,2.6vw,34px)}.gallery-card-copy h3{letter-spacing:-.025em;margin:0 0 8px;font-size:clamp(20px,1.8vw,26px);font-weight:620}.gallery-card-copy p{max-width:44ch;color:var(--home-muted);margin:0;font-size:15.5px;line-height:1.55}.gallery-track[data-scroll=on]{height:360vh}.gallery-track[data-scroll=on] .gallery-stage{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);height:100svh;padding:88px 0 40px;display:grid;position:sticky;top:0}.gallery-track[data-scroll=on] .gallery-header{margin-bottom:clamp(20px,3vh,36px)}.gallery-track[data-scroll=on] .gallery-row{width:var(--row-w);min-height:0;margin:0 0 0 var(--gutter);gap:var(--card-gap);transform:translateX(calc(var(--p) * -1 * (var(--row-w) - 100vw + var(--gutter) * 2)));will-change:transform;justify-self:start;display:flex}.gallery-track[data-scroll=on] .gallery-card{width:var(--card-w);flex:0 0 var(--card-w)}.gallery-track[data-scroll=on] .pv-feature-art{transform:translateX(calc((var(--p) * 3 - var(--k)) * -18px))}.pv-feature-card{fill:#fff;stroke:#e6e1da;stroke-width:1px}.pv-feature-strong{fill:#181619;font-weight:640}.pv-feature-muted{fill:#78727a;font-weight:520}.pv-feature-white{fill:#fff;font-weight:700}.pv-feature-iris-text{fill:#433eb2;font-weight:700}.pv-art .pv-feature-label{fill:#8d878c;letter-spacing:.04em;font-family:Geist Mono Variable,ui-monospace,monospace;font-weight:500}.pv-feature-thread{fill:none;stroke:#5752cf;stroke-width:2px;stroke-linecap:round}.pv-feature-thread.is-quiet{stroke:#c9c5f6}.pv-feature-port{fill:#fff;stroke:#5752cf;stroke-width:2px}.pv-feature-icon{fill:none;stroke:#5752cf;stroke-width:1.8px;stroke-linejoin:round}@media (width<=900px){.gallery-track{--card-w:84vw;--card-gap:4vw}.gallery-track[data-scroll=on] .gallery-stage{padding-top:76px}.gallery-track[data-scroll=on] .gallery-row{align-items:center}}@media (prefers-reduced-motion:reduce){.page-progress{display:none}}.hero-film{background:var(--home-canvas);scroll-margin-top:0;position:relative}.hero-film-anchor{width:1px;height:1px;position:absolute;top:22%;left:0}.hero-film-stage{padding:clamp(64px,9vw,120px) 0 clamp(72px,8vw,120px);position:relative}.hero-film-copy{z-index:1;width:min(1320px,100% - clamp(32px,6vw,96px));margin:0 auto;position:relative}.hero-film-copy h1{color:var(--home-ink);letter-spacing:-.058em;margin:0;font-size:clamp(46px,7.2vw,124px);font-weight:600;line-height:.94}.hero-line{padding-bottom:.06em;display:block;overflow:hidden}.hero-line>span{text-wrap:balance;animation:1.1s cubic-bezier(.16,1,.3,1) both hero-line-up;display:inline-block}.hero-line.is-quiet>span{color:#77727d;animation-delay:.11s}.hero-film-meta{border-top:1px solid var(--home-line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px 48px;margin-top:clamp(28px,3.4vw,44px);padding-top:22px;animation:.9s cubic-bezier(.16,1,.3,1) .38s both hero-meta-in;display:grid}.hero-film-meta .ecosystem-hero-lede{max-width:38ch;color:var(--home-muted);margin:0;font-size:clamp(17px,1.35vw,20px);line-height:1.5}.hero-film-meta .ecosystem-hero-actions{margin:0}.hero-film-window{width:min(1200px,100% - clamp(32px,6vw,96px));margin:clamp(48px,6vw,80px) auto 0;position:relative}.hero-film-window .workflow-film-frame{animation:1.2s cubic-bezier(.16,1,.3,1) .26s both hero-window-in}@keyframes hero-line-up{0%{transform:translateY(108%)}to{transform:none}}@keyframes hero-meta-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes hero-window-in{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:none}}.hero-film[data-scroll=on]{height:820vh}.hero-film[data-scroll=on] .hero-film-stage{perspective:1700px;height:100svh;padding:0;position:sticky;top:0;overflow:hidden}.hero-film[data-scroll=on] .hero-film-copy{opacity:calc(1 - var(--reveal,0) * 1.6);transform:translateY(calc(var(--reveal,0) * -14svh)) scale(calc(1 - var(--reveal,0) * .06));transform-origin:0 0;padding-top:clamp(64px,10vh,112px)}.hero-film[data-scroll=on] .hero-film-window{--window-w:min(1200px, 92vw, calc((100svh - 104px) * 1.6));width:var(--window-w);transform:translate(-50%, -50%) translateY(calc((1 - var(--reveal,0)) * 52svh)) rotateX(calc((1 - var(--reveal,0)) * 20deg)) scale(calc(.86 + var(--reveal,0) * .14));transform-origin:50% 0;will-change:transform;margin:0;position:absolute;top:calc(50% + 30px);left:50%}@media (width<=900px){.hero-film-copy h1{font-size:clamp(42px,11.4vw,72px)}.hero-film-meta{flex-direction:column;align-items:stretch}.hero-film[data-scroll=on]{height:700vh}.hero-film[data-scroll=on] .hero-film-copy{padding-top:96px}.hero-film[data-scroll=on] .hero-film-window{transform:translate(-50%, -50%) translateY(calc((1 - var(--reveal,0)) * 52svh)) rotateX(calc((1 - var(--reveal,0)) * 20deg)) scale(calc(.9 + var(--reveal,0) * .1));top:50%}}@media (width<=680px){.hero-film-meta .ecosystem-hero-actions{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){.hero-line>span,.hero-film-meta,.hero-film-window .workflow-film-frame{animation:none}}.hero-film[data-scroll=on] .hero-film-stage:before{z-index:0;top:calc((1 - var(--reveal,0)) * 58svh);right:calc((1 - var(--reveal,0)) * clamp(16px, 3vw, 48px));bottom:0;left:calc((1 - var(--reveal,0)) * clamp(16px, 3vw, 48px));border-radius:calc((1 - var(--reveal,0)) * 40px) calc((1 - var(--reveal,0)) * 40px) 0 0;content:"";background:#ecebe6;position:absolute}.hero-film[data-scroll=on] .hero-film-copy{z-index:0}.hero-film[data-scroll=on] .hero-film-stage:before{z-index:1}.hero-film[data-scroll=on] .hero-film-window{z-index:2}.hero-film-copy h1 .hero-line:first-child>span{color:var(--home-ink)}@media (width<=900px){.hero-film-meta{grid-template-columns:1fr}.hero-film[data-scroll=on] .hero-film-stage:before{top:calc((1 - var(--reveal,0)) * 82svh)}}
