@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/unbounded-latin-500-normal.4slEIF53.woff2)format("woff2"),url(/_astro/unbounded-latin-500-normal.ZsrgWWU1.woff)format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/unbounded-latin-700-normal.CaoNriVp.woff2)format("woff2"),url(/_astro/unbounded-latin-700-normal.CZtriu5h.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-400-normal.CYLoc0-x.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-500-normal.6ng42L7E.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-500-normal.BgVn5rGT.woff)format("woff")}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff")}:root{--paper:#f6f8fb;--paper-alt:#edf2f7;--card:#fff;--ink:#0d1b2a;--ink-soft:#4a5b6e;--line:#d6dfe9;--brand:#2b5f8c;--signal:#0b7f76;--danger:#b3392f;--warn:#8a6100;--on-brand:#fff;--term-bg:#0a1624;--term-ink:#d8e4f0;--font-display:"Unbounded", system-ui, sans-serif;--font-body:"IBM Plex Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#07111d;--paper-alt:#0a1726;--card:#0e1c2d;--ink:#e8eef5;--ink-soft:#a3b3c5;--line:#1d3047;--brand:#7db8e6;--signal:#3fd6c6;--danger:#ff8a7d;--warn:#f0c060;--on-brand:#07111d;--term-bg:#050c15;color-scheme:dark}}:root[data-theme=dark]{--paper:#07111d;--paper-alt:#0a1726;--card:#0e1c2d;--ink:#e8eef5;--ink-soft:#a3b3c5;--line:#1d3047;--brand:#7db8e6;--signal:#3fd6c6;--danger:#ff8a7d;--warn:#f0c060;--on-brand:#07111d;--term-bg:#050c15;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.6}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4{font-family:var(--font-display);text-wrap:balance;margin:0;line-height:1.15}h1{letter-spacing:-.02em;font-size:clamp(2rem,5.4vw,3.9rem);font-weight:700}h1 em{color:var(--brand);font-style:normal}h2{letter-spacing:-.01em;font-size:clamp(1.5rem,3.2vw,2.3rem);font-weight:700}h3{font-size:1.02rem;font-weight:500;line-height:1.3}h4{font-size:.98rem;font-weight:500}p{text-wrap:pretty;margin:0}a{color:inherit}:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-radius:4px}.wrap{width:min(1120px,100% - 2.5rem);margin-inline:auto}.skip{background:var(--brand);color:var(--on-brand);z-index:100;padding:.6rem 1rem;position:absolute;top:0;left:-999px}.skip:focus{left:0}.top{z-index:50;pointer-events:none;padding-top:14px;position:fixed;inset:0 0 auto}.top-in{pointer-events:auto;background:color-mix(in srgb, var(--card) 78%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.4);border:1px solid var(--line);border-radius:18px;justify-content:space-between;align-items:center;gap:1rem;height:62px;padding:0 .6rem 0 1.1rem;display:flex;position:relative;box-shadow:0 10px 30px -18px #08142473}.brand{font-family:var(--font-display);align-items:center;gap:.6rem;font-size:1.02rem;font-weight:700;text-decoration:none;display:flex}.mark-dark{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .mark-light{display:none}:root:not([data-theme=light]) .mark-dark{display:block}}:root[data-theme=dark] .mark-light{display:none}:root[data-theme=dark] .mark-dark{display:block}.menu{gap:.2rem;font-size:.94rem;font-weight:500;display:flex}.menu a{color:var(--ink-soft);border-radius:10px;padding:.5rem .85rem;text-decoration:none;transition:background .15s,color .15s}.menu a:hover{color:var(--ink);background:color-mix(in srgb, var(--brand) 10%, transparent)}.menu a[aria-current=true]{color:var(--brand);background:color-mix(in srgb, var(--brand) 13%, transparent)}.top-actions{align-items:center;gap:.5rem;display:flex}.top .nav-cta{border-radius:999px;height:36px;min-height:0;margin-right:.2rem;padding:0 1.05rem;font-size:.88rem}.icon-btn{width:40px;height:40px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;place-items:center;display:grid}.icon-btn:hover{background:color-mix(in srgb, var(--brand) 10%, transparent)}.menu-btn{display:none}@media (width>=861px){.menu a[href=\#contact]{display:none}}@media (width<=860px){.menu-btn{display:grid}.top .nav-cta{display:none}.menu{background:var(--card);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:.15rem;padding:.5rem;display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;box-shadow:0 16px 34px -18px #08142480}.menu.open{display:flex}.menu a{padding:.8rem .9rem}}.hero{border-bottom:1px solid var(--line);background:radial-gradient(60rem 34rem at 88% 8%, color-mix(in srgb, var(--brand) 26%, transparent), transparent 70%), radial-gradient(46rem 28rem at 0% 100%, color-mix(in srgb, var(--signal) 16%, transparent), transparent 70%), var(--paper);position:relative;overflow:hidden}.hero:before{content:"";background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.55;background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 90% at 80% 20%,#000,#0000 75%);mask-image:radial-gradient(70% 90% at 80% 20%,#000,#0000 75%)}.hero-net{opacity:.8;width:100%;height:100%;position:absolute;inset:0}.hero-in{max-width:1120px;padding-block:calc(76px + clamp(3rem,10vw,7rem)) clamp(4rem,12vw,8.5rem);position:relative}.hero h1{max-width:17ch}.eyebrow,.kicker{font-family:var(--font-mono);color:var(--signal);letter-spacing:.02em;font-size:.82rem}.eyebrow{align-items:center;gap:.55rem;margin-bottom:1.4rem;display:inline-flex}.dot{background:var(--signal);border-radius:50%;width:8px;height:8px}.lead{max-width:58ch;color:var(--ink-soft);margin-top:1.5rem;font-size:clamp(1.05rem,1.6vw,1.2rem)}.cta{flex-wrap:wrap;gap:.8rem;margin-top:2.2rem;display:flex}.btn{border:1px solid var(--line);background:var(--card);min-height:46px;color:var(--ink);border-radius:10px;justify-content:center;align-items:center;padding:.7rem 1.3rem;font-weight:500;text-decoration:none;transition:transform .15s,border-color .15s;display:inline-flex}.btn:hover{border-color:var(--brand);transform:translateY(-1px)}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}.btn.big{font-family:var(--font-mono);overflow-wrap:anywhere;padding:1rem 1.6rem;font-size:clamp(.9rem,2.6vw,1.1rem)}.section{padding-block:clamp(3.5rem,8vw,6rem)}.section.alt{background:var(--paper-alt);border-block:1px solid var(--line)}.kicker{margin-bottom:.8rem}.section-lead{max-width:60ch;color:var(--ink-soft);margin-top:1rem;font-size:1.12rem}.grid{gap:1rem;margin-top:2.4rem;display:grid}.grid.four{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.grid.three{grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1.5rem}.card p{color:var(--ink-soft);margin-top:.7rem;font-size:.98rem}.num,.tag{font-family:var(--font-mono);color:var(--signal);margin-bottom:1rem;font-size:.8rem;display:inline-block}.tag{border:1px solid var(--line);border-radius:6px;padding:.15rem .55rem}.product-head{align-items:center;gap:1rem;display:flex}.product-logo{border:1px solid var(--line);background:#fff;border-radius:16px;flex:none;padding:6px}.product{grid-template-columns:1fr 1.05fr;align-items:center;gap:clamp(1.5rem,4vw,3.5rem);margin-top:1rem;display:grid}.product-text>p+p{color:var(--ink-soft);margin-top:1rem}.product-text .btn{margin-top:1.8rem}@media (width<=860px){.product{grid-template-columns:1fr}}.terminal{min-width:0;margin:0}.terminal-bar{font-family:var(--font-mono);color:#8fa3b8;background:#132438;border-radius:12px 12px 0 0;align-items:center;gap:6px;padding:.7rem .9rem;font-size:.75rem;display:flex}.terminal-bar i{background:#33485f;border-radius:50%;width:10px;height:10px}.terminal-bar span{margin-left:.6rem}.terminal-body{background:var(--term-bg);color:var(--term-ink);font-family:var(--font-mono);border-radius:0 0 12px 12px;min-height:13.5em;padding:1.1rem 1rem 1.3rem;font-size:clamp(.72rem,2.2vw,.86rem);line-height:1.7}.line{overflow-wrap:anywhere;gap:.6rem;display:flex}.line+.line{margin-top:.25rem}.prompt{color:#3fd6c6}.label{color:#7db8e6;flex:none}.line.warn .label{color:#f0c060}.line.bad{color:#ff8a7d;font-weight:500}.line.bad .label{color:#ff8a7d}.terminal.animated .line{opacity:0;transition:opacity .3s,transform .3s;transform:translateY(4px)}.terminal.animated .line.shown{opacity:1;transform:none}.terminal figcaption{color:var(--ink-soft);margin-top:.6rem;font-size:.82rem}.sub{margin-top:clamp(3rem,6vw,4.5rem);font-size:1.2rem;font-weight:700}.steps{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin:1.6rem 0 0;padding:0;list-style:none;display:grid}.steps li{border-top:2px solid var(--brand);padding-top:1.1rem}.steps .num{margin-bottom:.5rem}.steps p{color:var(--ink-soft);margin-top:.5rem;font-size:.98rem}.features{margin-top:3rem}.prize{border:1px solid var(--line);background:var(--card);font-family:var(--font-mono);color:var(--ink);border-radius:999px;margin:0 0 1.4rem .8rem;padding:.2rem .7rem;font-size:.78rem;text-decoration:none;display:inline-block}.prize:hover{border-color:var(--brand)}@media (width<=620px){.prize{margin:-.6rem 0 1.4rem;display:table}}figure{margin:0}figure img{border:1px solid var(--line);border-radius:14px;width:100%}figcaption{color:var(--ink-soft);margin-top:.6rem;font-size:.82rem}.team{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);align-items:center;gap:clamp(1.5rem,4vw,3.5rem);margin-top:2.2rem;display:grid}.team-text>p{color:var(--ink-soft);margin-top:1rem}.people{gap:.8rem;margin:0 0 1.6rem;padding:0;list-style:none;display:grid}.people li{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:10px;flex-direction:column;padding:1rem 1.2rem;display:flex}.people strong{font-family:var(--font-display);font-size:1.02rem;font-weight:500}.people span{font-family:var(--font-mono);color:var(--signal);margin-top:.2rem;font-size:.82rem}.award{background:var(--card);border:1px solid var(--line);border-radius:16px;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start;gap:clamp(1.5rem,4vw,3rem);margin-top:clamp(2.5rem,5vw,4rem);padding:clamp(1.3rem,3vw,2.2rem);display:grid}.award h3{font-size:clamp(1.1rem,2vw,1.4rem);font-weight:700}.award-when{font-family:var(--font-mono);color:var(--signal);margin-top:.5rem;font-size:.82rem}.award-text>p:not(.award-when){color:var(--ink-soft);margin-top:1rem}blockquote{border-left:3px solid var(--signal);margin:1.5rem 0 0;padding-left:1rem}blockquote p{font-size:1.1rem;font-weight:500}blockquote cite{color:var(--ink-soft);margin-top:.4rem;font-size:.86rem;font-style:normal;display:block}.award-photos{gap:1.2rem;display:grid}@media (width<=860px){.team,.award{grid-template-columns:1fr}}.contact{text-align:center}.contact .section-lead{margin-inline:auto}.contact .btn{margin-top:2rem}.foot{border-top:1px solid var(--line);color:var(--ink-soft);padding-block:1.6rem;font-size:.9rem}.foot-in{flex-wrap:wrap;justify-content:space-between;gap:.6rem;display:flex}.js .reveal{opacity:0;transition:opacity .5s,transform .5s;transform:translateY(14px)}.js .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transition:none;transform:none}.btn{transition:none}}
