@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.table{display:table}.grow{flex-grow:1}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#031627;--ink-2:#082743;--blue:#0a6fd6;--blue-2:#2b95f5;--sky:#3fd0e8;--pale:#e9f6fa;--muted:#586a7c;--line:#dde6ee;--sans:"Inter", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;--serif:"Instrument Serif", Georgia, "Times New Roman", serif;--mono:"JetBrains Mono", ui-monospace, Consolas, monospace;--pad:max(5vw, 24px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{color:var(--ink);font-family:var(--sans);background:#fff;margin:0;font-size:16px;overflow-x:clip}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px}.site-header{z-index:50;height:72px;padding:0 var(--pad);-webkit-backdrop-filter:saturate(180%)blur(14px);backdrop-filter:saturate(180%)blur(14px);background:#fffc;border-bottom:1px solid #03162712;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;display:flex}.brand svg{flex-shrink:0;transition:transform .4s}.brand:hover svg{transform:rotate(-8deg)scale(1.04)}.wordmark{letter-spacing:-.035em;color:var(--ink);font-size:21px;font-weight:700}.wordmark span{color:var(--blue);font-weight:600}footer .wordmark{color:#fff}footer .wordmark span{color:var(--sky)}.site-header nav{color:#33475b;gap:36px;font-size:14px;font-weight:500;display:flex}.site-header nav a,.text-link,footer a{transition:color .2s}.site-header nav a:hover,.text-link:hover,footer a:hover{color:var(--blue)}.header-cta{background:var(--ink);color:#fff;border-radius:999px;padding:11px 18px;font-size:13px;font-weight:600;transition:background .2s}.header-cta:hover{background:var(--blue)}.header-cta span,.button span{margin-left:10px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--blue);align-items:center;gap:10px;margin:0 0 22px;font-size:11.5px;font-weight:700;display:flex}.eyebrow span{background:currentColor;width:24px;height:2px;display:block}.eyebrow.light{color:var(--sky)}h1,h2{letter-spacing:-.035em;margin:0;font-weight:700;line-height:1.02}h1{font-size:clamp(46px,6vw,86px)}h2{font-size:clamp(36px,4.4vw,60px)}h1 em,h2 em{font-family:var(--serif);letter-spacing:-.01em;color:var(--blue);font-style:italic;font-weight:400}h3{letter-spacing:-.01em;margin:0;font-weight:700}.button{border-radius:999px;justify-content:center;align-items:center;padding:16px 24px;font-size:15px;font-weight:600;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{color:#fff;background:var(--blue);box-shadow:0 12px 30px #0a6fd640}.button-primary:hover{background:#085db5;box-shadow:0 16px 36px #0a6fd650}.button-light{color:var(--ink);background:#fff;box-shadow:0 12px 30px #00000025}.text-link{font-size:15px;font-weight:600}.text-link span{color:var(--blue);margin-left:8px}.hero{padding:110px var(--pad) 110px;background:radial-gradient(circle at 85% 20%,#daf4fb 0,#0000 40%),linear-gradient(#fff,#f4fbfd);grid-template-columns:1.1fr .9fr;align-items:center;gap:60px;display:grid;position:relative;overflow:hidden}.hero-grid{pointer-events:none;background-image:linear-gradient(#0a6fd60d 1px,#0000 1px),linear-gradient(90deg,#0a6fd60d 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 70% 40%,#000 10%,#0000 70%);mask-image:radial-gradient(at 70% 40%,#000 10%,#0000 70%)}.hero-copy,.hero-visual{position:relative}.hero-intro{max-width:600px;color:var(--muted);margin:30px 0 0;font-size:19px;line-height:1.7}.hero-intro strong{color:var(--ink);font-weight:600}.hero-actions{align-items:center;gap:32px;margin-top:40px;display:flex}.hero-visual{place-items:center;min-height:440px;display:grid}.hero-logo{z-index:0;opacity:.2;pointer-events:none;width:min(440px,95%);height:auto;position:absolute;top:-14%;right:-9%}.code-window,.float-card{z-index:1;position:relative}.code-window{background:var(--ink);color:#c9d6e3;border-radius:16px;width:min(100%,470px);overflow:hidden;transform:perspective(1200px)rotateY(-6deg)rotateX(2deg);box-shadow:0 40px 90px #03162740,inset 0 0 0 1px #ffffff10}.code-bar{background:#082743;border-bottom:1px solid #ffffff12;align-items:center;gap:7px;padding:14px 16px;display:flex}.code-bar i{background:#ff5f57;border-radius:50%;width:11px;height:11px}.code-bar i:nth-child(2){background:#febc2e}.code-bar i:nth-child(3){background:#28c840}.code-bar span{font-family:var(--mono);color:#7f96ad;margin-left:10px;font-size:12px}.code-window pre{font-family:var(--mono);white-space:pre;margin:0;padding:24px 26px 28px;font-size:13.5px;line-height:1.75;overflow:hidden}.code-window .c{color:#5f7a94}.code-window .k{color:#6ec9ff}.code-window .s{color:#8ee0b6}.code-window .f{color:#f7c873}.code-window .n{color:#f59ea0}.float-card{color:var(--muted);background:#fff;border:1px solid #0a6fd61f;border-radius:14px;align-items:center;gap:14px;padding:16px 20px;font-size:12.5px;font-weight:500;line-height:1.4;display:flex;position:absolute;box-shadow:0 18px 40px #0316271f}.float-card strong{color:var(--blue);letter-spacing:-.03em;font-size:30px}.float-one{bottom:30px;left:-10px}.float-two{top:26px;right:-6px}.dot{background:#22c55e;border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 5px #22c55e26}.logo-marquee{padding:28px 0 28px var(--pad);background:var(--ink);color:#fff;align-items:center;gap:40px;display:flex;overflow:hidden}.logo-marquee>p{letter-spacing:.16em;text-transform:uppercase;color:#8aa2b8;flex-shrink:0;margin:0;font-size:11.5px;font-weight:600}.marquee{flex:1;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.marquee-track{gap:56px;width:max-content;margin:0;padding:0;list-style:none;animation:60s linear infinite marquee;display:flex}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-track li{letter-spacing:-.02em;color:#e8f0f7;white-space:nowrap;opacity:.88;font-size:19px;font-weight:700}@keyframes marquee{to{transform:translate(calc(-50% - 28px))}}@media (prefers-reduced-motion:reduce){.marquee-track{flex-wrap:wrap;gap:14px 36px;width:auto;animation:none}.marquee-track li[aria-hidden=true]{display:none}.marquee{-webkit-mask-image:none;mask-image:none}}.stats{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.stat{padding:44px var(--pad) 44px 40px;border-right:1px solid var(--line)}.stat:first-child{padding-left:var(--pad)}.stat:last-child{border-right:0}.stat strong{letter-spacing:-.04em;color:var(--blue);font-size:clamp(38px,4vw,54px);line-height:1;display:block}.stat span{color:var(--muted);max-width:220px;margin-top:12px;font-size:14px;line-height:1.5;display:block}.section{padding:120px var(--pad)}.section-heading{grid-template-columns:1.2fr .8fr;align-items:end;gap:60px;display:grid}.section-heading>p,.approach-intro>p:not(.eyebrow),.contact-inner>p:not(.eyebrow){color:var(--muted);max-width:520px;margin:0;font-size:17px;line-height:1.75}.service-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:64px;display:grid}.service-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:34px;transition:transform .25s,box-shadow .25s,border-color .25s}.service-card:hover{border-color:#0a6fd640;transform:translateY(-4px);box-shadow:0 24px 50px #03162714}.service-icon{background:var(--pale);width:48px;height:48px;color:var(--blue);border-radius:12px;place-items:center;margin-bottom:28px;display:grid}.service-card h3{margin-bottom:12px;font-size:19px}.service-card p{color:var(--muted);margin:0;font-size:15px;line-height:1.7}.work{background:var(--ink);color:#fff}.work .section-heading>p{color:#9fb2c4}.work h2 em{color:var(--sky)}.work-grid{grid-template-columns:repeat(4,1fr);gap:18px;margin-top:64px;display:grid}.work-card{background:#082743;border:1px solid #ffffff14;border-radius:18px;flex-direction:column;padding:28px;transition:transform .25s,border-color .25s,background .25s;display:flex}.work-card:hover{background:#0b3154;border-color:#3fd0e855;transform:translateY(-4px)}.work-card.featured{background:linear-gradient(150deg,#0a6fd6,#05417c);border-color:#0000;grid-column:span 2}.work-card.featured p{color:#d7eff8}.work-card.featured .work-tech li{color:#fff;border-color:#ffffff40}.work-shot{background:#fff;border:1px solid #ffffff1a;border-radius:12px;margin:-8px -8px 26px;overflow:hidden;box-shadow:0 18px 40px #00000040}.work-shot-bar{background:#e9eef2;align-items:center;gap:6px;padding:9px 12px;display:flex}.work-shot-bar i{background:#c3ccd4;border-radius:50%;width:8px;height:8px}.work-shot-bar span{font-family:var(--mono);color:#5c6b78;margin-left:10px;font-size:11px}.work-shot img{aspect-ratio:1400/680;object-fit:cover;object-position:top;width:100%;height:auto;transition:transform .6s;display:block}.work-card:hover .work-shot img{transform:scale(1.03)}.work-meta{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.work-org{letter-spacing:.12em;text-transform:uppercase;color:var(--sky);font-size:12px;font-weight:700}.work-card.featured .work-org{color:#c8f1fa}.work-by{font-family:var(--mono);color:#7f96ad;font-size:11.5px}.work-card.featured .work-by{color:#c8f1fa}.work-card h3{margin-bottom:12px;font-size:19px;line-height:1.3}.work-card.featured h3{letter-spacing:-.02em;font-size:26px}.work-card p{color:#9fb2c4;flex:1;margin:0 0 22px;font-size:14.5px;line-height:1.65}.work-tech{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.work-tech li{color:#c9d6e3;border:1px solid #fff2;border-radius:999px;padding:4px 10px;font-size:11.5px}.work-group{letter-spacing:.14em;text-transform:uppercase;color:#8aa2b8;align-items:center;gap:16px;margin:64px 0 20px;font-size:13px;font-weight:700;display:flex}.work-group:after{content:"";background:#ffffff1a;flex:1;height:1px}.work-group+.work-grid{margin-top:0}.projects-grid{grid-template-columns:repeat(2,1fr)}.projects-grid .work-card.featured{grid-column:auto}.projects-grid .work-card:nth-child(2){background:linear-gradient(150deg,#08385f,#082743);border:1px solid #3fd0e833}.work-link{color:#fff;gap:8px;width:max-content;margin-top:22px;font-size:14px;font-weight:600;display:inline-flex}.work-link:hover{text-underline-offset:4px;text-decoration:underline}.work-note{color:#7f96ad;margin:28px 0 0;font-size:13px}.team{background:#f2f8fa}.team-grid{grid-template-columns:repeat(2,1fr);gap:24px;margin-top:64px;display:grid}.team-card{border:1px solid var(--line);background:#fff;border-radius:20px;flex-direction:column;padding:40px;display:flex}.team-top{align-items:center;gap:18px;display:flex}.avatar{background:linear-gradient(140deg, var(--ink), #0d4f80);color:#fff;letter-spacing:.04em;border-radius:50%;flex-shrink:0;place-items:center;width:64px;height:64px;font-weight:700;display:grid}.team-top h3{font-size:22px}.team-role{color:var(--muted);margin-top:4px;font-size:14px;display:block}.team-years{background:var(--pale);color:var(--blue);white-space:nowrap;border-radius:999px;margin-left:auto;padding:7px 13px;font-size:12.5px;font-weight:700}.team-card>p{color:var(--muted);flex:1;margin:28px 0;font-size:15.5px;line-height:1.75}.tags{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;margin:0;padding:22px 0 0;list-style:none;display:flex}.tags li{border:1px solid var(--line);color:#33475b;border-radius:999px;padding:6px 12px;font-size:12.5px;font-weight:500}.history{border-top:1px solid var(--line);margin-top:22px}.history summary{cursor:pointer;color:var(--blue);justify-content:space-between;padding:18px 0 0;font-size:14px;font-weight:600;list-style:none;display:flex}.history summary::-webkit-details-marker{display:none}.history summary span{font-size:20px;line-height:1;transition:transform .2s}.history[open] summary span{transform:rotate(45deg)}.history ol{border-left:2px solid var(--pale);gap:14px;margin:18px 0 0;padding:0 0 0 18px;list-style:none;display:grid}.history li{grid-template-columns:96px 1fr;gap:12px;font-size:13.5px;display:grid;position:relative}.history li:before{content:"";border:2px solid var(--blue);background:#fff;border-radius:50%;width:10px;height:10px;position:absolute;top:5px;left:-24px}.history-years{font-family:var(--mono);color:var(--muted);padding-top:1px;font-size:12px}.history-role{color:var(--muted);line-height:1.45}.history-role strong{color:var(--ink);font-weight:600;display:block}.why-inner{grid-template-columns:.9fr 1.1fr;align-items:start;gap:8vw;display:grid}.why-list{border-top:1px solid var(--line);gap:0;display:grid}.why-item{border-bottom:1px solid var(--line);grid-template-columns:56px 1fr;gap:16px;padding:30px 0;display:grid}.why-item>span{font-family:var(--mono);color:var(--blue);padding-top:4px;font-size:13px}.why-item h3{margin-bottom:8px;font-size:20px}.why-item p{color:var(--muted);margin:0;font-size:15.5px;line-height:1.7}.approach{color:#fff;background:var(--ink);grid-template-columns:.85fr 1.15fr;gap:8vw;display:grid}.approach h2 em,.contact h2 em{color:var(--sky)}.approach-intro>p:not(.eyebrow){color:#9fb2c4;margin-top:28px}.process-list{border-top:1px solid #fff2;margin:0;padding:0;list-style:none}.process-list li{border-bottom:1px solid #fff2;grid-template-columns:56px 1fr;gap:16px;padding:28px 0;display:grid}.process-list li>span{font-family:var(--mono);color:var(--sky);padding-top:4px;font-size:13px}.process-list h3{color:#fff;margin-bottom:8px;font-size:20px}.process-list p{color:#9fb2c4;margin:0;font-size:15px;line-height:1.65}.stack-grid{grid-template-columns:repeat(4,1fr);gap:20px;margin-top:64px;display:grid}.stack-group{background:var(--pale);border-radius:18px;padding:32px}.stack-group h3{text-transform:uppercase;letter-spacing:.14em;color:var(--blue);margin-bottom:20px;font-size:13px}.stack-group ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.stack-group li{align-items:center;gap:12px;font-size:15.5px;font-weight:600;display:flex}.stack-group li:before{content:"";background:var(--blue);border-radius:50%;width:6px;height:6px}.contact{padding:130px var(--pad);color:#fff;text-align:center;background:radial-gradient(circle at 50% 0%, #1e9be8 0, transparent 60%), linear-gradient(160deg, var(--blue), #064a8c);position:relative;overflow:hidden}.contact-logo{opacity:.16;pointer-events:none;width:520px;height:auto;position:absolute;top:50%;right:-110px;transform:translateY(-50%)rotate(-10deg)}.contact-inner{flex-direction:column;align-items:center;max-width:760px;margin:0 auto;display:flex;position:relative}.contact .eyebrow{color:#c8f1fa}.contact-inner>p:not(.eyebrow){color:#d7eff8;margin:26px auto 38px}footer{color:#fff;padding:64px var(--pad) 30px;background:#041222}.footer-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:40px;display:flex}.footer-brand{width:max-content}.footer-top p{color:#8398aa;margin:20px 0 0;font-size:14px}.footer-top nav{color:#b7c6d3;gap:32px;font-size:14px;display:flex}.footer-bottom{color:#7890a3;border-top:1px solid #ffffff1a;justify-content:space-between;margin-top:56px;padding-top:24px;font-size:12.5px;display:flex}@media (max-width:1000px){.site-header nav{display:none}.hero{grid-template-columns:minmax(0,1fr);padding-top:80px}.hero>*{min-width:0}.hero-visual{min-height:400px}.section-heading,.approach,.why-inner{grid-template-columns:1fr;gap:28px}.approach{gap:56px}.service-grid,.stack-grid,.work-grid{grid-template-columns:repeat(2,1fr)}.logo-marquee{padding-right:var(--pad);flex-direction:column;align-items:flex-start;gap:18px}.marquee{width:100%}.team-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.stat,.stat:first-child{padding:36px var(--pad)}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}}@media (max-width:640px){.site-header{height:64px}.header-cta{padding:10px 14px}.header-cta span{display:none}.hero{padding:64px var(--pad) 72px}.hero-intro{font-size:17px}.hero-actions{flex-direction:column;align-items:flex-start;gap:22px}.hero-visual{min-height:auto;padding:50px 0 40px}.code-window{transform:none}.code-window pre{padding:18px;font-size:11.5px}.hero-logo{top:-6%;right:-20%}.brand svg{width:32px;height:32px}.wordmark{font-size:19px}.float-one{bottom:0;left:0}.float-two{top:0;right:0}.section{padding:84px var(--pad)}.service-grid,.stack-grid,.work-grid{grid-template-columns:1fr}.work-card.featured{grid-column:auto}.projects-grid{grid-template-columns:1fr}.history li{grid-template-columns:1fr;gap:2px}.team-card{padding:28px}.team-top{flex-wrap:wrap}.team-years{margin-left:0}.stat strong{font-size:36px}.contact{padding:96px var(--pad)}.footer-bottom{flex-direction:column;gap:14px}}
