@font-face{font-family: "Mona Sans";src: url("../fonts/mona-sans-var.388c04259d.woff2") format("woff2");font-weight: 300 700;font-stretch: 100% 125%;font-style: normal;font-display: swap}@font-face{font-family: "Geist Mono";src: url("../fonts/geist-mono-var.7865cbc5dd.woff2") format("woff2");font-weight: 100 900;font-style: normal;font-display: swap}:root{color-scheme: dark;--graphite-950: #05080d;--graphite-900: #080c12;--graphite-850: #0b1118;--graphite-800: #111923;--silver-50: #eef2f5;--silver-200: #c9d1d9;--silver-400: #8d99a5;--signal-300: #7fddf2;--signal-200: #a8ecfa;--signal-500: #2cc3e6;--brand-blue: #007cf4;--amber-300: #e7b65c;--green-300: #5fd69e;--line: rgb(173 194 214 / 0.13);--line-strong: rgb(173 194 214 / 0.24);--signal-line: rgb(127 221 242 / 0.55);--signal-glow: rgb(127 221 242 / 0.32);--bg: var(--graphite-950);--surface: var(--graphite-850);--text: var(--silver-200);--heading: var(--silver-50);--muted: var(--silver-400);--accent: var(--signal-300);--on-accent: #03141c;--font-sans: "Mona Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono: "Geist Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;--stretch-display: 112%;--stretch-ui: 106%;--step--1: 0.875rem;--step-0: 1.0625rem;--step-1: clamp(1.125rem,1.06rem + 0.3vw,1.3125rem);--step-2: clamp(1.3rem,1.16rem + 0.6vw,1.625rem);--step-3: clamp(2rem,1.45rem + 2.3vw,3.4rem);--step-4: clamp(2.55rem,1.6rem + 3.4vw,4.4rem);--container: 80rem;--gutter: clamp(1rem,0.35rem + 3.2vw,3rem);--section-space: clamp(4rem,2.6rem + 5vw,7rem);--header-h: 4.25rem;--radius-s: 0.5rem;--radius-m: 0.875rem;--radius-l: 1.5rem;--radius-pill: 999px;--ease-out: cubic-bezier(0.2,0.7,0.2,1);--reveal-time: 0.9s}*,*::before,*::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;text-size-adjust: 100%;scroll-padding-top: calc(var(--header-h) + 1rem)}@media (prefers-reduced-motion: no-preference){html{scroll-behavior: smooth}}body{margin: 0;min-height: 100vh;background: var(--bg);color: var(--text);font-family: var(--font-sans);font-size: var(--step-0);line-height: 1.65;font-weight: 400;font-kerning: normal;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;overflow-x: clip}img,svg,video,picture{display: block;max-width: 100%}h1,h2,h3,p,ul,ol,figure{margin: 0}ul,ol{padding: 0;list-style: none}a{color: inherit}button{font: inherit;color: inherit}[hidden]{display: none !important}:focus-visible{outline: 2px solid var(--accent);outline-offset: 3px;border-radius: 4px}main:focus{outline: none}::selection{background: rgb(127 221 242 / 0.3);color: var(--silver-50)}.visually-hidden{position: absolute !important;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap;border: 0}.container{width: 100%;max-width: calc(var(--container) + 2 * var(--gutter));margin-inline: auto;padding-inline: var(--gutter)}.skip-link{position: absolute;top: 0.75rem;left: 0.75rem;z-index: 100;padding: 0.7rem 1rem;border-radius: var(--radius-s);background: var(--accent);color: var(--on-accent);font-weight: 600;text-decoration: none;transform: translateY(-160%);transition: transform 0.2s var(--ease-out)}.skip-link:focus{transform: none}.eyebrow{display: flex;align-items: center;gap: 0.75rem;margin-bottom: 1.25rem;font-family: var(--font-mono);font-size: 0.8125rem;font-weight: 500;line-height: 1.4;letter-spacing: 0.12em;text-transform: uppercase;color: var(--silver-200)}.eyebrow__trace{position: relative;flex: none;width: 1.75rem;height: 1px;background: linear-gradient(90deg,rgb(127 221 242 / 0),var(--accent));transform-origin: left center;transition: transform 1.1s var(--ease-out),opacity 1.1s var(--ease-out)}.eyebrow__trace::after{content: "";position: absolute;right: -3px;top: -3px;width: 7px;height: 7px;border-radius: 50%;border: 1.5px solid var(--accent);background: var(--bg);box-shadow: 0 0 10px var(--signal-glow)}.eyebrow--list{align-items: flex-start}.eyebrow--list .eyebrow__trace{margin-top: 0.7em}.eyebrow__clip{overflow: hidden}.eyebrow__items{display: flex;flex-wrap: wrap;margin-left: -1.9em}.eyebrow__items li{position: relative;padding-left: 1.9em;white-space: nowrap}.eyebrow__items li::before{content: "\00b7";content: "\00b7" / "";position: absolute;left: 0;width: 1.9em;text-align: center;color: var(--accent)}.section-title{font-size: var(--step-3);font-weight: 540;font-stretch: var(--stretch-display);line-height: 1.06;letter-spacing: -0.03em;color: var(--heading);text-wrap: balance}.section-intro{max-width: 34rem;font-size: var(--step-1);line-height: 1.6;color: var(--text);text-wrap: pretty}.label{font-family: var(--font-mono);font-size: 0.75rem;font-weight: 500;letter-spacing: 0.1em;text-transform: uppercase;color: var(--accent)}.button{display: inline-flex;align-items: center;justify-content: center;gap: 0.6rem;min-height: 3rem;padding: 0.8rem 1.4rem;border: 1px solid transparent;border-radius: var(--radius-pill);font-size: 0.9375rem;font-weight: 560;font-stretch: var(--stretch-ui);line-height: 1.1;letter-spacing: 0.005em;text-decoration: none;white-space: nowrap;cursor: pointer;transition: background-color 0.25s ease,border-color 0.25s ease,color 0.25s ease,box-shadow 0.4s ease,transform 0.4s var(--ease-out)}.button .icon{width: 1.1rem;height: 1.1rem;flex: none}.button--primary{background: var(--accent);color: var(--on-accent);box-shadow: 0 0 0 0 var(--signal-glow)}.button--primary:hover{background: var(--signal-200);box-shadow: 0 12px 36px -12px rgb(127 221 242 / 0.7);transform: translateY(-1px)}.button--primary:hover .icon--arrow{transform: translateX(3px)}.button--ghost{border-color: var(--line-strong);background: rgb(238 242 245 / 0.02);color: var(--heading)}.button--ghost:hover{border-color: var(--signal-line);background: rgb(127 221 242 / 0.07);transform: translateY(-1px)}.button--small{min-height: 2.5rem;padding: 0.55rem 1.05rem;font-size: 0.875rem}.button--large{min-height: 3.5rem;padding: 1rem 1.7rem;font-size: 1rem}.icon{width: 1.5rem;height: 1.5rem}.icon--arrow,.icon--arrow-out{transition: transform 0.35s var(--ease-out)}.icon-signal{fill: var(--accent);stroke: none}.link-arrow{display: inline-flex;align-items: center;gap: 0.45rem;padding-block: 0.25rem;color: var(--heading);font-weight: 520;font-stretch: var(--stretch-ui);text-decoration: underline;text-decoration-color: var(--line-strong);text-decoration-thickness: 1px;text-underline-offset: 0.35em;transition: color 0.25s ease,text-decoration-color 0.25s ease}.link-arrow .icon{width: 1.05rem;height: 1.05rem}.link-arrow:hover{color: var(--accent);text-decoration-color: var(--signal-line)}.link-arrow:hover .icon--arrow{transform: translateX(3px)}.link-arrow:hover .icon--arrow-out{transform: translate(2px,-2px)}.site-header{position: sticky;top: env(safe-area-inset-top,0px);z-index: 50;transition: background-color 0.35s ease,box-shadow 0.35s ease,backdrop-filter 0.35s ease}.site-header.is-scrolled,.site-header.is-open{background: rgb(5 8 13 / 0.94);box-shadow: 0 1px 0 var(--line)}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.site-header.is-scrolled,.site-header.is-open{background: rgb(5 8 13 / 0.72);-webkit-backdrop-filter: saturate(140%) blur(16px);backdrop-filter: saturate(140%) blur(16px)}}.site-header__inner{display: flex;align-items: center;justify-content: space-between;gap: 1.5rem;min-height: var(--header-h)}.brand{display: inline-flex;align-items: center;gap: 0.6rem;padding-block: 0.5rem;color: var(--heading);text-decoration: none}.brand__mark{width: auto;height: 1.3rem}.logo-blue{fill: var(--brand-blue)}.logo-silver{fill: var(--silver-50)}.brand__name{font-size: 1rem;font-weight: 520;font-stretch: var(--stretch-display);letter-spacing: 0.01em;line-height: 1;padding-top: 0.12em}.site-nav__list{display: flex;align-items: center;gap: 0.25rem 2rem}.site-nav__link{position: relative;display: inline-block;padding-block: 0.6rem;color: var(--text);font-size: 0.9375rem;font-weight: 480;font-stretch: var(--stretch-ui);text-decoration: none;transition: color 0.25s ease}.site-nav__link::after{content: "";position: absolute;left: 0;right: 0;bottom: 0.35rem;height: 1px;background: var(--accent);transform: scaleX(0);transform-origin: left center;transition: transform 0.45s var(--ease-out)}.site-nav__link:hover,.site-nav__link.is-current{color: var(--heading)}.site-nav__link:hover::after,.site-nav__link.is-current::after{transform: scaleX(1)}.site-nav__cta{margin-left: 0.5rem}.site-nav__toggle{display: inline-flex;align-items: center;gap: 0.5rem;min-height: 2.75rem;padding: 0.5rem 0.95rem;border: 1px solid var(--line-strong);border-radius: var(--radius-pill);background: rgb(238 242 245 / 0.03);color: var(--heading);font-size: 0.9375rem;font-weight: 520;font-stretch: var(--stretch-ui);cursor: pointer}.site-nav__toggle .icon{width: 1.15rem;height: 1.15rem}.site-nav__toggle .icon--close,.site-nav__toggle[aria-expanded="true"] .icon--open{display: none}.site-nav__toggle[aria-expanded="true"] .icon--close{display: block}@media (max-width: 959px){.no-js .site-header__inner{flex-wrap: wrap;padding-block: 0.5rem}.no-js .site-nav__list{flex-wrap: wrap;gap: 0 1.25rem}.no-js .site-nav__cta{display: none}.js .site-nav__list{position: absolute;top: 100%;left: 0;right: 0;display: none;flex-direction: column;align-items: stretch;gap: 0;padding: 0.5rem var(--gutter) 1.5rem;background: rgb(5 8 13 / 0.97);box-shadow: 0 1px 0 var(--line),0 24px 48px -24px rgb(0 0 0 / 0.8)}.js .site-header.is-open .site-nav__list{display: flex}.js .site-nav__list li{border-bottom: 1px solid var(--line)}.js .site-nav__link{display: block;padding-block: 1rem;font-size: 1.25rem;font-stretch: var(--stretch-display)}.js .site-nav__link::after{display: none}.js .site-nav__cta{margin: 1.25rem 0 0;border-bottom: 0 !important}.js .site-nav__cta .button{width: 100%;min-height: 3.25rem;font-size: 1rem}}@media (min-width: 960px){.site-nav__toggle{display: none !important}}.hero{position: relative;padding-block: clamp(1.5rem,0.5rem + 4vw,4.5rem) clamp(4.5rem,2.5rem + 6vw,8rem)}.hero::before{content: "";position: absolute;inset: calc(var(--header-h) * -1) 0 auto 0;height: min(60rem,120%);background: radial-gradient(55% 60% at 70% 30%,rgb(22 34 48 / 0.85),rgb(5 8 13 / 0) 70%),radial-gradient(40% 40% at 20% 10%,rgb(0 124 244 / 0.07),rgb(5 8 13 / 0) 70%);pointer-events: none;z-index: -1}.hero__grid{display: grid;gap: clamp(2.5rem,2rem + 2vw,4rem);align-items: center}.hero__copy{position: relative;max-width: 38rem}.hero__title{font-size: var(--step-4);font-weight: 560;font-stretch: var(--stretch-display);line-height: 1.02;letter-spacing: -0.04em;color: var(--heading);text-wrap: balance}.hero__lead{margin-top: 1.5rem;max-width: 31rem;font-size: var(--step-1);line-height: 1.6;color: var(--text);text-wrap: pretty}.hero__actions{display: flex;flex-wrap: wrap;gap: 0.75rem;margin-top: 2.25rem}.hero__media{position: relative;min-width: 0}.hero__frame{position: relative;aspect-ratio: 16 / 9;-webkit-mask-image: radial-gradient(50% 50% at 50% 50%,#000 70%,rgb(0 0 0 / 0) 100%);mask-image: radial-gradient(50% 50% at 50% 50%,#000 70%,rgb(0 0 0 / 0) 100%)}.hero__still,.hero__still img,.hero__video{position: absolute;inset: 0;width: 100%;height: 100%}.hero__still img,.hero__video{object-fit: cover}.hero__video{opacity: 0;transition: opacity 0.65s ease}.hero__video.is-visible{opacity: 1}@media (max-width: 1023px){.hero__media{margin-inline: calc(var(--gutter) * -1)}.hero__frame{-webkit-mask-image: linear-gradient(180deg,rgb(0 0 0 / 0) 0%,#000 12%,#000 88%,rgb(0 0 0 / 0) 100%);mask-image: linear-gradient(180deg,rgb(0 0 0 / 0) 0%,#000 12%,#000 88%,rgb(0 0 0 / 0) 100%)}}@media (max-width: 599px){.hero__actions .button{flex: 1 1 13rem}}@media (min-width: 1024px){.hero{padding-top: clamp(2rem,1rem + 3vw,4.5rem)}.hero__grid{grid-template-columns: minmax(0,5fr) minmax(0,7fr);gap: clamp(1.5rem,3vw,3rem)}.hero__media{margin-inline: -2% calc(var(--gutter) * -1)}}@media (min-width: 1440px){.hero__media{margin-right: -6%}}.section{position: relative;padding-block: var(--section-space)}.section::before{content: "";position: absolute;top: 0;left: 50%;width: min(calc(100% - 2 * var(--gutter)),var(--container));height: 1px;background: var(--line);transform: translateX(-50%)}.section-head{display: grid;gap: 1.25rem 3rem;margin-bottom: clamp(2.5rem,2rem + 3vw,4.5rem)}.section-head .section-title{max-width: 18ch}@media (min-width: 900px){.section-head{grid-template-columns: minmax(0,7fr) minmax(0,5fr);align-items: end}.section-head .eyebrow{grid-column: 1 / -1;margin-bottom: 0}.section-head .section-intro{justify-self: end}}.services{display: grid;gap: 1rem}.service{position: relative;display: grid;align-content: start;gap: 0.85rem;padding: clamp(1.5rem,1.1rem + 1.6vw,2.5rem);border: 1px solid var(--line);border-radius: var(--radius-s);background: var(--surface)}.service__icon{display: inline-grid;place-items: center;width: 2.75rem;height: 2.75rem;margin-bottom: 0.5rem;border: 1px solid var(--line-strong);border-radius: 0.75rem;background: linear-gradient(180deg,rgb(238 242 245 / 0.04),rgb(238 242 245 / 0));color: var(--silver-50)}.service__icon .icon{width: 1.4rem;height: 1.4rem}.service__title{font-size: var(--step-2);font-weight: 540;font-stretch: var(--stretch-display);line-height: 1.2;letter-spacing: -0.015em;color: var(--heading)}.service__body{max-width: 34rem;text-wrap: pretty}.service__level{margin-bottom: -0.35rem}.service__examples{max-width: 34rem;margin-top: 0.4rem;padding-top: 0.9rem;border-top: 1px dashed var(--line-strong);font-size: 0.9375rem;line-height: 1.55}.service__examples .label{margin-bottom: 0.5rem}.service__examples ul{display: grid;gap: 0.45rem}.service__examples li{position: relative;padding-left: 1.1rem}.service__examples li::before{content: "";position: absolute;left: 0;top: 0.62em;width: 0.35rem;height: 0.35rem;border-radius: 50%;border: 1.5px solid var(--accent)}.service__note{max-width: 34rem;color: var(--muted);font-size: 0.9375rem}@media (min-width: 760px){.services{grid-template-columns: repeat(2,minmax(0,1fr))}}.projects{display: grid;gap: clamp(3rem,2rem + 4vw,6rem)}.project__inner{display: grid;gap: clamp(1.75rem,1rem + 2.5vw,3.5rem);align-items: center}@media (min-width: 960px){.project__inner{grid-template-columns: minmax(0,7fr) minmax(0,5fr)}}.project__media{position: relative;display: grid;gap: 1.5rem;align-content: center;min-height: clamp(15rem,12rem + 10vw,22rem);padding: clamp(1.25rem,0.8rem + 2vw,2.5rem);border: 1px solid var(--line);border-radius: var(--radius-l);background: radial-gradient(70% 90% at 50% 0%,rgb(44 195 230 / 0.07),rgb(44 195 230 / 0) 70%),linear-gradient(rgb(173 194 214 / 0.045) 1px,transparent 1px) 0 0 / 28px 28px,linear-gradient(90deg,rgb(173 194 214 / 0.045) 1px,transparent 1px) 0 0 / 28px 28px,var(--surface);container-type: inline-size;container-name: media;transition: border-color 0.4s ease}.project:hover .project__media{border-color: var(--line-strong)}.project__video{width: 100%;border-radius: var(--radius-m);background: var(--graphite-900)}.flow{--node-gap: 2.25rem;position: relative;display: grid;gap: var(--node-gap);counter-reset: flow}.flow__node{position: relative;display: grid;gap: 0.2rem;padding: 0.85rem 1rem;border: 1px solid var(--line-strong);border-radius: var(--radius-m);background: rgb(8 12 18 / 0.88)}.flow__node--core{border-color: var(--signal-line);box-shadow: 0 0 0 1px rgb(127 221 242 / 0.12),0 0 40px -6px rgb(127 221 242 / 0.28)}.flow__label{color: var(--heading);font-size: 0.9375rem;font-weight: 540;font-stretch: var(--stretch-ui);line-height: 1.3}.flow__detail{color: var(--muted);font-size: 0.8125rem;line-height: 1.4}.flow__node + .flow__node::before{content: "";position: absolute;left: 1.5rem;top: calc(var(--node-gap) * -1 - 1px);width: 1px;height: var(--node-gap);background: linear-gradient(180deg,var(--line-strong),var(--accent))}.flow__node + .flow__node::after{content: "";position: absolute;left: calc(1.5rem - 3px);top: -4px;width: 7px;height: 7px;border-radius: 50%;border: 1.5px solid var(--accent);background: var(--bg);box-shadow: 0 0 8px var(--signal-glow)}@container media (min-width: 34rem){.flow{--node-gap: 1.75rem;grid-auto-flow: column;grid-auto-columns: minmax(0,1fr);align-items: stretch}.flow__node + .flow__node::before{left: calc(var(--node-gap) * -1 - 1px);top: 50%;width: var(--node-gap);height: 1px;background: linear-gradient(90deg,var(--line-strong),var(--accent))}.flow__node + .flow__node::after{left: -4px;top: calc(50% - 3px)}}@container media (min-width: 34rem) and (max-width: 44rem){.flow--4{--node-gap: 1.25rem}.flow--4 .flow__node{padding: 0.75rem 0.7rem}.flow--4 .flow__label{font-size: 0.875rem}}.project__body{display: grid;gap: 1rem;align-content: center}.project__meta{display: flex;flex-wrap: wrap;align-items: center;gap: 0.6rem 1rem}.status{display: inline-flex;align-items: center;gap: 0.55rem;padding: 0.4rem 0.75rem 0.4rem 0.65rem;border: 1px solid var(--line-strong);border-radius: var(--radius-pill);color: var(--heading);font-family: var(--font-mono);font-size: 0.75rem;font-weight: 500;line-height: 1.2;letter-spacing: 0.08em;text-transform: uppercase}.status::before{content: "";width: 0.45rem;height: 0.45rem;border-radius: 50%;background: var(--silver-400)}.status--testing::before{background: var(--accent);box-shadow: 0 0 10px var(--signal-glow)}.status--development::before{background: var(--amber-300);box-shadow: 0 0 10px rgb(231 182 92 / 0.35)}.status--live::before{background: var(--green-300);box-shadow: 0 0 10px rgb(95 214 158 / 0.4)}.status--recording::before{background: var(--brand-blue)}.project__kind{color: var(--muted);font-size: 0.875rem;font-stretch: var(--stretch-ui)}.project__title{font-size: clamp(1.6rem,1.3rem + 1.2vw,2.25rem);font-weight: 540;font-stretch: var(--stretch-display);line-height: 1.1;letter-spacing: -0.025em;color: var(--heading)}.project__text{max-width: 33rem;text-wrap: pretty}.project__stack{color: var(--muted);font-family: var(--font-mono);font-size: 0.8125rem;letter-spacing: 0.02em}.project__links{display: flex;flex-wrap: wrap;gap: 0.5rem 1.5rem;margin-top: 0.25rem}.about{display: grid;gap: 2rem 4rem}.about .section-head{margin-bottom: 0}.about__body{display: grid;gap: 1.25rem;max-width: 38rem}.about__lede{color: var(--heading);font-size: var(--step-2);font-stretch: var(--stretch-ui);line-height: 1.45;letter-spacing: -0.01em;text-wrap: pretty}.about__person{color: var(--muted)}@media (min-width: 960px){.about{grid-template-columns: minmax(0,5fr) minmax(0,7fr);align-items: start}.about .section-head{grid-template-columns: 1fr}.about__body{padding-top: 2.6rem}}.steps{position: relative;display: grid;gap: 2.5rem}.step{position: relative;display: grid;align-content: start;gap: 0.75rem;padding-left: 4.25rem}.step__node{position: absolute;left: 0;top: -0.35rem;display: grid;place-items: center;width: 2.9rem;height: 2.9rem;border: 1px solid var(--signal-line);border-radius: 50%;background: var(--bg);box-shadow: 0 0 0 5px var(--bg),0 0 28px -4px var(--signal-glow);transition: border-color 0.8s ease,box-shadow 0.8s ease}.step__number{color: var(--heading);font-family: var(--font-mono);font-size: 0.8125rem;font-weight: 500;letter-spacing: 0.04em;font-variant-numeric: tabular-nums}.step__title{font-size: var(--step-2);font-weight: 540;font-stretch: var(--stretch-display);line-height: 1.2;letter-spacing: -0.015em;color: var(--heading)}.step__body{max-width: 24rem;text-wrap: pretty}.steps::before,.steps::after{content: "";position: absolute;left: calc(1.45rem - 0.5px);top: 1rem;bottom: 2rem;width: 1px;background: var(--line-strong)}.steps::after{background: linear-gradient(180deg,var(--accent),rgb(127 221 242 / 0.15));transform-origin: top center;transition: transform 1.6s var(--ease-out)}@media (min-width: 900px){.steps{grid-template-columns: repeat(3,minmax(0,1fr));gap: 3rem}.step{padding-left: 0;padding-top: 4.5rem}.step__node{top: 0}.steps::before,.steps::after{left: 1.45rem;right: calc((100% - 6rem) / 3 * 1 - 1.45rem);top: 1.45rem;bottom: auto;width: auto;height: 1px}.steps::after{background: linear-gradient(90deg,var(--accent),rgb(127 221 242 / 0.15));transform-origin: left center}}.approach{display: grid;gap: 2rem 4rem}.approach .section-head{margin-bottom: 0}.approach__main{display: grid;gap: 2.5rem}.paths{display: grid;gap: 1rem}.path{display: grid;align-content: start;gap: 0.6rem;padding: 1.5rem;border: 1px solid var(--line-strong);border-radius: var(--radius-s);background: linear-gradient(180deg,rgb(238 242 245 / 0.035),rgb(238 242 245 / 0)),var(--surface)}.path__title{font-size: var(--step-2);font-weight: 540;font-stretch: var(--stretch-display);line-height: 1.2;letter-spacing: -0.015em;color: var(--heading)}.path p:last-child{text-wrap: pretty}@media (min-width: 640px){.paths{grid-template-columns: repeat(2,minmax(0,1fr))}}.approach__list{border-top: 1px solid var(--line)}.approach__item{display: grid;gap: 0.5rem;padding-block: 1.75rem;border-bottom: 1px solid var(--line)}.approach__title{display: flex;align-items: center;gap: 0.85rem;font-size: var(--step-1);font-weight: 560;font-stretch: var(--stretch-display);letter-spacing: -0.01em;color: var(--heading)}.approach__title::before{content: "";flex: none;width: 0.5rem;height: 0.5rem;border-radius: 50%;background: var(--accent);box-shadow: 0 0 12px var(--signal-glow)}.approach__item p{max-width: 36rem;padding-left: 1.35rem;text-wrap: pretty}@media (min-width: 960px){.approach{grid-template-columns: minmax(0,5fr) minmax(0,7fr);align-items: start}.approach .section-head{grid-template-columns: 1fr}}.price-level + .price-level{margin-top: clamp(2.5rem,2rem + 2vw,3.5rem)}.price-level__title{margin-bottom: 1rem}.packages{display: grid;gap: 1rem}.package{display: grid;grid-template-rows: auto auto 1fr auto;gap: 0.9rem;padding: 1.5rem;border: 1px solid var(--line);border-radius: var(--radius-s);background: var(--surface)}.package--featured{border-color: var(--signal-line);box-shadow: 0 0 0 1px var(--signal-line),0 0 28px rgb(127 221 242 / 0.08)}.package__head{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 0.5rem 1rem}.package__name{font-size: var(--step-1);font-weight: 560;font-stretch: var(--stretch-display);line-height: 1.3;letter-spacing: -0.01em;color: var(--heading)}.package__badge{padding: 0.2rem 0.6rem;border: 1px solid var(--signal-line);border-radius: 999px;font-family: var(--font-mono);font-size: 0.6875rem;letter-spacing: 0.08em;text-transform: uppercase;color: var(--accent)}.package__price{display: flex;align-items: baseline;gap: 0.6rem}.package__price-label{font-family: var(--font-mono);font-size: 0.75rem;letter-spacing: 0.1em;text-transform: uppercase;color: var(--muted)}.package__amount{font-size: var(--step-3);font-weight: 560;font-stretch: var(--stretch-ui);line-height: 1;font-variant-numeric: tabular-nums;color: var(--accent)}.package__features{display: grid;align-content: start;gap: 0.45rem;font-size: 0.9375rem;line-height: 1.5}.package__features li{position: relative;padding-left: 1.1rem;text-wrap: pretty}.package__features li::before{content: "";position: absolute;left: 0;top: 0.6em;width: 0.35rem;height: 0.35rem;border-radius: 50%;border: 1.5px solid var(--accent)}.package__paths{display: grid;gap: 0.6rem;padding-top: 0.9rem;border-top: 1px dashed var(--line-strong);font-size: 0.9375rem;line-height: 1.45}.package__paths dt{font-family: var(--font-mono);font-size: 0.6875rem;letter-spacing: 0.1em;text-transform: uppercase;color: var(--muted)}.package__paths dd{margin: 0;color: var(--heading)}@media (min-width: 900px){.packages{grid-template-columns: repeat(3,minmax(0,1fr))}}.pricing__details{display: grid;gap: 2rem 4rem;margin-top: clamp(2.5rem,2rem + 2vw,3.5rem);padding-top: 2rem;border-top: 1px solid var(--line)}.pricing__subtitle{margin-bottom: 1rem;font-size: var(--step-1);font-weight: 560;font-stretch: var(--stretch-display);color: var(--heading)}.pricing__included{padding: clamp(1.25rem,1rem + 1.5vw,2rem);border: 1px solid var(--signal-line);border-radius: var(--radius-l);background: var(--surface);box-shadow: 0 0 0 1px var(--signal-line),0 0 28px rgb(127 221 242 / 0.08)}.pricing__included .pricing__subtitle{font-size: var(--step-2);font-weight: 640}.pricing__included ul{display: grid;gap: 0.6rem}.pricing__included li{font-weight: 560;color: var(--heading)}.pricing__highlight{display: grid;gap: 0.25rem;margin-top: 1.5rem;padding: 1rem 1.25rem;border-radius: var(--radius-m);background: var(--accent);color: var(--on-accent)}.pricing__highlight strong{font-size: var(--step-1);font-weight: 700;font-stretch: var(--stretch-display)}.pricing__included li{position: relative;padding-left: 1.35rem;text-wrap: pretty}.pricing__included li::before{content: "";position: absolute;left: 0;top: 0.6em;width: 0.5rem;height: 0.5rem;border-radius: 50%;background: var(--accent);box-shadow: 0 0 12px var(--signal-glow)}.pricing__notes{display: grid;align-content: start;gap: 1rem;color: var(--muted);text-wrap: pretty}@media (min-width: 900px){.pricing__details{grid-template-columns: minmax(0,7fr) minmax(0,5fr)}}.section--contact{padding-bottom: clamp(4rem,2rem + 5vw,7rem)}.contact{position: relative;display: grid;gap: 2rem 4rem;padding: clamp(2rem,1rem + 5vw,5.5rem);border: 1px solid var(--line);border-radius: var(--radius-l);background: radial-gradient(60% 80% at 0% 0%,rgb(44 195 230 / 0.12),rgb(44 195 230 / 0) 70%),radial-gradient(50% 70% at 100% 100%,rgb(0 124 244 / 0.08),rgb(0 124 244 / 0) 70%),var(--surface);overflow: hidden}.contact__intro{display: grid;justify-items: start;gap: 1.25rem}.contact .eyebrow{margin-bottom: 0}.contact__title{max-width: 20ch;font-size: clamp(2rem,1.4rem + 2.6vw,3.75rem)}.contact__body{max-width: 34rem;font-size: var(--step-1);text-wrap: pretty}.contact__side{display: grid;justify-items: stretch;gap: 1.25rem}.contact__actions{display: flex;flex-wrap: wrap;gap: 0.75rem}.contact__actions .button{flex: 1 1 13rem}@media (min-width: 960px){.contact{grid-template-columns: minmax(0,3fr) minmax(0,2fr);align-items: end}.contact__actions{flex-direction: column}.contact__actions .button{flex: none}}.contact__address{color: var(--muted);font-size: 0.9375rem}.contact__address a{color: var(--heading);text-underline-offset: 0.3em;text-decoration-color: var(--line-strong)}.contact__address a:hover{color: var(--accent)}.site-footer{padding-block: clamp(3rem,2rem + 3vw,4.5rem) calc(2.5rem + env(safe-area-inset-bottom,0px));border-top: 1px solid var(--line);color: var(--muted);font-size: 0.9375rem}.site-footer__inner{display: grid;gap: 2.25rem 3rem}.site-footer__logo{display: inline-block;color: var(--heading)}.footer-logo{width: auto;height: 3.6rem}.site-footer__positioning{max-width: 22rem;margin-top: 1rem}.site-footer ul{display: grid;gap: 0.6rem}.site-footer a{color: var(--text);text-decoration: none;transition: color 0.2s ease}.site-footer a:hover{color: var(--accent)}.site-footer__legal{display: grid;gap: 0.6rem;align-content: end}@media (min-width: 760px){.site-footer__inner{grid-template-columns: minmax(0,2fr) repeat(2,minmax(0,1fr)) minmax(0,1fr);align-items: start}.site-footer__legal{justify-items: end;align-self: stretch}}.not-found{padding-block: clamp(5rem,3rem + 8vw,10rem);min-height: 60vh}.not-found__title{font-size: var(--step-4);font-weight: 560;font-stretch: var(--stretch-display);letter-spacing: -0.04em;line-height: 1.05;color: var(--heading)}.not-found__body{max-width: 32rem;margin-block: 1.25rem 2rem;font-size: var(--step-1)}.dev-note{max-width: 38rem;margin-top: 0.5rem;padding: 0.65rem 0.85rem;border: 1px dashed rgb(240 200 120 / 0.6);border-radius: var(--radius-s);background: rgb(240 200 120 / 0.07);color: #f3d391;font-family: var(--font-mono);font-size: 0.75rem;line-height: 1.5;letter-spacing: 0.01em}.js [data-reveal]{transition: opacity var(--reveal-time) var(--ease-out),transform var(--reveal-time) var(--ease-out)}.js .reveal-pending{opacity: 0.85;transform: translate3d(0,1.5rem,0)}.js .reveal-pending .eyebrow__trace{opacity: 0.35;transform: scaleX(0.25)}.js .reveal-pending .step__node{border-color: var(--line-strong);box-shadow: 0 0 0 5px var(--bg)}.js .steps.line-pending::after{transform: scaleY(0)}@media (min-width: 900px){.js .steps.line-pending::after{transform: scaleX(0)}}.services .service:nth-child(2),.steps .step:nth-child(2),.approach__list .approach__item:nth-child(2),.paths .path:nth-child(2),.packages .package:nth-child(2){transition-delay: 90ms}.services .service:nth-child(3),.steps .step:nth-child(3),.approach__list .approach__item:nth-child(3),.packages .package:nth-child(3){transition-delay: 180ms}.services .service:nth-child(4),.approach__list .approach__item:nth-child(4),.packages .package:nth-child(4){transition-delay: 270ms}@media (hover: hover) and (prefers-reduced-motion: no-preference){.service,.path,.package,.js .service,.js .path,.js .package{transition: opacity var(--reveal-time) var(--ease-out),transform var(--reveal-time) var(--ease-out),scale 0.3s var(--ease-out),border-color 0.3s var(--ease-out),box-shadow 0.3s var(--ease-out)}.services .service:hover:nth-child(n),.paths .path:hover:nth-child(n),.packages .package:hover:nth-child(n){scale: 1.015;transition-delay: 0s;border-color: var(--line-strong)}.packages .package--featured:hover:nth-child(n){border-color: var(--signal-line)}}@media (prefers-reduced-motion: no-preference){.js .hero__copy>*{animation: rise 1s var(--ease-out) both}.js .hero__copy>:nth-child(2){animation-delay: 70ms}.js .hero__copy>:nth-child(3){animation-delay: 140ms}.js .hero__copy>:nth-child(4){animation-delay: 210ms}.js .hero__media{animation: settle 1.4s var(--ease-out) both}@supports (animation-timeline: view()){.hero__frame{animation: recede linear both;animation-timeline: view();animation-range: exit 0% exit 100%}}}@keyframes rise{from{opacity: 0.4;transform: translate3d(0,0.9rem,0)}}@keyframes settle{from{opacity: 0.6;transform: scale(0.985)}}@keyframes recede{to{opacity: 0.35;transform: translate3d(0,8%,0) scale(0.96)}}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important;scroll-behavior: auto !important}.js .reveal-pending{opacity: 1;transform: none}}@media print{:root{--bg: #fff;--surface: #fff;--text: #222;--heading: #000;--muted: #444;--accent: #035a73;--line: #ccc;--line-strong: #999}body{background: #fff}.skip-link,.site-header,.hero__media,.dev-note{display: none !important}*,*::before,*::after{animation: none !important;transition: none !important;box-shadow: none !important}.js .reveal-pending{opacity: 1;transform: none}.section{padding-block: 2rem}.service,.project,.step,.approach__item{break-inside: avoid}}