:root{color-scheme:dark;--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--space-3xl:96px;--space-4xl:144px;--text-xs:.8125rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.5625rem;--text-2xl:1.953rem;--text-3xl:2.441rem;--text-display-s:clamp(2.25rem, 4vw + .5rem, 3.75rem);--text-display:clamp(2.75rem, 5vw + 1rem, 5.25rem);--text-section:clamp(2rem, 2.5vw + 1rem, 3.5rem);--text-title:clamp(1.25rem, .75vw + .875rem, 1.625rem);--text-lead:clamp(1.125rem, .35vw + 1rem, 1.375rem);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--color-error:oklch(72% .15 27);--color-success:oklch(76% .13 150);--container:1440px;--gutter:64px;--gap-columns:32px;--section-gap-s:120px;--section-gap:144px;--section-gap-l:176px;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-sticky-nav:300;--z-modal:400;--z-toast:500;--z-tooltip:600;--color-paper:oklch(15% .012 60);--color-paper-2:oklch(19% .014 58);--color-paper-3:oklch(24% .02 50);--color-ink:oklch(93% .022 85);--color-ink-2:oklch(84% .022 78);--color-muted:oklch(67% .02 70);--color-rule:oklch(31% .016 60);--color-accent:oklch(77% .09 30);--color-accent-2:oklch(86% .06 30);--color-accent-ink:oklch(15% .012 60);--color-focus:oklch(86% .06 30);--font-display:"Instrument Sans", ui-sans-serif, system-ui, sans-serif;--font-body:"Instrument Sans", ui-sans-serif, system-ui, sans-serif;--font-outlier:"Instrument Sans", ui-sans-serif, system-ui, sans-serif;--radius-card:16px;--radius-pill:8px;--rule-hair:1px;--shadow-card:0 16px 40px oklch(8% .01 60/.4);--tracking-display:-.05em;--grain:.15;--display-weight:500}:root[data-theme=light]{color-scheme:light;--color-paper:oklch(97% .012 85);--color-paper-2:oklch(93% .018 78);--color-paper-3:oklch(88% .025 70);--color-ink:oklch(22% .018 60);--color-ink-2:oklch(35% .018 60);--color-muted:oklch(46% .02 60);--color-rule:oklch(78% .02 70);--color-accent:oklch(77% .09 30);--color-accent-2:oklch(82% .07 30);--color-focus:oklch(43% .12 30);--shadow-card:0 16px 40px oklch(22% .018 60/.12)}:root{--color-paper:oklch(17% .006 65);--color-paper-2:oklch(21% .006 65);--color-paper-3:oklch(26% .008 65);--color-ink:oklch(96% .008 80);--color-ink-2:oklch(81% .008 80);--color-muted:oklch(68% .01 75);--color-rule:oklch(32% .008 65);--shadow-card:none}:root[data-theme=light]{--color-paper:oklch(97% .008 80);--color-paper-2:oklch(93% .01 80);--color-paper-3:oklch(88% .015 75);--color-ink:oklch(22% .008 65);--color-ink-2:oklch(36% .008 65);--color-muted:oklch(47% .01 65);--color-rule:oklch(79% .01 75)}*,:before,:after{box-sizing:border-box}html,body{overflow-x:clip}html{scrollbar-color:var(--color-muted) var(--color-paper);scroll-padding-top:var(--space-3xl)}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);-webkit-font-smoothing:antialiased;caret-color:var(--color-accent);margin:0;line-height:1.55}::selection{background:color-mix(in oklab, var(--color-accent) 22%, transparent);color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}a{color:inherit;text-underline-offset:.16em;text-decoration-thickness:1px}h1,h2,h3{font-family:var(--font-display);font-weight:var(--display-weight,700);font-synthesis:none;letter-spacing:var(--tracking-display);overflow-wrap:break-word;text-wrap:balance;min-width:0;margin:0;line-height:1.05}h1{max-width:20ch;font-size:var(--text-display)}h2{max-width:30ch;font-size:var(--text-section)}h3{max-width:40ch;font-size:var(--text-title);line-height:1.2}p{text-wrap:pretty;margin:0}p:not([class]){max-width:65ch}img,video{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}button,input,select,textarea{font:inherit}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);box-sizing:border-box;margin-inline:auto}.num,.figure,td.num{font-variant-numeric:tabular-nums}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}[data-slot]{background:linear-gradient(160deg, var(--color-paper-2,var(--color-paper)), var(--color-paper-3,var(--color-paper)));position:relative;overflow:hidden}[data-slot]>img{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;inset:0}[data-slot]:has(>img)>:not(img):not([data-keep]){display:none!important}@media (width<=60rem){:root{--gutter:24px;--section-gap-s:80px;--section-gap:96px;--section-gap-l:120px}}@media (width<=40rem){:root{--gutter:16px;--section-gap-s:56px;--section-gap:72px;--section-gap-l:96px;--gap-columns:16px}}@media (prefers-reduced-motion:reduce){:not(.keep-motion),:not(.keep-motion):before,:not(.keep-motion):after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}[data-slot]>img{filter:sepia(.28)saturate(.94)contrast(1.06)brightness(.96)}:root{--hero-size:clamp(3.6rem, 8.5vw, 8rem);--color-clear:transparent}html{scroll-behavior:smooth;scroll-padding-top:2rem;overflow-x:clip}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);margin:0;font-size:1rem;line-height:1.6;overflow-x:clip}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-color:var(--color-accent)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--color-focus);outline-offset:6px}h1,h2,h3{color:var(--color-ink);font-family:var(--font-display);overflow-wrap:break-word;min-width:0;font-weight:400}h1,h2{letter-spacing:var(--tracking-display);line-height:1.08}p,h1,h2,h3{margin:0}p{color:var(--color-ink-2)}.container{max-width:1440px;padding-inline:var(--gutter);margin-inline:auto}.header{justify-content:space-between;align-items:center;gap:var(--space-lg);min-height:112px;display:flex}.wordmark{letter-spacing:-2px;font-size:42px;font-weight:500;line-height:1;text-decoration:none}.wordmark span{letter-spacing:0;margin-top:var(--space-xs);font-size:12px;display:block}nav{align-items:center;gap:36px;font-size:15px;display:flex}nav a{padding-block:var(--space-sm);text-decoration:none}nav a:hover{text-decoration:underline}.nav-contact{border-bottom:1px solid var(--color-accent)}.hero h1{font-size:var(--hero-size);max-width:12ch}.hero-bottom{justify-content:space-between;align-items:center;gap:var(--space-xl);padding-block:var(--space-xl) 56px;display:flex}.lead{font-size:var(--text-lead);max-width:38ch;line-height:1.5}.button{min-height:52px;padding:var(--space-sm) 28px;border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-accent-ink);white-space:nowrap;transition:background-color var(--dur-micro), transform var(--dur-micro);justify-content:center;align-items:center;font-weight:500;line-height:1.5;text-decoration:none;display:inline-flex}.button:hover{background:var(--color-accent-2)}.button:active{transform:translateY(1px)}.platform-line{border-top:1px solid var(--color-rule);padding-top:var(--space-lg);color:var(--color-muted);justify-content:space-between;font-size:14px;display:flex}.section{padding-block:112px}h2{font-size:var(--text-section)}.section-intro{justify-content:space-between;align-items:end;gap:var(--space-xl);margin-bottom:var(--space-2xl);display:flex}.section-intro p{padding-right:9%}.service-row{align-items:start;gap:var(--gap-columns);border-top:1px solid var(--color-rule);grid-template-columns:1.1fr 1.3fr .7fr;padding-block:32px;display:grid}.service-row h3{font-size:var(--text-title);max-width:18ch;line-height:1.3}.service-row p{max-width:44ch}.service-row span{color:var(--color-muted);text-align:right;font-size:14px}.approach{background:var(--color-paper-2)}.approach-content{gap:var(--gap-columns);margin-top:var(--space-2xl);grid-template-columns:1fr 1fr;display:grid}.approach-content>div{max-width:47ch}.approach-content p+p{margin-top:20px}.contact{gap:var(--gap-columns);padding-block:var(--space-4xl);grid-template-columns:1fr 1fr;display:grid}.contact-details{align-self:center}.contact-details>p{max-width:38ch}.email-link{margin-block:var(--space-lg);overflow-wrap:anywhere;font-size:clamp(1rem,1.7vw,1.5rem);display:inline-block}.small{color:var(--color-muted);font-size:14px}.footer-top{border-top:1px solid var(--color-rule);justify-content:space-between;gap:20px;padding-block:32px;display:flex}.footer-brand{font-weight:500;text-decoration:none}.legal{justify-content:space-between;gap:var(--space-lg);font-size:14px;display:flex}.copyright{margin-top:var(--space-lg);color:var(--color-muted);font-size:13px}.policy{padding-block:72px 112px}.policy h1{font-size:clamp(3rem,6vw,5.25rem)}.policy-date{margin-top:var(--space-lg);color:var(--color-muted)}.prose{max-width:72ch;margin-top:var(--space-2xl)}.prose h2{font-family:var(--font-body);margin-top:var(--space-xl);margin-bottom:var(--space-md);font-size:1.5rem;line-height:1.3}.prose p+p{margin-top:var(--space-md)}.back-link{margin-top:var(--space-xl);display:inline-block}.error-page{padding-block:80px 120px}.error-page h1{font-size:var(--text-display);margin-block:var(--space-lg) var(--space-xl)}.skip{z-index:var(--z-toast);background:var(--color-ink);color:var(--color-paper);padding:var(--space-sm) 20px;position:absolute;top:-100px;left:24px}.skip:focus-visible{top:16px}@media (width>=1600px){.hero{padding-top:88px}}@media (width<=960px){:root{--gutter:32px}.service-row{grid-template-columns:1fr 1fr}.service-row span{text-align:left;grid-column:2}.section-intro p{padding:0}.hero-bottom{align-items:start}.contact{gap:var(--space-xl);grid-template-columns:1fr}}@media (width<=600px){:root{--gutter:24px}.header{align-items:center;min-height:100px}.wordmark{font-size:34px}nav{gap:var(--space-md);font-size:14px}nav a:nth-child(2){display:none}.hero{padding-top:52px}.hero-bottom{padding-block:32px var(--space-xl);flex-direction:column;gap:28px}.hero h1{font-size:clamp(3rem,12.3vw,4.6rem)}.platform-line{gap:20px;font-size:12px}.section{padding-block:76px}.section-intro{align-items:start;gap:var(--space-lg);margin-bottom:var(--space-xl);flex-direction:column}.service-row{gap:var(--space-md);grid-template-columns:1fr}.service-row span{grid-column:auto}.approach-content{grid-template-columns:1fr;gap:32px;margin-top:36px}.legal{gap:var(--space-xs);flex-direction:column}.footer-top{font-size:14px}.policy{padding-top:48px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.header-actions{align-items:center;gap:var(--space-lg);display:flex}.icon-button{border:1px solid var(--color-rule);border-radius:var(--radius-pill);background:var(--color-paper-2);width:44px;height:44px;color:var(--color-ink);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex}.icon-button:hover{background:var(--color-paper-3)}.icon-button:active{transform:translateY(1px)}.theme-toggle .moon-icon,[data-theme=light] .theme-toggle .sun-icon{display:none}[data-theme=light] .theme-toggle .moon-icon{display:block}.back-to-top{right:max(var(--space-lg), env(safe-area-inset-right));bottom:max(var(--space-lg), env(safe-area-inset-bottom));z-index:var(--z-raised);box-shadow:var(--shadow-card);position:fixed}.footer{padding-bottom:88px}#top:focus{outline:none}@media (width<=600px){.header{gap:var(--space-xs)}.header-actions,.header nav{gap:var(--space-sm)}}@media (width<=360px){.header-actions{gap:var(--space-xs)}.header nav{gap:var(--space-xs);font-size:13px}}h1,h2,h3{font-weight:var(--display-weight)}h1,h2{line-height:1.04}h3{letter-spacing:-.025em}.header{min-height:100px}.wordmark{letter-spacing:-2.5px}.hero{padding-top:0}.device-stage{align-items:center;gap:var(--space-2xl);grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);min-height:592px;display:grid}.intro-copy{padding-block:var(--space-xl)}.hero h1{max-width:12ch;font-size:clamp(3.5rem,6.2vw,6rem)}.hero-bottom{flex-direction:column;align-items:flex-start;gap:32px;padding-block:32px 0;display:flex}.hero-bottom .lead{max-width:34ch;font-size:clamp(1.125rem,1.5vw,1.25rem)}.hero-device{min-width:0;padding-block:var(--space-md);flex-direction:column;justify-content:center;align-items:center;margin:0;display:flex}.hero-device img{object-fit:contain;width:100%;height:536px}.hero-device figcaption{margin-top:var(--space-xs);font-size:var(--text-sm);color:var(--color-muted)}.platform-line{padding-block:var(--space-lg);border-bottom:1px solid var(--color-rule)}.services{padding-block:112px 128px}.section-intro{margin-bottom:var(--space-2xl);align-items:start}.section-intro h2{font-size:clamp(2.5rem,4vw,3.75rem)}.section-intro p{padding-top:var(--space-xs)}.service-row{grid-template-columns:minmax(0,1.15fr) minmax(0,1.2fr) minmax(0,.65fr);padding-block:36px}.service-row h3{font-size:1.5rem}.service-row span{align-self:center}.approach{border-block:1px solid var(--color-rule)}.approach .section{padding-block:112px}.approach h2{max-width:25ch;font-size:clamp(2.5rem,4.5vw,4.5rem)}.approach-content{margin-top:48px}.approach-content .lead{max-width:31ch;font-size:1.5rem}.contact h2{font-size:clamp(2.5rem,4.5vw,4.5rem)}.contact{padding-block:128px}.email-link{text-decoration-color:var(--color-accent);text-decoration-thickness:2px}.icon-button{border-radius:var(--radius-pill)}.policy h1{letter-spacing:-.05em}@media (width<=960px){.device-stage{gap:var(--space-lg);min-height:540px}.hero-device img{height:460px}.hero h1{font-size:clamp(3rem,6.5vw,4.8rem)}.service-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width<=600px){.device-stage{gap:var(--space-md);grid-template-columns:minmax(0,1fr);min-height:0}.intro-copy{padding-block:48px 0}.hero h1{font-size:clamp(3rem,12.5vw,4.5rem)}.hero-bottom{gap:var(--space-lg);padding-block:var(--space-lg) 0}.hero-device{padding-block:var(--space-md) 32px}.hero-device img{height:424px}.section,.services,.approach .section,.contact{padding-block:80px}.service-row{grid-template-columns:minmax(0,1fr);padding-block:32px}.section-intro{margin-bottom:var(--space-xl)}.approach-content{margin-top:var(--space-xl)}.approach-content .lead{font-size:var(--text-lead)}}:root{--header-height:100px}html{scroll-padding-top:calc(var(--header-height) + var(--space-lg))}.site-header{z-index:var(--z-sticky-nav);background:var(--color-paper);border-bottom:1px solid var(--color-rule);position:sticky;top:0}.site-header .header{min-height:var(--header-height)}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/instrument-sans-latin-400-normal.DRC__1Mx.woff2)format("woff2"),url(/_astro/instrument-sans-latin-400-normal.D1W7dsQl.woff)format("woff")}@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/instrument-sans-latin-500-normal.Dk9ku72i.woff2)format("woff2"),url(/_astro/instrument-sans-latin-500-normal.Z6ESRlEs.woff)format("woff")}
