*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}:root{color-scheme:light;--bg: #fff;--text: #181311;--text-muted: #685d54;--text-faint: #9a8f84;--accent: #c63a2b;--border: #ded4c9;--article-surface: transparent;--article-border: transparent}@media(prefers-color-scheme: dark){:root{color-scheme:dark;--bg: #0a0a0a;--text: #e8e8e8;--text-muted: #888;--text-faint: #444;--accent: #ff3b30;--border: #1e1e1e;--article-surface: #161515;--article-border: #242020}}html,body{min-height:100%}body{min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--text);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}main{flex:1}.trade-hot-callout{color:var(--text-muted);font-size:.875rem;line-height:1.5}.trade-hot-callout a{color:var(--text);text-decoration:underline;text-decoration-color:color-mix(in srgb, var(--text) 42%, transparent);text-underline-offset:.2em}.trade-hot-callout a:hover{text-decoration-color:currentColor}.trade-hot-callout a:focus-visible{outline:2px solid var(--text);outline-offset:3px}.visually-hidden{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;clip-path:inset(50%) !important;border:0 !important;margin:-1px !important;white-space:nowrap !important}.page-title--single-line{white-space:nowrap}@media(max-width: 48rem){.page-title--single-line{max-width:100%;overflow-wrap:anywhere;white-space:normal;text-wrap:balance}}nav{position:sticky;top:0;z-index:100;min-height:4rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-inline:2rem;background:var(--bg)}nav .nav-logo{font-size:1.125rem;font-weight:600;letter-spacing:-0.02em}nav .nav-links{display:flex;align-items:center;gap:clamp(.875rem,2.5vw,2rem)}nav .nav-links a{color:var(--text-muted);font-size:.875rem;letter-spacing:.05em}nav .menu-toggle{display:none}@media(max-width: 48rem){nav{padding-inline:1rem}nav .nav-links{position:fixed;inset:4rem 0 0;z-index:-1;flex-direction:column;justify-content:center;gap:2.5rem;background:var(--bg);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-0.5rem);transition:opacity 180ms ease,transform 180ms ease,visibility 180ms}nav .nav-links a{font-size:1.5rem;letter-spacing:.05em}nav .nav-links.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}nav .menu-toggle{width:2.5rem;height:2.75rem;display:grid;place-items:center;padding:0;color:var(--text);background:rgba(0,0,0,0);border:0;cursor:pointer}nav .menu-toggle svg{width:1.5rem;height:1.5rem}body.menu-open{overflow:hidden}}@media(prefers-reduced-motion: reduce){nav .nav-links{transition:none}}.intro{width:min(100%,72rem);margin-inline:auto;padding:clamp(5rem,12vw,10rem) 2rem}.intro .intro-header{display:grid;grid-template-columns:minmax(0, 1fr) minmax(18rem, 42%);align-items:center;gap:clamp(1.5rem,5vw,4rem);margin-bottom:clamp(4rem,8vw,8rem);box-sizing:border-box;padding:0rem}.intro .intro-header .intro-header-content{display:flex;flex-direction:column;justify-content:space-between;align-self:stretch;padding-block:0}.intro .intro-header .intro-header-content .intro-header-copy{width:100%}.intro .intro-header .intro-header-content .intro-header-copy>p:first-child{color:var(--text-muted);font-size:clamp(1.0625rem,.98rem + .3vw,1.25rem);line-height:1.5;word-break:balance;padding:.8rem 0rem 0rem .4rem}.intro .intro-header .intro-header-content .trade-hot-callout{padding:.7rem 0 0 .4rem}.intro .intro-header h1{font-size:clamp(3rem,7.5vw,7rem);line-height:.95;letter-spacing:-0.04em;white-space:nowrap}.intro .intro-header img{display:block;width:100%;height:auto;border-radius:.5rem}@media(orientation: landscape)and (min-width: 37.501rem)and (max-width: 60rem)and (max-height: 31rem){.intro{padding-top:clamp(2rem,10vh,3rem);padding-bottom:clamp(3rem,12vh,5rem)}.intro .intro-header{align-items:start;margin-bottom:clamp(2.5rem,10vh,4rem)}.intro .intro-header .intro-header-content,.intro .intro-header .intro-header-image{align-self:start}.intro .intro-header .intro-header-content{padding-block:0}}@media(max-width: 37.5rem){.intro{padding-top:0;padding-bottom:clamp(2.5rem,10vw,5rem);padding-inline:1rem}.intro .intro-header{grid-template-columns:1fr;gap:clamp(1rem,5vw,1.5rem);margin-bottom:clamp(2.5rem,10vw,4rem)}.intro .intro-header .intro-header-content{padding-block:0}.intro .intro-header h1{font-size:clamp(2.5rem,13vw,4rem)}.intro .intro-header .intro-header-image{order:-1}}.project-intake{position:relative;width:100%;margin:clamp(2.5rem,7vw,5.5rem) 0 0;padding:clamp(1.25rem,3.5vw,2.25rem);overflow:hidden;border:1px solid var(--border);border-radius:.75rem;background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 7%, transparent), transparent 42%),color-mix(in srgb, var(--text) 2%, var(--bg));box-shadow:0 1.5rem 4rem color-mix(in srgb, var(--text) 6%, transparent)}.project-intake::before{position:absolute;inset:0 auto auto 0;width:100%;height:.2rem;background:var(--accent);content:""}.project-intake__prompt{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2em;color:var(--text);font-size:clamp(1.65rem,1.15rem + 2vw,3rem);font-weight:600;letter-spacing:-0.045em;line-height:1.08;text-wrap:balance}.project-intake__errors{margin-bottom:1.5rem;padding:1rem 1.1rem;border:1px solid light-dark(#932219, #ff9187);border-radius:.4rem}.project-intake__errors h3{font-size:1rem}.project-intake__errors ul{display:grid;gap:.35rem;margin:.7rem 0 0 1.25rem}.project-intake__errors a{text-decoration:underline;text-underline-offset:.18em}.project-intake__select{position:relative;display:inline-flex;min-width:0;align-items:center;color:var(--accent);transition:opacity 160ms ease,transform 160ms ease}.project-intake__select.is-changing{opacity:.42;transform:translateY(0.08em)}.project-intake__select select{min-width:0;max-width:100%;padding:0 1.35em .08em .08em;border:0;border-bottom:.08em solid currentColor;border-radius:0;appearance:none;background:rgba(0,0,0,0);color:inherit;cursor:pointer;font:inherit;letter-spacing:inherit;line-height:inherit}.project-intake__select select:focus-visible{outline:2px solid var(--text);outline-offset:3px}.project-intake__select select option{background:var(--bg);color:var(--text);font-size:1rem}.project-intake__chevron{position:absolute;right:.2em;width:.35em;height:.35em;border-right:.08em solid currentColor;border-bottom:.08em solid currentColor;pointer-events:none;transform:translateY(-0.12em) rotate(45deg)}.project-intake__details{display:grid;grid-template-columns:minmax(12rem, 1.25fr) minmax(8rem, 0.55fr) minmax(11rem, 0.8fr) auto;align-items:end;gap:.75rem;margin-top:clamp(1.5rem,4vw,2.5rem)}.project-intake__details button{min-height:3.25rem;padding:.8rem 1.1rem;border:1px solid var(--text);border-radius:.4rem;background:var(--text);color:var(--bg);cursor:pointer;font:inherit;font-size:.875rem;font-weight:700;line-height:1.2;transition:color 160ms ease,background 160ms ease,transform 160ms ease;white-space:nowrap}.project-intake__details button:hover{background:rgba(0,0,0,0);color:var(--text);transform:translateY(-0.1rem)}.project-intake__details button:active{transform:translateY(0)}.project-intake__details button:focus-visible{outline:2px solid var(--text);outline-offset:3px}.project-intake__field{display:grid;gap:.45rem}.project-intake__field label{color:var(--text-muted);font-size:.72rem;font-weight:700;letter-spacing:.09em;line-height:1;text-transform:uppercase}.project-intake__field input{width:100%;min-height:3.25rem;padding:.75rem .85rem;border:1px solid var(--border);border-radius:.4rem;background:color-mix(in srgb, var(--bg) 82%, transparent);color:var(--text);font:inherit;font-size:1rem}.project-intake__field input::placeholder{color:var(--text-muted);opacity:1}.project-intake__field input:hover{border-color:color-mix(in srgb, var(--text) 42%, transparent)}.project-intake__field input:focus{border-color:var(--text);outline:2px solid var(--text);outline-offset:3px}.project-intake__field input[aria-invalid=true]{border-color:light-dark(#932219, #ff9187)}.project-intake__field-error{display:block;margin-top:.35rem;color:light-dark(#932219, #ff9187);font-size:.75rem;line-height:1.4}.project-intake__status{grid-column:1/-1;color:var(--text-muted);font-size:.75rem;line-height:1.45}.project-intake__status--success{color:light-dark(#17663d, #77d7a4)}.project-intake__status--error{color:light-dark(#932219, #ff9187)}.project-intake__honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width: 48rem){.project-intake__details{grid-template-columns:repeat(2, minmax(0, 1fr))}.project-intake__details button{width:100%}}@media(max-width: 37.5rem){.project-intake{padding:1.25rem}.project-intake__prompt{font-size:clamp(1.5rem,7.5vw,2.1rem)}.project-intake__details{grid-template-columns:1fr}.project-intake__field--description,.project-intake__details button{width:100%}}@media(prefers-reduced-motion: reduce){.project-intake__select,.project-intake__details button{transition:none}.project-intake__details button:hover{transform:none}}@media(forced-colors: active){.project-intake__select select{appearance:auto;padding-right:.25em}.project-intake__chevron{display:none}}.home-services{width:min(100%,72rem);margin-inline:auto;padding:0 2rem clamp(4rem,10vw,8rem)}.home-services__content{width:min(100%,62ch);margin-inline:auto}.home-services h2{margin-bottom:1.25rem;font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-0.05em;line-height:1}.home-services p,.home-services li{color:var(--text-muted);font-size:clamp(1rem,.95rem + .3vw,1.125rem);line-height:1.55;text-wrap:pretty}.home-services p{margin-bottom:1.25rem}.home-services ul{display:grid;gap:.625rem;padding-left:1.25rem}.home-services__link{display:inline-flex;align-items:center;margin-top:1.5rem;padding:.55rem .8rem;border:1px solid color-mix(in srgb, var(--text) 22%, transparent);border-radius:.25rem;font-size:.875rem;font-weight:600;line-height:1;transition:color 160ms ease,background 160ms ease,border-color 160ms ease}.home-services__link:hover{color:var(--bg);background:var(--text);border-color:var(--text)}.home-services__link:focus-visible{outline:2px solid var(--text);outline-offset:3px}.home-services__carousel{position:relative;margin-top:clamp(2rem,5vw,4rem)}.home-services__carousel-controls{position:absolute;inset:0;z-index:2;pointer-events:none}.home-services__carousel-controls button{position:absolute;top:calc(50% - .375rem);width:2.75rem;height:2.75rem;display:grid;place-items:center;border:1px solid color-mix(in srgb, var(--text) 24%, transparent);border-radius:50%;color:var(--text);background:color-mix(in srgb, var(--bg) 84%, transparent);box-shadow:0 .35rem 1.25rem rgba(0,0,0,.18);backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem);font:inherit;font-size:1.125rem;cursor:pointer;pointer-events:auto;transform:translateY(-50%);transition:color 160ms ease,background 160ms ease,border-color 160ms ease,opacity 160ms ease}.home-services__carousel-controls button:first-child{left:clamp(.35rem,1.2vw,.75rem)}.home-services__carousel-controls button:last-child{right:clamp(.35rem,1.2vw,.75rem)}.home-services__carousel-controls button:hover:not(:disabled){color:var(--bg);background:var(--text);border-color:var(--text)}.home-services__carousel-controls button:focus-visible{outline:2px solid var(--text);outline-offset:3px}.home-services__carousel-controls button:disabled{opacity:.32;cursor:default}.home-services__media{--home-video-gap: clamp(0.75rem, 2vw, 1.5rem);display:flex;gap:var(--home-video-gap);overflow-x:auto;padding-bottom:.75rem;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-color:color-mix(in srgb, var(--text-muted) 45%, transparent) rgba(0,0,0,0);scrollbar-width:thin}.home-services__media:focus-visible{outline:2px solid var(--text);outline-offset:.35rem}.home-services__media-item{flex:0 0 calc((100% - var(--home-video-gap))/2);aspect-ratio:3/2;overflow:hidden;border-radius:.5rem;scroll-snap-align:start;scroll-snap-stop:always}.home-services__media-item img{display:block;width:100%;height:100%;object-fit:cover}@media(hover: hover){.home-services__carousel-controls button,.home-services__carousel-controls button:disabled{opacity:0}.home-services__carousel:hover .home-services__carousel-controls button:not(:disabled),.home-services__carousel:focus-within .home-services__carousel-controls button:not(:disabled){opacity:1}.home-services__carousel:hover .home-services__carousel-controls button:disabled,.home-services__carousel:focus-within .home-services__carousel-controls button:disabled{opacity:.32}}@media(max-width: 37.5rem){.home-services{padding-inline:1rem;padding-bottom:clamp(3rem,10vw,5rem)}.home-services__media-item{flex-basis:100%}}@media(prefers-reduced-motion: reduce){.home-services__media{scroll-behavior:auto}.home-services__carousel-controls button{transition:none}}.video-page{padding-top:clamp(2.5rem,8vw,6rem)}.video-page__header,.video-collection__header{width:min(100%,72rem);margin-inline:auto;padding-inline:2rem}.video-page__header{margin-bottom:clamp(2rem,5vw,4rem)}.video-page__header h1{font-size:clamp(1.375rem,5.2vw,4.5rem);letter-spacing:-0.06em;line-height:.95}.video-reel{width:min(100%,72rem);margin:0 auto clamp(4rem,10vw,8rem);padding-inline:2rem}.video-reel__frame{position:relative;aspect-ratio:16/9;overflow:hidden;background:#000;border-radius:.5rem}.video-reel__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-page>.home-services{padding:0 2rem clamp(4rem,10vw,8rem)}.video-page>.home-services .home-services__content{width:100%;display:grid;grid-template-columns:minmax(11rem, 0.65fr) minmax(0, 1.35fr);column-gap:clamp(2rem,7vw,7rem);padding-block:clamp(2rem,5vw,4rem);border-block:1px solid color-mix(in srgb, var(--text-muted) 28%, transparent)}.video-page>.home-services h2{grid-column:1;grid-row:1/span 2;margin:0}.video-page>.home-services p,.video-page>.home-services ul,.video-page>.home-services .home-services__link{grid-column:2;justify-self:start}.video-page>.home-services p{margin-bottom:1.5rem;color:var(--text);font-size:clamp(1.125rem,1rem + .45vw,1.375rem);line-height:1.45}.video-page>.home-services ul{grid-template-columns:repeat(2, minmax(0, 1fr));gap:.75rem clamp(1.5rem,4vw,3rem);padding-left:1.1rem}.video-page>.home-services li{padding-left:.15rem}.video-page>.home-services li:last-child{grid-column:1/-1;max-width:62ch}.video-collection{width:min(100%,72rem);margin-inline:auto;padding:0 2rem clamp(4rem,10vw,8rem)}.video-collection h2{margin-bottom:1.5rem;font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-0.05em;line-height:1}.video-collection__header{padding-inline:0}.video-collection__grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(min(100%, 19rem), 1fr));gap:clamp(1.5rem,3vw,2.5rem) clamp(1rem,2vw,1.5rem);list-style:none}.video-collection__grid a{display:grid;gap:.75rem;color:var(--text);font-size:1rem;font-weight:600;line-height:1.35}.video-collection__grid img{width:100%;height:auto;aspect-ratio:16/9;display:block;object-fit:cover;border-radius:.375rem;background:#000;transition:filter 180ms ease,transform 180ms ease}.video-collection__grid a:hover img,.video-collection__grid a:focus-visible img{filter:brightness(0.78);transform:translateY(-0.2rem)}.video-collection__grid a:focus-visible{outline:2px solid var(--text);outline-offset:.25rem}.video-modal{width:min(100% - 2rem,75rem);max-width:none;max-height:calc(100% - 2rem);margin:auto;padding:0;color:var(--text);background:rgba(0,0,0,0);border:0;overflow:visible}.video-modal::backdrop{background:rgba(0,0,0,.82);backdrop-filter:blur(0.25rem)}.video-modal__content{overflow:hidden;background:var(--bg);border:1px solid color-mix(in srgb, var(--text-muted) 32%, transparent);border-radius:.625rem;box-shadow:0 1.5rem 5rem rgba(0,0,0,.45)}.video-modal__header{min-height:3.75rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem .75rem .75rem 1.25rem}.video-modal__header h2{font-size:clamp(1rem,.95rem + .35vw,1.25rem);letter-spacing:-0.02em;line-height:1.25}.video-modal__close{width:2.5rem;height:2.5rem;flex:0 0 auto;display:grid;place-items:center;padding:0;color:var(--text);background:rgba(0,0,0,0);border:0;border-radius:50%;font:inherit;font-size:1.75rem;line-height:1;cursor:pointer}.video-modal__close:hover{background:color-mix(in srgb, var(--text-muted) 16%, transparent)}.video-modal__close:focus-visible{outline:2px solid var(--text);outline-offset:.125rem}.video-modal__player{position:relative;aspect-ratio:16/9;background:#000}.video-modal__player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}body.video-modal-open{overflow:hidden}@media(max-width: 48rem){.video-page>.home-services .home-services__content{grid-template-columns:1fr;row-gap:1.5rem}.video-page>.home-services h2,.video-page>.home-services p,.video-page>.home-services ul,.video-page>.home-services .home-services__link{grid-column:1}.video-page>.home-services h2{grid-row:auto}}@media(max-width: 37.5rem){.video-page__header,.video-collection__header{padding-inline:1rem}.video-reel,.video-collection{padding-inline:1rem}.video-page>.home-services{padding-inline:1rem}.video-page>.home-services ul{grid-template-columns:1fr}.video-page>.home-services li:last-child{grid-column:1}}@media(prefers-reduced-motion: reduce){.video-collection__grid img{transition:none}}.software-page{width:min(100%,80rem);margin-inline:auto;padding:clamp(4.5rem,10vw,8.5rem) 2rem clamp(6rem,12vw,10rem)}.software-hero{width:100%}.software-hero h1{font-size:clamp(2.75rem,5.2vw,4.5rem);line-height:.94;letter-spacing:-0.065em}.software-intro{max-width:56rem;margin-top:clamp(2rem,4vw,3.5rem);color:var(--text-muted);font-size:clamp(1.125rem,1rem + .65vw,1.55rem);line-height:1.55;text-wrap:pretty}.software-intro p{max-width:62ch}.software-intro p+p{margin-top:.9rem}.work-examples{margin-top:clamp(6rem,14vw,11rem)}.work-examples-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.25rem}.work-examples-header>h2{color:var(--text-muted);font-size:.8125rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase}.carousel-controls{display:flex;gap:.5rem}.carousel-controls button{width:2.75rem;height:2.75rem;display:grid;place-items:center;border:1px solid color-mix(in srgb, var(--text) 18%, transparent);border-radius:50%;color:var(--text);background:rgba(0,0,0,0);font:inherit;font-size:1.125rem;cursor:pointer;transition:color 160ms ease,background 160ms ease,opacity 160ms ease}.carousel-controls button:hover:not(:disabled){color:var(--bg);background:var(--text)}.carousel-controls button:focus-visible{outline:2px solid var(--text);outline-offset:3px}.carousel-controls button:disabled{opacity:.28;cursor:default}.work-carousel{display:flex;gap:clamp(1rem,2.5vw,1.75rem);overflow-x:auto;padding:.25rem 0 1.25rem;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-color:color-mix(in srgb, var(--text-muted) 45%, transparent) rgba(0,0,0,0);scrollbar-width:thin}.work-carousel:focus-visible{outline:2px solid var(--text);outline-offset:.35rem}.work-card{flex:0 0 clamp(19rem,64vw,48rem);overflow:hidden;border:1px solid color-mix(in srgb, var(--text) 15%, transparent);border-radius:.75rem;background:color-mix(in srgb, var(--bg) 94%, var(--text));scroll-snap-align:start;transition:border-color 180ms ease,transform 180ms ease}.work-card:hover{border-color:color-mix(in srgb, var(--text) 45%, transparent);transform:translateY(-0.2rem)}.work-card:hover .work-card-arrow{transform:translate(0.12rem, -0.12rem)}.work-card:focus-visible{outline:2px solid var(--text);outline-offset:-2px}.work-card-preview{aspect-ratio:8/5;overflow:hidden;border-bottom:1px solid rgba(0,0,0,.12);background:#fff}.work-card-image{width:100%;height:100%;display:block;object-fit:cover;object-position:top center}.work-card-copy{min-height:8.5rem;display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;padding:clamp(1.25rem,3vw,2rem)}.work-card-copy p{margin-bottom:.4rem;color:var(--text-muted);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}.work-card-copy h3{font-size:clamp(1.5rem,3.5vw,2.25rem);letter-spacing:-0.04em}.work-card-arrow{flex:none;font-size:1.5rem;transition:transform 180ms ease}.software-services{display:grid;grid-template-columns:minmax(0, 1.15fr) minmax(18rem, 0.85fr);gap:clamp(2rem,8vw,7rem);align-items:start;margin-top:clamp(7rem,16vw,13rem);padding-top:clamp(2rem,5vw,4rem);border-top:1px solid color-mix(in srgb, var(--text) 16%, transparent)}.software-services h2{max-width:13ch;font-size:clamp(2.5rem,6.5vw,5.5rem);line-height:.98;letter-spacing:-0.06em;text-wrap:balance}.software-services__details{display:grid;justify-items:start}.software-services ul{max-width:38ch;padding-top:.35rem;padding-left:1.2em;color:var(--text-muted);font-size:clamp(1.0625rem,1rem + .35vw,1.3rem);line-height:1.6}.software-services li{padding-left:.35rem}.software-services li+li{margin-top:.65rem}.software-services li::marker{color:var(--accent);font-size:.75em}.software-services__cta{display:inline-flex;align-items:center;margin-top:1.5rem;padding:.55rem .8rem;border:1px solid color-mix(in srgb, var(--text) 22%, transparent);border-radius:.25rem;font-size:.875rem;font-weight:600;line-height:1;transition:color 160ms ease,background 160ms ease,border-color 160ms ease}.software-services__cta:hover{color:var(--bg);background:var(--text);border-color:var(--text)}.software-services__cta:focus-visible{outline:2px solid var(--text);outline-offset:3px}@media(max-width: 37.5rem){.software-page{padding-top:clamp(2.75rem,10vw,4.5rem);padding-inline:1rem}.software-hero h1{font-size:clamp(3rem,15vw,4.25rem)}.work-examples{margin-top:5rem}.work-card{flex-basis:calc(100vw - 3rem)}.software-services{grid-template-columns:1fr;gap:1.75rem;margin-top:6.5rem}.software-services h2{font-size:clamp(2.5rem,12vw,3.75rem)}.software-services ul{padding-top:0}}@media(prefers-reduced-motion: reduce){.work-carousel{scroll-behavior:auto}.work-card,.work-card-arrow,.carousel-controls button{transition:none}}.products-page{min-height:calc(100vh - 4rem - 6rem);min-height:calc(100svh - 4rem - 6rem);display:grid;place-items:center;padding:clamp(3rem,10vw,8rem) 2rem;text-align:center}.products-page h1{color:var(--text-muted);font-size:clamp(2rem,5vw,3.5rem);font-weight:600;line-height:1.1;letter-spacing:-0.04em;text-wrap:balance}@media(max-width: 37.5rem){.products-page{padding-inline:1rem}}.words-page{min-height:calc(100vh - 4rem);min-height:calc(100svh - 4rem);line-height:1.6}.page-header{padding:3.75rem 1.5rem 2.5rem;text-align:center}.page-header h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:700;line-height:1.2;letter-spacing:-0.04em}.page-header .subtitle{margin-top:.5rem;color:var(--text-muted);font-size:1rem}.words-list{max-width:42.5rem;margin:0 auto;padding:0 1.5rem 5rem}a.words-item{display:block;padding:1.5rem 0;border-top:1px solid var(--border);color:inherit;text-decoration:none}a.words-item:last-child{border-bottom:1px solid var(--border)}a.words-item .date{display:block;margin-bottom:.25rem;color:var(--text-faint);font-family:ui-monospace,"SFMono-Regular",monospace;font-size:.8rem}a.words-item h2{font-size:1.25rem;font-weight:600;line-height:1.2;letter-spacing:-0.02em;transition:color 200ms ease}a.words-item:hover h2{color:var(--accent)}a.words-item .post-status{display:inline-block;margin-top:.5rem;color:var(--accent);font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.blog-post{max-width:42.5rem;margin:0 auto;padding:3.75rem 1.5rem 5rem;line-height:1.6}.blog-post .post-date{margin-bottom:.5rem;color:var(--text-faint);font-family:ui-monospace,"SFMono-Regular",monospace;font-size:.8rem}.blog-post>h1{margin-bottom:2.5rem;font-size:clamp(2rem,4vw,2.75rem);font-weight:600;line-height:1.2;letter-spacing:-0.02em}.blog-post .post-content{font-size:1.05rem;line-height:1.8}.blog-post .post-content p{margin-bottom:1.5em}.blog-post .post-content h2{margin-top:2.5em;margin-bottom:.75em;font-size:1.5rem;font-weight:600;line-height:1.2;letter-spacing:-0.02em}.blog-post .post-content h3,.blog-post .post-content h4{margin-top:2em;margin-bottom:.5em;font-weight:600;line-height:1.2;letter-spacing:-0.02em}.blog-post .post-content a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.blog-post .post-content a:hover{text-decoration-color:rgba(0,0,0,0)}.blog-post .post-content blockquote{margin:1.5em 0;padding-left:1.25rem;border-left:3px solid var(--accent);color:var(--text-muted);font-style:italic}.blog-post .post-content strong{font-weight:600}.blog-post .post-content ul,.blog-post .post-content ol{margin:0 0 1.5em 1.5em}.blog-post .post-content li+li{margin-top:.4em}.blog-post .post-content pre{max-width:100%;margin-bottom:1.5em;padding:1rem;overflow-x:auto;border:1px solid var(--border);border-radius:.375rem;font-size:.9rem;line-height:1.6}.blog-post .post-content code{font-family:ui-monospace,"SFMono-Regular",monospace}.blog-post .post-content :not(pre)>code{padding:.1em .3em;border:1px solid var(--border);border-radius:.25rem;font-size:.9em}.blog-post .post-content img{display:block;max-width:100%;height:auto;margin:2em auto}.blog-post .post-content table{display:block;width:100%;margin-bottom:1.5em;overflow-x:auto;border-collapse:collapse}.blog-post .post-content th,.blog-post .post-content td{padding:.6rem .75rem;border:1px solid var(--border);text-align:left}.blog-post .post-content hr{margin:2.5em 0;border:0;border-top:1px solid var(--border)}.blog-post .back-link{margin-top:3.75rem;padding-top:1.5rem;border-top:1px solid var(--border)}.blog-post .back-link a{color:var(--text-muted);font-size:.9rem}.blog-post .back-link a:hover{color:var(--accent)}@media(prefers-color-scheme: dark){.blog-post{max-width:47.5rem;margin-top:1.125rem;margin-bottom:1.5rem;padding:1.75rem clamp(1.5rem,4vw,2.5rem) 3.5rem;background:var(--article-surface);border:1px solid var(--article-border);border-radius:.875rem}}.contact-page{--contact-error: light-dark(#932219, #ff9187);--contact-success: light-dark(#17663d, #77d7a4);width:min(100%,80rem);margin-inline:auto;padding:clamp(4rem,9vw,8rem) 2rem clamp(5rem,11vw,9rem)}.contact-hero{max-width:64rem}.contact-hero h1{font-size:clamp(2.75rem,5.2vw,4.5rem);line-height:.94;letter-spacing:-0.065em}.contact-eyebrow{margin-bottom:1.5rem;color:var(--accent);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.contact-intro{max-width:43rem;margin-top:clamp(2rem,5vw,3.5rem);color:var(--text-muted);font-size:clamp(1.125rem,1rem + .5vw,1.4rem);line-height:1.55}.contact-layout{display:grid;grid-template-columns:minmax(15rem, 0.7fr) minmax(0, 1.3fr);gap:clamp(3rem,9vw,8rem);margin-top:clamp(5rem,11vw,9rem);padding-top:clamp(2.5rem,5vw,4rem);border-top:1px solid color-mix(in srgb, var(--text) 16%, transparent)}.contact-services h2,.contact-services>p{color:var(--text-muted);font-size:.8125rem;line-height:1.55}.contact-services h2{font-weight:600;letter-spacing:.11em;text-transform:uppercase}.contact-services ul{margin-top:2rem;list-style:none}.contact-services li{display:grid;gap:.45rem;padding-block:1.4rem;border-top:1px solid color-mix(in srgb, var(--text) 12%, transparent)}.contact-services li:last-child{border-bottom:1px solid color-mix(in srgb, var(--text) 12%, transparent)}.contact-services strong{font-size:1rem}.contact-services span{max-width:31ch;color:var(--text-muted);font-size:.9rem;line-height:1.55}.contact-services>p{max-width:31ch;margin-top:1.5rem}.contact-form-section h2{margin-bottom:2rem;font-size:clamp(1.75rem,3.5vw,2.75rem);line-height:1;letter-spacing:-0.05em}.contact-form,.contact-field{display:grid}.contact-form{gap:1.5rem}.contact-form__honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.contact-form__errors{margin-bottom:1.5rem;padding:1rem 1.1rem;border:1px solid var(--contact-error);border-radius:.375rem}.contact-form__errors h3{font-size:1rem}.contact-form__errors ul{display:grid;gap:.35rem;margin:.7rem 0 0 1.25rem}.contact-form__errors a{text-decoration:underline;text-underline-offset:.18em}.contact-form__row{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:1rem}.contact-field{gap:.6rem}.contact-field label{font-size:.8rem;font-weight:600;letter-spacing:.04em}.contact-field input,.contact-field select,.contact-field textarea{width:100%;border:1px solid color-mix(in srgb, var(--text) 20%, transparent);border-radius:.375rem;color:var(--text);background:color-mix(in srgb, var(--bg) 96%, var(--text));font:inherit;font-size:1rem;transition:border-color 160ms ease,box-shadow 160ms ease}.contact-field input:hover,.contact-field select:hover,.contact-field textarea:hover{border-color:color-mix(in srgb, var(--text) 40%, transparent)}.contact-field input:focus-visible,.contact-field select:focus-visible,.contact-field textarea:focus-visible{border-color:var(--text);outline:none;box-shadow:0 0 0 .2rem color-mix(in srgb, var(--accent) 22%, transparent)}.contact-field input,.contact-field select{min-height:3.25rem;padding:.75rem .9rem}.contact-field select{cursor:pointer}.contact-field textarea{min-height:11rem;padding:.9rem;line-height:1.5;resize:vertical}.contact-field textarea::placeholder{color:var(--text-faint)}.contact-field__error{color:var(--contact-error);font-size:.78rem;line-height:1.45}.contact-form__submit{display:flex;align-items:center;gap:1.25rem;margin-top:.5rem}.contact-form__submit button{min-height:3.25rem;display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:.8rem 1.2rem;border:1px solid var(--text);border-radius:.375rem;color:var(--bg);background:var(--text);font:inherit;font-size:.9rem;font-weight:600;cursor:pointer;transition:color 160ms ease,background 160ms ease}.contact-form__submit button:hover:not(:disabled){color:var(--text);background:rgba(0,0,0,0)}.contact-form__submit button:focus-visible{outline:2px solid var(--text);outline-offset:3px}.contact-form__submit button span{font-size:1.1rem}.contact-form__submit button:disabled{opacity:.45;cursor:not-allowed}.contact-form__submit .contact-form__status{max-width:27ch;color:var(--text-muted);font-size:.75rem;line-height:1.45}.contact-form__submit .contact-form__status--success{color:var(--contact-success)}.contact-form__submit .contact-form__status--error{color:var(--contact-error)}@media(max-width: 48rem){.contact-layout{grid-template-columns:1fr}.contact-services{max-width:36rem}}@media(max-width: 37.5rem){.contact-page{padding-top:clamp(2.75rem,10vw,4.5rem);padding-inline:1rem}.contact-hero h1{font-size:clamp(3.15rem,17vw,5rem)}.contact-form__row{grid-template-columns:1fr;gap:1.5rem}.contact-form__submit{align-items:stretch;flex-direction:column}.contact-form__submit button{width:100%}}@media(prefers-reduced-motion: reduce){.contact-field input,.contact-field select,.contact-field textarea,.contact-form__submit button{transition:none}}.client-portal-login{min-height:calc(100vh - 4rem - 5rem);display:grid;place-items:center;margin:0 auto;padding:2rem}.client-portal-login__card{width:min(100%,32rem);display:grid;gap:1rem;padding:3rem;border:1px solid var(--border);border-radius:1rem;background:var(--article-surface);box-shadow:0 1.5rem 3.5rem rgba(20,18,15,.08)}.client-portal-login__card h1{font-size:clamp(2rem,5vw,3.25rem);letter-spacing:-0.06em;line-height:.95}.client-portal-login__card [role=alert]{padding:.75rem .875rem;border:1px solid color-mix(in srgb, var(--accent) 45%, var(--border));border-radius:.5rem;color:var(--accent);font-size:.9375rem;line-height:1.4}.client-portal-login__card form{display:grid;gap:1.25rem;margin-top:1rem}.client-portal-login__card form>div{display:grid;gap:.5rem}.client-portal-login__card label{font-size:.875rem;font-weight:700}.client-portal-login__card input{width:100%;min-height:3.25rem;padding:.75rem .875rem;border:1px solid var(--border);border-radius:.5rem;background:rgba(0,0,0,0);color:var(--text);font:inherit}.client-portal-login__card input:focus-visible,.client-portal-login__card input[type=submit]:focus-visible{outline:2px solid var(--text);outline-offset:3px}.client-portal-login__card input[type=submit]{min-height:3.25rem;border:0;border-radius:.5rem;background:var(--text);color:var(--bg);cursor:pointer;font:inherit;font-weight:700}.client-portal-login__card input:disabled{cursor:not-allowed;opacity:.55}.client-portal__document{display:block;width:100%;min-height:calc(100vh - 4rem - 6rem);border:0}.client-portal form{display:flex;justify-content:center;padding:1.5rem 2rem 3rem}.client-portal form button{padding:.625rem .875rem;border:1px solid var(--border);border-radius:999px;background:rgba(0,0,0,0);color:var(--text-muted);cursor:pointer;font:inherit;font-size:.875rem;font-weight:700}.client-portal form button:focus-visible{outline:2px solid var(--text);outline-offset:3px}@media(max-width: 37.5rem){.client-portal-login{min-height:calc(100vh - 4rem - 3rem);padding:1rem}.client-portal-login__card{padding:1.5rem}}.dev-portals{width:min(100%,80rem);margin-inline:auto;padding:clamp(3rem,7vw,6rem) 2rem clamp(5rem,9vw,8rem)}.dev-portals__header{display:grid;grid-template-columns:minmax(0, 1.25fr) minmax(18rem, 0.75fr);align-items:end;gap:clamp(2rem,6vw,6rem)}.dev-portals__header h1{font-size:clamp(2.75rem,7vw,5.5rem);line-height:.9;letter-spacing:-0.07em}.dev-portals__eyebrow,.dev-portals__access-label{color:var(--accent);font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.dev-portals__intro{max-width:38rem;margin-top:1.5rem;color:var(--text-muted);font-size:clamp(1.05rem,1rem + .35vw,1.3rem);line-height:1.55}.dev-portals__access{padding:1.5rem;border:1px solid var(--border);border-radius:.75rem;background:var(--article-surface)}.dev-portals__access strong{display:block;margin-top:.65rem;font-size:1.4rem}.dev-portals__access p{margin-top:.5rem;color:var(--text-muted);font-size:.9rem;line-height:1.5}.dev-portals__access form{margin-top:1.25rem}.dev-portals__access.is-enabled{border-color:color-mix(in srgb, var(--accent) 50%, var(--border))}.dev-portals__button{display:inline-flex;min-height:2.75rem;align-items:center;justify-content:center;padding:.7rem 1rem;border:1px solid var(--text);border-radius:999px;background:var(--text);color:var(--bg);cursor:pointer;font:inherit;font-size:.875rem;font-weight:700}.dev-portals__button:hover{background:var(--accent);border-color:var(--accent)}.dev-portals__button:focus-visible{outline:2px solid var(--text);outline-offset:3px}.dev-portals__button--secondary{background:rgba(0,0,0,0);color:var(--text)}.dev-portals__summary{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));margin-top:clamp(3rem,7vw,6rem);border-block:1px solid var(--border)}.dev-portals__summary>div{padding:1.5rem 0}.dev-portals__summary>div+div{padding-left:1.5rem;border-left:1px solid var(--border)}.dev-portals__summary strong,.dev-portals__summary span{display:block}.dev-portals__summary strong{font-size:clamp(1.75rem,4vw,2.5rem);letter-spacing:-0.05em}.dev-portals__summary span{margin-top:.25rem;color:var(--text-muted);font-size:.8rem}.dev-portals__grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:1rem;margin-top:2rem}.dev-portals__empty{margin-top:2rem;padding:3rem;border:1px dashed var(--border);color:var(--text-muted);text-align:center}.dev-portal-card{display:flex;min-width:0;flex-direction:column;padding:1.5rem;border:1px solid var(--border);border-radius:.75rem;background:var(--article-surface)}.dev-portal-card__header{display:flex;align-items:start;justify-content:space-between;gap:1rem}.dev-portal-card__header h2{margin-top:.25rem;font-size:1.25rem;letter-spacing:-0.03em}.dev-portal-card__slug{overflow:hidden;color:var(--text-faint);font-family:ui-monospace,"SFMono-Regular",monospace;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.dev-portal-card__status{flex:0 0 auto;padding:.35rem .55rem;border:1px solid color-mix(in srgb, #27834f 45%, var(--border));border-radius:999px;color:light-dark(#17663d, #77d7a4);font-size:.7rem;font-weight:700}.dev-portal-card__status.is-missing{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));color:var(--accent)}.dev-portal-card__actions{margin-top:1.5rem}.dev-portal-card__unavailable{display:block;color:var(--text-muted);font-size:.875rem;line-height:1.5}.dev-portal-card__unavailable code{color:var(--text);font-family:ui-monospace,"SFMono-Regular",monospace}.dev-portal-card__warnings{margin-top:auto;padding-top:1.25rem;color:var(--text-muted);font-size:.8rem}.dev-portal-card__warnings summary{cursor:pointer}.dev-portal-card__warnings ul{display:grid;gap:.35rem;margin:.75rem 0 0 1rem}@media(max-width: 48rem){.dev-portals__header,.dev-portals__grid{grid-template-columns:1fr}}@media(max-width: 37.5rem){.dev-portals{padding-inline:1rem}.dev-portals__summary{grid-template-columns:1fr}.dev-portals__summary>div+div{padding-left:0;border-top:1px solid var(--border);border-left:0}.dev-portal-card__header{display:grid}.dev-portal-card__status{justify-self:start}}footer{padding:2.5rem 2rem;border-top:1px solid color-mix(in srgb, var(--text-muted) 20%, transparent);color:var(--text-muted);font-size:.8rem;text-align:center}
