:root{color-scheme:light;--night: oklch(1 0 0);--night-2: oklch(.972 .003 250);--night-3: oklch(.945 .004 250);--night-line: oklch(.905 .004 250);--on-night: oklch(.17 .012 250);--on-night-muted: oklch(.46 .012 250);--bg: var(--night);--surface: var(--night-2);--line: var(--night-line);--ink: var(--on-night);--muted: var(--on-night-muted);--accent: oklch(.47 .11 240);--accent-ink: oklch(.41 .1 240);--accent-glow: oklch(.56 .11 235);--link: oklch(.46 .11 240);--ok: oklch(.6 .15 150);--alert: oklch(.56 .22 25);--font: "Libre Franklin", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: "Source Code Pro", ui-monospace, SFMono-Regular, Menlo, monospace;--step--1: .875rem;--step-0: 1rem;--step-1: 1.25rem;--step-2: clamp(1.75rem, 1.2rem + 1.6vw, 2.6rem);--step-3: clamp(2.3rem, 1.4rem + 3vw, 4.25rem);--gutter: clamp(1rem, 4vw, 2.5rem);--max: 76rem;--radius: 0;--ease-out: cubic-bezier(.16, 1, .3, 1);--z-stage: 1;--z-sticky: 10}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--night: oklch(.155 .008 250);--night-2: oklch(.195 .009 250);--night-3: oklch(.235 .01 250);--night-line: oklch(.285 .01 250);--on-night: oklch(.96 .004 250);--on-night-muted: oklch(.7 .01 250);--accent-glow: oklch(.72 .09 230);--link: oklch(.75 .07 228);--ok: oklch(.74 .16 150);--alert: oklch(.68 .2 25)}}:root[data-theme=dark]{color-scheme:dark;--night: oklch(.155 .008 250);--night-2: oklch(.195 .009 250);--night-3: oklch(.235 .01 250);--night-line: oklch(.285 .01 250);--on-night: oklch(.96 .004 250);--on-night-muted: oklch(.7 .01 250);--accent-glow: oklch(.72 .09 230);--link: oklch(.75 .07 228);--ok: oklch(.74 .16 150);--alert: oklch(.68 .2 25)}.theme-toggle{display:grid;place-items:center;width:2.25rem;height:2.25rem;margin-left:.25rem;border:0;border-radius:0;background:transparent;color:var(--on-night-muted);cursor:pointer;transition:background-color .2s,color .2s}.theme-toggle:hover{background:var(--night-2);color:var(--on-night)}.theme-toggle svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.theme-toggle .i-sun{display:none}:root[data-theme=dark] .theme-toggle .i-sun{display:block}:root[data-theme=dark] .theme-toggle .i-moon{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle .i-sun{display:block}:root:not([data-theme=light]) .theme-toggle .i-moon{display:none}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--step-0);line-height:1.6;-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}button{font:inherit;color:inherit}h1,h2,h3{margin:0;line-height:1.08;letter-spacing:-.025em;font-weight:600;text-wrap:balance}p{margin:0;text-wrap:pretty}a{color:var(--link);text-underline-offset:.18em}a:hover{color:var(--ink)}:focus-visible{outline:2px solid var(--accent-glow);outline-offset:3px;border-radius:0}.skip{position:absolute;left:-999px;top:.5rem;z-index:100;background:var(--bg);color:var(--ink);padding:.5rem 1rem;border-radius:0}.skip:focus{left:.5rem}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}.mono{font-family:var(--mono);font-size:.8125rem;letter-spacing:0}.site-header{position:sticky;top:0;z-index:var(--z-sticky);background:color-mix(in oklch,var(--night) 90%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--night-line);color:var(--on-night)}.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4rem}.brand{display:inline-flex;align-items:center;gap:.65rem;color:var(--on-night);text-decoration:none}.brand:hover{color:var(--on-night)}.brand-mark{width:1.45rem;height:1.6rem;flex:none}.wordmark{font-family:"Archivo",var(--font);font-stretch:125%;font-size:1.05rem;line-height:1;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.wm-name{font-weight:800}.wm-sub{font-weight:400}@media(max-width:24rem){.wordmark{font-size:.9rem}}.nav{display:flex;align-items:center;gap:.25rem;font-size:.9375rem}.nav a{position:relative;color:var(--on-night-muted);text-decoration:none;padding:.45rem .8rem;border-radius:0;transition:color .2s,background-color .2s}.nav a:hover{color:var(--on-night);background:var(--night-2)}.nav a[aria-current=page]{color:var(--on-night)}.nav a:after{content:"";position:absolute;left:.8rem;right:.8rem;bottom:-.85rem;height:2px;background:var(--accent-glow);transform:scaleX(0);transition:transform .5s var(--ease-out)}.nav a[aria-current=page]:after{transform:scaleX(1)}.nav .nav-cta{margin-left:.5rem;color:#fff;background:var(--accent)}.nav .nav-cta:hover{color:#fff;background:var(--accent-ink)}.nav .nav-cta:after{display:none}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.2rem;border:0;border-radius:0;font-weight:500;font-size:.9625rem;text-decoration:none;cursor:pointer;transition:background-color .2s var(--ease-out),box-shadow .2s var(--ease-out),color .2s}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-ink);color:#fff}.btn-secondary{background:transparent;color:var(--on-night);box-shadow:inset 0 0 0 1px var(--night-line)}.btn-secondary:hover{color:var(--on-night);box-shadow:inset 0 0 0 1px var(--on-night-muted)}.btn .arrow{transition:transform .2s var(--ease-out)}.btn:hover .arrow{transform:translate(3px)}.shell{background:var(--night);color:var(--on-night)}.shell a{color:var(--link)}.shell a:hover{color:var(--on-night)}.shell .btn-primary,.shell .btn-primary:hover{color:#fff}.shell .btn-secondary,.shell .btn-secondary:hover{color:var(--on-night)}.shell .brand,.shell .nav a{color:var(--on-night-muted)}.shell .brand,.shell .nav a[aria-current=page],.shell .nav a:hover{color:var(--on-night)}.shell .nav .nav-cta{color:#fff}.stage{position:relative;isolation:isolate}.panel{padding-block:clamp(3.5rem,8vw,6rem)}.panel+.panel{border-top:1px solid var(--night-line)}.panel-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:.75rem 3rem;margin-bottom:clamp(1.25rem,3.5vh,2.25rem)}.panel-head h2{font-size:var(--step-2);outline:none}.panel-head p{max-width:46ch;color:var(--on-night-muted)}.tabbar,.shell-footer .pager{display:none}html.js .shell{overflow:hidden}html.js .shell-root{height:100vh;height:100dvh;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr) auto}html.js .shell .site-header{position:relative}html.js .stage{overflow:hidden}html.js .panel{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;padding-block:clamp(1.25rem,4vh,3rem);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--night-line) transparent;border:0;opacity:0;visibility:hidden;transform:translateY(var(--enter, 28px));filter:blur(6px);transition:opacity .45s var(--ease-out),transform .8s var(--ease-out),filter .6s var(--ease-out),visibility 0s linear .8s}html.js .panel>.wrap{margin-block:auto}html.js .panel:focus{outline:none}html.js .panel.is-active{opacity:1;visibility:visible;transform:none;filter:none;transition-delay:0s}html.js .stage[data-dir=back] .panel:not(.is-active){--enter: -28px}@media(prefers-reduced-motion:no-preference){html.js .panel.is-active .st{animation:rise .8s var(--ease-out) both;animation-delay:calc(var(--i, 0) * 70ms + .12s)}}@media(prefers-reduced-motion:reduce){html.js .panel{transform:none;filter:none;transition:opacity .2s linear,visibility 0s linear .2s}}@keyframes rise{0%{opacity:0;transform:translateY(16px)}}.shell-footer{border-top:1px solid var(--night-line);color:var(--on-night-muted);font-size:.8125rem}.shell-footer .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:2.9rem;padding-block:.6rem}.shell-footer nav{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem}.shell-footer a{color:var(--on-night-muted);text-decoration:none}.shell-footer a:hover{color:var(--on-night)}html.js .shell-footer .pager{display:flex;align-items:center;gap:.75rem}.pager button{display:grid;place-items:center;width:2rem;height:2rem;border:0;border-radius:0;background:var(--night-2);cursor:pointer;transition:background-color .2s}.pager button:hover:not(:disabled){background:var(--night-3)}.pager button:disabled{opacity:.35;cursor:default}.pager .count{font-family:var(--mono);min-width:4.5ch;text-align:center}.pager .hint{margin-right:.5rem}@media(max-width:52rem){.shell .nav a:not(.nav-cta){display:none}html.js .shell-footer{display:none}html.js .tabbar{display:flex;justify-content:space-between;border-top:1px solid var(--night-line);padding:.35rem max(.5rem,env(safe-area-inset-left)) calc(.35rem + env(safe-area-inset-bottom))}.tabbar a{flex:1;padding:.55rem .25rem;border-radius:0;text-align:center;font-size:.8125rem;color:var(--on-night-muted);text-decoration:none}.tabbar a[aria-current=page]{color:var(--on-night);background:var(--night-2)}}.overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,5vw,4.5rem)}@media(max-width:60rem){.overview{grid-template-columns:1fr}}.status{display:inline-flex;align-items:center;gap:.55rem;margin-bottom:1.25rem;color:var(--on-night-muted)}.status:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 4px #56d57b2e}.overview h1 em{font-style:normal;color:var(--link)}.overview h1{font-size:var(--step-3);letter-spacing:-.022em;max-width:13ch;outline:none}.overview .lede{margin-top:1.25rem;max-width:48ch;font-size:var(--step-1);line-height:1.5;color:var(--on-night-muted)}.overview .actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.glance{display:flex;flex-wrap:wrap;gap:.5rem 2rem;margin:2.25rem 0 0;padding:1.25rem 0 0;border-top:1px solid var(--night-line);list-style:none;font-size:.9375rem;color:var(--on-night-muted)}.glance strong{display:block;color:var(--on-night);font-weight:500}.illo{width:100%;height:auto}.illo .box{fill:var(--night);stroke:var(--night-line)}.illo .box-2{fill:var(--night-2);stroke:var(--night-line)}.illo .core{stroke:var(--accent)}.illo .ln{fill:none;stroke:var(--night-line);stroke-width:1.5}.illo .ln-accent{fill:none;stroke:var(--accent-glow);stroke-width:1.5}.illo .bar{fill:var(--night-3)}.illo .bar-accent{fill:var(--accent)}.illo .t{fill:var(--on-night);font-family:var(--font);font-size:13px;font-weight:500}.illo .tm{fill:var(--on-night-muted);font-family:var(--mono);font-size:10.5px}.illo .packet{fill:none;stroke:var(--accent-glow);stroke-width:3;stroke-linecap:round;stroke-dasharray:3 97;stroke-dashoffset:100;opacity:0}@media(prefers-reduced-motion:no-preference){.is-active .illo .packet,html:not(.js) .illo .packet{opacity:1;animation:packet 2.6s linear infinite;animation-delay:var(--d, 0s)}}@keyframes packet{to{stroke-dashoffset:0}}.diagram{margin:0;padding:clamp(1rem,2.5vw,1.5rem);border:1px solid var(--night-line);border-radius:0;background:color-mix(in oklch,var(--night-2) 60%,transparent)}.diagram figcaption{display:flex;justify-content:space-between;gap:1rem;margin-top:.9rem;padding-top:.9rem;border-top:1px solid var(--night-line);color:var(--on-night-muted)}.diagram .live{display:inline-flex;align-items:center;gap:.45rem}.diagram .live:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ok)}.svc{display:grid;grid-template-columns:minmax(14rem,.75fr) minmax(0,2.25fr);gap:clamp(1rem,2.5vw,2rem);align-items:stretch}@media(max-width:60rem){.svc{grid-template-columns:1fr}}.svc-tabs{display:grid;gap:.4rem;align-content:start}.svc-tab{display:grid;gap:.15rem;width:100%;padding:.9rem 1rem;border:1px solid transparent;border-radius:0;background:transparent;text-align:left;cursor:pointer;transition:background-color .25s,border-color .25s}.svc-tab:hover{background:var(--night-2)}.svc-tab[aria-selected=true]{background:var(--night-2);border-color:var(--night-line)}.svc-tab .name{font-weight:500;color:var(--on-night)}.svc-tab .sum{font-size:.875rem;color:var(--on-night-muted);line-height:1.45}.svc-tab .idx{font-family:var(--mono);font-size:.75rem;color:var(--on-night-muted)}.svc-tab[aria-selected=true] .idx{color:var(--accent-glow)}@media(max-width:60rem){.svc-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.svc-tab .sum{display:none}}.svc-detail{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(1.25rem,3vw,2.5rem);align-items:center;padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--night-line);border-radius:0;background:color-mix(in oklch,var(--night-2) 55%,transparent)}.svc-detail[hidden]{display:none}@media(max-width:72rem){.svc-detail{grid-template-columns:1fr}.svc-detail .illo{max-height:30vh}}@media(prefers-reduced-motion:no-preference){.svc-detail:not([hidden])>*{animation:rise .6s var(--ease-out) both}.svc-detail:not([hidden])>:nth-child(2){animation-delay:80ms}}.svc-detail h3{font-size:var(--step-1)}.svc-detail p{margin-top:.6rem;color:var(--on-night-muted)}.svc-detail ul{margin:1rem 0 0;padding:0;list-style:none;border-top:1px solid var(--night-line)}.svc-detail li{display:grid;grid-template-columns:1.25rem 1fr;gap:.4rem;padding-block:.5rem;border-bottom:1px solid var(--night-line);font-size:.9375rem}.svc-detail li:before{content:"";width:.7rem;height:.4rem;margin-top:.45rem;border-left:2px solid var(--accent-glow);border-bottom:2px solid var(--accent-glow);transform:rotate(-45deg)}.stack{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}.stack span{padding:.2rem .55rem;border-radius:0;background:var(--night-3);color:var(--on-night-muted);font-family:var(--mono);font-size:.75rem}.product{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,5vw,4rem);align-items:center}@media(max-width:52rem){.product{grid-template-columns:1fr}}.product-id{display:flex;align-items:center;gap:1rem}.product-id img{width:3.5rem;height:3.5rem;border-radius:22%}.product-id h3{font-size:var(--step-2)}.product-id .kind{color:var(--on-night-muted);font-size:.9375rem}.product .desc{margin-top:1rem;max-width:52ch;color:var(--on-night-muted);font-size:1.0625rem}.features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem;margin:1.5rem 0 0;padding:0;list-style:none;border-top:1px solid var(--night-line)}.features li{padding-block:.6rem;border-bottom:1px solid var(--night-line)}.features strong{display:block;font-weight:500}.features span{color:var(--on-night-muted);font-size:.875rem}@media(max-width:36rem){.features{grid-template-columns:1fr}}.product .actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}.phone{justify-self:center;width:min(100%,17rem)}.phone svg{width:100%;height:auto;max-height:min(62vh,34rem);filter:drop-shadow(0 30px 50px oklch(.05 .02 262 / .6))}html.js .phone svg{max-height:calc(100dvh - 15rem)}.phone figcaption{margin-top:.75rem;text-align:center;color:var(--on-night-muted);font-size:.75rem}.steps{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,2.5vw,2rem);margin:0;padding:0;list-style:none}.steps:before,.steps:after{content:"";position:absolute;top:1.25rem;left:1.25rem;right:1.25rem;height:1px;background:var(--night-line)}.steps:after{background:var(--accent-glow);transform-origin:left;transform:scaleX(1)}@media(prefers-reduced-motion:no-preference){html.js .steps:after{transform:scaleX(0);transition:transform 1.6s var(--ease-out) .3s}html.js .is-active .steps:after{transform:scaleX(1)}}.step{position:relative;z-index:1}.step .num{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:0;background:var(--night);box-shadow:inset 0 0 0 1px var(--accent-glow);color:var(--accent-glow);font-family:var(--mono);font-size:.8125rem}.step h3{margin-top:1.25rem;font-size:1.125rem}.step p{margin-top:.5rem;color:var(--on-night-muted);font-size:.9375rem}.step .out{margin-top:.85rem;padding-top:.75rem;border-top:1px solid var(--night-line);color:var(--on-night);font-size:.875rem}.step .out span{display:block;color:var(--on-night-muted);font-family:var(--mono);font-size:.75rem}@media(max-width:56rem){.steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:2rem}.steps:before,.steps:after{display:none}}.built-on{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 2.25rem;margin-top:clamp(1.5rem,5vh,3rem);padding-top:1.25rem;border-top:1px solid var(--night-line)}.built-on .label{color:var(--on-night-muted)}.built-on ul{display:flex;flex-wrap:wrap;gap:.5rem 2rem;margin:0;padding:0;list-style:none}.built-on li{font-weight:600;letter-spacing:-.01em;color:var(--on-night);opacity:.85}.built-on .tm-note{flex-basis:100%;color:var(--on-night-muted);font-size:.75rem}.contact{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(2rem,6vw,5rem);align-items:center}@media(max-width:52rem){.contact{grid-template-columns:1fr}}.contact h2{font-size:var(--step-3);letter-spacing:-.022em;outline:none}.contact .lede{margin-top:1rem;max-width:46ch;color:var(--on-night-muted);font-size:var(--step-1);line-height:1.5}.contact .email{display:inline-block;margin-top:1.75rem;font-size:clamp(1.25rem,1rem + 1vw,1.75rem);font-weight:500;color:var(--on-night);text-decoration-color:var(--accent-glow);overflow-wrap:anywhere}.contact .actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.card{padding:clamp(1.25rem,3vw,2rem);border:1px solid var(--night-line);border-radius:0;background:color-mix(in oklch,var(--night-2) 55%,transparent)}.facts{margin:0}.facts div{display:grid;grid-template-columns:8rem 1fr;gap:1rem;padding-block:.8rem;border-bottom:1px solid var(--night-line)}.facts div:first-child{padding-top:0}.facts dt{color:var(--on-night-muted);font-family:var(--mono);font-size:.8125rem;padding-top:.15rem}.facts dd{margin:0;font-weight:500}@media(max-width:30rem){.facts div{grid-template-columns:1fr;gap:.15rem}}.card .legal{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin-top:1rem;font-size:.875rem}.site-footer{background:var(--night);color:var(--on-night-muted);font-size:var(--step--1);border-top:1px solid var(--night-line)}.site-footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.25rem 2rem;padding-block:2.5rem}.site-footer a{color:var(--on-night)}.site-footer a:hover{color:var(--accent-glow)}.site-footer nav{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}.site-footer address{font-style:normal;line-height:1.6}.site-footer strong{color:var(--on-night);font-weight:500}.legal-hero{background:var(--night);color:var(--on-night)}.legal-hero{border-bottom:1px solid var(--night-line)}.legal-hero .wrap{padding-block:clamp(2.5rem,6vw,4rem) clamp(1.5rem,4vw,2.25rem)}.legal-hero h1{font-size:var(--step-3);letter-spacing:-.022em}.legal-hero p{margin-top:.85rem;color:var(--on-night-muted);font-family:var(--mono);font-size:.8125rem}.prose{max-width:68ch;padding-block:clamp(2.5rem,6vw,4.5rem);font-size:1.0625rem}.prose h2{font-size:var(--step-1);margin-top:2.5rem}.prose h2:first-child{margin-top:0}.prose p,.prose ul{margin-top:.85rem}.prose ul{padding-left:1.25rem}.prose li+li{margin-top:.4rem}.prose strong{font-weight:600}.prose .note{padding:1rem 1.25rem;border-radius:0;background:var(--surface);border:1px solid var(--line)}.illo .alert-line{fill:none;stroke:var(--alert);stroke-width:1.2;stroke-dasharray:4 5}.illo .alert-text{fill:var(--alert)}.illo .alert-halo{fill:color-mix(in oklch,var(--alert) 22%,transparent)}.illo .alert-dot{fill:var(--alert)}.illo .alert-box{stroke:var(--alert)}.illo .ok-dot{fill:var(--ok)}
