@font-face{font-family:heebo;src:url(../media/Heebo_Variable_latin-s.p.3489sfztm8n0y.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:heebo Fallback;src:local(Arial);ascent-override:104.26%;descent-override:41.88%;line-gap-override:0.0%;size-adjust:100.51%}.F9NXua_className{font-family:heebo,heebo Fallback,system-ui,Arial,sans-serif}.F9NXua_variable{--font-heebo:"heebo", "heebo Fallback", system-ui, Arial, sans-serif}
@font-face{font-family:roboto;src:url(../media/Roboto_Variable_latin-s.p.113jqrlu1v-_f.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:roboto Fallback;src:local(Arial);ascent-override:92.43%;descent-override:24.32%;line-gap-override:0.0%;size-adjust:100.37%}.eBHJAa_className{font-family:roboto,roboto Fallback,system-ui,Arial,sans-serif}.eBHJAa_variable{--font-roboto:"roboto", "roboto Fallback", system-ui, Arial, sans-serif}
:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink-0:#0b0d10;--ink-1:#11151a;--ink-2:#171c23;--ink-3:#1e242d;--line:#242b35;--line-strong:#333c48;--paper:#f5f7fa;--fog:#a9b2be;--mist:#8a94a1;--blue:#01a8f7;--blue-bright:#33baf9;--yellow:#ffb602;--green:#6ebf00;--orange:#ff4202;--orange-text:#ff6a33;--strand-build:var(--blue);--strand-design:var(--yellow);--strand-grow:var(--green);--strand-solve:var(--orange);--focus:var(--blue-bright);--danger:#ff7a7a;--success:#8fd14f;--font-head:var(--font-heebo), "Heebo Fallback", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;--font-body:var(--font-roboto), "Roboto Fallback", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;--step--2:clamp(.78rem, .77rem + .05vw, .81rem);--step--1:clamp(.875rem, .86rem + .08vw, .9375rem);--step-0:clamp(1.0625rem, 1.04rem + .12vw, 1.125rem);--step-1:clamp(1.25rem, 1.19rem + .28vw, 1.4rem);--step-2:clamp(1.5rem, 1.38rem + .56vw, 1.875rem);--step-3:clamp(1.875rem, 1.62rem + 1.16vw, 2.625rem);--step-4:clamp(2.25rem, 1.83rem + 1.9vw, 3.5rem);--step-5:clamp(2.35rem, 1.7rem + 2.9vw, 4.4rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--section:clamp(4.5rem, 3rem + 6vw, 8.5rem);--max:1240px;--gutter:clamp(1rem, .5rem + 2.5vw, 2.5rem);--measure:66ch;--header-h:72px;--r-xs:4px;--r-sm:8px;--r-md:12px;--r-lg:20px;--ease-out:cubic-bezier(.2, .7, .2, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1)}[data-strand=build]{--strand:var(--strand-build)}[data-strand=design]{--strand:var(--strand-design)}[data-strand=grow]{--strand:var(--strand-grow)}[data-strand=solve]{--strand:var(--strand-solve)}
*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 1rem);background:var(--ink-0)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--ink-0);min-height:100vh;color:var(--paper);font-family:var(--font-body);font-size:var(--step-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-weight:400;line-height:1.65}img,svg,video{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6{font-family:var(--font-head);letter-spacing:-.02em;color:var(--paper);text-wrap:balance;margin:0;font-weight:700;line-height:1.1}h1{font-size:var(--step-5);letter-spacing:-.035em;font-weight:800;line-height:1.02}h2{font-size:var(--step-4);letter-spacing:-.03em;line-height:1.05}h3{font-size:var(--step-2);line-height:1.15}h4{font-size:var(--step-1);letter-spacing:-.01em;font-weight:600}p,ul,ol,dl,blockquote,figure{margin:0}p{text-wrap:pretty}a{color:var(--blue-bright);text-underline-offset:.2em;text-decoration:underline;text-decoration-thickness:1px;transition:color .16s,text-decoration-color .16s}a:hover{color:var(--paper)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:2px}::selection{color:var(--paper);background:#01a8f759}strong{font-weight:600}hr{border:0;border-top:1px solid var(--line);margin:var(--space-7) 0}.skip-link{left:var(--space-4);z-index:1000;padding:var(--space-3) var(--space-5);background:var(--paper);color:var(--ink-0);font-family:var(--font-head);border-radius:var(--r-sm);font-weight:600;text-decoration:none;position:absolute;top:-100px}.skip-link:focus{top:var(--space-4);color:var(--ink-0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wrap{width:100%;max-width:calc(var(--max) + var(--gutter) * 2);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section);position:relative}.section--alt{background:var(--ink-1);border-block:1px solid var(--line)}.section--tight{padding-block:calc(var(--section) * .6)}.section:not(.section--alt)+.section:not(.section--alt){padding-top:0}.section-head{gap:var(--space-5);max-width:46rem;margin-bottom:clamp(2.5rem,1.5rem + 3vw,4.5rem);display:grid}.section-head--split{grid-template-columns:1fr;align-items:end;max-width:none}@media (min-width:960px){.section-head--split{gap:var(--space-8);grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}.lede{font-size:var(--step-1);color:var(--fog);max-width:40em;line-height:1.55}.muted{color:var(--fog)}.prose{max-width:var(--measure)}.prose>*+*{margin-top:1.1em}.prose p,.prose li{color:#d5dbe3}.prose h2{font-size:var(--step-3);margin-top:2.2em}.prose h3{font-size:var(--step-2);margin-top:1.9em}.prose h4{margin-top:1.6em}.prose h2+*,.prose h3+*,.prose h4+*{margin-top:.7em}.prose ul,.prose ol{padding-left:1.3em}.prose li+li{margin-top:.45em}.prose li::marker{color:var(--mist)}.prose blockquote{border-left:2px solid var(--blue);padding-left:var(--space-5);color:var(--paper);font-size:var(--step-1)}.prose table{border-collapse:collapse;width:100%;font-size:var(--step--1)}.prose th,.prose td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.6em .8em}.prose th{font-family:var(--font-head);font-weight:600}.prose code{background:var(--ink-2);border-radius:var(--r-xs);padding:.1em .35em;font-size:.92em}.btn{--btn-bg:var(--blue);--btn-fg:var(--ink-0);--btn-border:var(--blue);min-height:48px;font-family:var(--font-head);letter-spacing:-.005em;color:var(--btn-fg);background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:var(--r-sm);cursor:pointer;transition:background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s var(--ease-out), box-shadow .22s ease;white-space:nowrap;justify-content:center;align-items:center;gap:.6em;padding:.75em 1.35em;font-size:1rem;font-weight:600;line-height:1.1;text-decoration:none;display:inline-flex}.btn:hover{--btn-bg:var(--blue-bright);--btn-border:var(--blue-bright);color:var(--btn-fg)}.btn:active{transform:translateY(1px)}.btn--ghost{--btn-bg:transparent;--btn-fg:var(--paper);--btn-border:var(--line-strong)}.btn--ghost:hover{--btn-bg:var(--ink-2);--btn-border:var(--fog);--btn-fg:var(--paper)}.btn--small{min-height:40px;padding:.55em 1em;font-size:.9375rem}.btn--large{min-height:56px;padding:.9em 1.6em;font-size:1.0625rem}.btn-row{gap:var(--space-3);flex-wrap:wrap;display:flex}.btn .icon{width:1.05em;height:1.05em;transition:transform .22s var(--ease-out);flex:none}.btn:hover .icon{transform:translate(3px)}.btn:not(.btn--ghost):hover{box-shadow:0 10px 28px -12px #01a8f7b3}.btn:focus-visible{outline-offset:4px}@media (max-width:560px){.btn-row>.btn{flex:100%}}.link-arrow{font-family:var(--font-head);color:var(--paper);align-items:center;gap:.45em;font-weight:600;text-decoration:none;display:inline-flex}.link-arrow .icon{width:1em;height:1em;color:var(--blue);transition:transform .2s var(--ease-out)}.link-arrow:hover{color:var(--blue-bright)}.link-arrow:hover .icon{transform:translate(3px)}.strand-tag{font-family:var(--font-head);font-size:var(--step--1);color:var(--fog);letter-spacing:0;align-items:center;gap:.6em;font-weight:600;display:inline-flex}.strand-tag:before{content:"";background:var(--strand,var(--blue));border-radius:2px;width:1.75em;height:3px}.icon{flex:none;display:inline-block}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}main:focus{outline:none}
.site-header{z-index:100;height:var(--header-h);-webkit-backdrop-filter:saturate(140%)blur(14px);backdrop-filter:saturate(140%)blur(14px);background:#0b0d10d1;border-bottom:1px solid #0000;transition:border-color .24s,background-color .24s;position:sticky;top:0}.site-header[data-scrolled=true],.site-header[data-open=true]{border-bottom-color:var(--line);background:#0b0d10f0}.site-header__bar{align-items:center;gap:var(--space-5);height:100%;display:flex}.site-header__logo{padding-block:var(--space-2);border-radius:var(--r-xs);align-items:center;margin-right:auto;display:inline-flex}.site-header__logo img{width:auto;height:34px}.nav{display:none}@media (min-width:1080px){.nav{align-items:center;gap:var(--space-1);height:100%;display:flex}}.nav__list{align-items:center;gap:var(--space-1);height:100%;margin:0;padding:0;list-style:none;display:flex}.nav__item{align-items:center;height:100%;display:flex}.nav__link,.nav__trigger{height:40px;font-family:var(--font-head);color:var(--fog);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:0;align-items:center;gap:.35em;padding:0 .85rem;font-size:.975rem;font-weight:500;text-decoration:none;transition:color .16s,background-color .16s;display:inline-flex}.nav__link:hover,.nav__trigger:hover,.nav__trigger[aria-expanded=true],.nav__link[aria-current=page]{color:var(--paper)}.nav__link[aria-current=page]{background:var(--ink-2)}.nav__link{position:relative}.nav__link:after{content:"";background:var(--blue);transform-origin:0;height:1.5px;transition:transform .24s var(--ease-out);position:absolute;bottom:7px;left:.85rem;right:.85rem;transform:scaleX(0)}.nav__link:hover:not([aria-current=page]):after{transform:scaleX(1)}.nav__trigger .icon{width:14px;height:14px;transition:transform .2s var(--ease-out)}.nav__trigger[aria-expanded=true] .icon{transform:rotate(180deg)}.site-header__cta{display:none}@media (min-width:1080px){.site-header__cta{margin-left:var(--space-3);display:inline-flex}}.mega{background:var(--ink-1);border-bottom:1px solid var(--line);opacity:0;visibility:hidden;transition:opacity .18s ease, transform .22s var(--ease-out), visibility 0s linear .22s;position:absolute;top:100%;left:0;right:0;transform:translateY(-6px);box-shadow:0 40px 80px -20px #0009}.mega[data-open=true]{opacity:1;visibility:visible;transition:opacity .18s ease, transform .22s var(--ease-out), visibility 0s;transform:none}.mega__inner{gap:var(--space-6);padding-block:var(--space-7);grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.1fr);display:grid}.mega__group-name{font-family:var(--font-head);letter-spacing:-.01em;margin-bottom:var(--space-2);font-size:1.0625rem;font-weight:700}.mega__group .strand-tag{margin-bottom:var(--space-4)}.mega__group ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.mega__link{border-radius:var(--r-sm);color:var(--paper);margin-inline:-.75rem;padding:.6rem .75rem;text-decoration:none;transition:background-color .16s;display:block}.mega__link:hover{background:var(--ink-2);color:var(--paper)}.mega__link strong{font-family:var(--font-head);font-size:.975rem;font-weight:600;line-height:1.3;display:block}.mega__link span{color:var(--mist);margin-top:2px;font-size:.875rem;line-height:1.4;display:block}.mega__link .badge{color:var(--green);margin-left:.4em;font-size:.72rem;font-weight:600;display:inline-block}.mega__aside{border-left:1px solid var(--line);padding-left:var(--space-6);align-content:start;gap:var(--space-4);display:grid}.mega__aside p{color:var(--fog);font-size:.95rem}.menu-toggle{width:48px;height:48px;margin-right:calc(var(--space-2) * -1);border-radius:var(--r-sm);color:var(--paper);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}@media (min-width:1080px){.menu-toggle{display:none}}.menu-toggle__bars{width:22px;height:14px;position:relative}.menu-toggle__bars span{height:2px;transition:transform .22s var(--ease-out), opacity .16s ease, top .22s var(--ease-out);background:currentColor;border-radius:2px;position:absolute;left:0;right:0}.menu-toggle__bars span:first-child{top:0}.menu-toggle__bars span:nth-child(2){top:6px}.menu-toggle__bars span:nth-child(3){top:12px}.menu-toggle[aria-expanded=true] .menu-toggle__bars span:first-child{top:6px;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-toggle__bars span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] .menu-toggle__bars span:nth-child(3){top:6px;transform:rotate(-45deg)}.mobile-nav{inset:var(--header-h) 0 0 0;z-index:99;visibility:hidden;transition:visibility 0s linear .32s;position:fixed}.mobile-nav[data-open=true]{visibility:visible;transition:visibility}.mobile-nav__backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;background:#05060899;transition:opacity .26s;position:absolute;inset:0}.mobile-nav__panel{background:var(--ink-0);border-left:1px solid var(--line);overscroll-behavior:contain;width:min(420px,88vw);padding:var(--space-5) var(--gutter) var(--space-8);transition:transform .32s var(--ease-out);position:absolute;top:0;bottom:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-30px 0 60px -20px #000000b3}.mobile-nav[data-open=true] .mobile-nav__backdrop{opacity:1}.mobile-nav[data-open=true] .mobile-nav__panel{transform:none}@media (prefers-reduced-motion:reduce){.mobile-nav,.mobile-nav__backdrop,.mobile-nav__panel{transition:none}}@media (min-width:1080px){.mobile-nav{display:none}}.mobile-nav ul{margin:0;padding:0;list-style:none}.mobile-nav__primary>li{border-bottom:1px solid var(--line)}.mobile-nav__primary>li>a,.mobile-nav__primary>li>button{width:100%;min-height:60px;font-family:var(--font-head);color:var(--paper);cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;padding:0;font-size:1.375rem;font-weight:600;text-decoration:none;display:flex}.mobile-nav__primary>li>button .icon{width:18px;height:18px;transition:transform .2s var(--ease-out)}.mobile-nav__primary>li>button[aria-expanded=true] .icon{transform:rotate(180deg)}.mobile-nav__services{gap:var(--space-5);padding-bottom:var(--space-5);display:grid}.mobile-nav__services[hidden]{display:none}.mobile-nav__services .strand-tag{margin-bottom:var(--space-2)}.mobile-nav__services a{color:var(--paper);padding:.55rem 0;font-size:1.0625rem;text-decoration:none;display:block}.mobile-nav__footer{gap:var(--space-4);margin-top:var(--space-6);display:grid}.mobile-nav__footer .btn{width:100%}.mobile-nav__contact{gap:var(--space-2);color:var(--fog);display:grid}.mobile-nav__contact a{color:var(--paper);text-decoration:none}body[data-menu-open=true]{overflow:hidden}@media (max-width:640px){:root{--header-h:64px}.site-header__logo img{height:30px}}
.hero{isolation:isolate;padding-top:clamp(2.5rem,1rem + 5vw,5.5rem);padding-bottom:clamp(2.5rem,1.5rem + 3vw,4rem);position:relative;overflow:hidden}.hero:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side,#01a8f729,#01a8f70a 55%,#0000 72%);width:70rem;height:70rem;position:absolute;top:-26rem;right:-24rem}.hero__grid{gap:var(--space-7);align-items:center;display:grid}@media (min-width:1024px){.hero__grid{gap:var(--space-6);min-height:min(640px, calc(100svh - var(--header-h) - 9rem));grid-template-columns:minmax(0,6.2fr) minmax(0,5.8fr)}}.hero__copy{gap:var(--space-6);max-width:40rem;display:grid}.hero h1{max-width:13ch}.hero__lead{font-size:var(--step-1);color:var(--fog);max-width:34em;line-height:1.55}.hero__visual{margin-inline:calc(var(--gutter) * -.5);position:relative}@media (min-width:1024px){.hero__visual{margin-inline:0 calc(var(--gutter) * -1)}}.clients{padding-top:var(--space-5);border-top:1px solid var(--line);align-items:baseline;column-gap:var(--space-6);row-gap:var(--space-3);flex-wrap:wrap;margin-top:clamp(2.5rem,1rem + 4vw,4.5rem);display:flex}.clients__label{font-size:var(--step--1);color:var(--mist)}.clients ul{column-gap:var(--space-6);row-gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.clients li{font-family:var(--font-head);letter-spacing:-.01em;color:#c8d0da;font-size:1.0625rem;font-weight:600}.sysmap{width:100%;height:auto;font-family:var(--font-head);overflow:visible}.sysmap__orbit{fill:none;stroke:var(--line);stroke-width:1px}.sysmap__arc{fill:none;stroke:var(--strand);stroke-width:4px;stroke-linecap:round;transition:opacity .24s}.sysmap__spoke{stroke:var(--line-strong);stroke-width:1px;stroke-dasharray:2 6;transition:stroke .24s}.sysmap__core-ring{fill:var(--ink-1);stroke:var(--line-strong);stroke-width:1px}.sysmap__core-text{fill:var(--paper);letter-spacing:-.01em;font-size:17px;font-weight:700}.sysmap__node{cursor:pointer;outline:none;transition:opacity .24s}.sysmap__dot{fill:var(--ink-0);stroke:var(--strand);stroke-width:3px;transition:fill .2s ease, r .2s var(--ease-out)}.sysmap__hit{fill:#0000;stroke:#0000;stroke-width:2px}.sysmap__label{fill:#d7dde5;letter-spacing:-.01em;paint-order:stroke;stroke:var(--ink-0);stroke-width:8px;stroke-linejoin:round;font-size:19px;font-weight:600;transition:fill .2s}.sysmap__node:is(:hover,:focus-visible) .sysmap__dot{fill:var(--strand);r:9px}.sysmap__node:is(:hover,:focus-visible) .sysmap__label{fill:var(--paper);text-decoration:underline;text-decoration-thickness:1.5px}.sysmap__node:focus-visible .sysmap__hit{stroke:var(--focus)}.sysmap__node:is(:hover,:focus-visible) .sysmap__spoke{stroke:var(--strand);stroke-dasharray:5 5}.sysmap:has(.sysmap__node:is(:hover,:focus-visible)) :is(.sysmap__arc,.sysmap__node){opacity:.3}:is(.sysmap:has(.sysmap__node[data-strand=build]:is(:hover,:focus-visible)) [data-strand=build],.sysmap:has(.sysmap__node[data-strand=design]:is(:hover,:focus-visible)) [data-strand=design],.sysmap:has(.sysmap__node[data-strand=grow]:is(:hover,:focus-visible)) [data-strand=grow],.sysmap:has(.sysmap__node[data-strand=solve]:is(:hover,:focus-visible)) [data-strand=solve]){opacity:1}@media (prefers-reduced-motion:no-preference){.sysmap__arc{stroke-dasharray:1;stroke-dashoffset:1px;animation:sysmap-draw 1.3s var(--ease-in-out) forwards;animation-delay:calc(var(--i,0) * .15s + .15s)}.sysmap__node{animation:.6s both sysmap-fade;animation-delay:calc(var(--i,0) * 55ms + .95s)}.sysmap__core{animation:.7s .1s both sysmap-fade}.sysmap__node:is(:hover,:focus-visible) .sysmap__spoke{animation:.7s linear infinite sysmap-march}}@keyframes sysmap-draw{to{stroke-dashoffset:0}}@keyframes sysmap-fade{0%{opacity:0}}@keyframes sysmap-march{to{stroke-dashoffset:-10px}}.sysmap-legend ul{justify-content:center;gap:var(--space-2) var(--space-7);margin:var(--space-4) 0 0;grid-template-columns:repeat(2,max-content);padding:0;list-style:none;display:grid}.sysmap-legend .strand-tag{color:var(--paper)}.sysmap-legend__family{color:var(--mist);font-weight:400}@media (max-width:720px){.sysmap__label{display:none}}.switchboard{border-top:1px solid var(--line)}.switchboard__row{gap:var(--space-5);border-bottom:1px solid var(--line);padding-block:clamp(1.75rem,1rem + 2vw,2.75rem);display:grid;position:relative}@media (min-width:900px){.switchboard__row{gap:var(--space-7);grid-template-columns:minmax(0,4fr) minmax(0,8fr)}}.switchboard__row:before{content:"";background:var(--strand);width:0;height:2px;transition:width .5s var(--ease-out);position:absolute;top:-1px;left:0}.switchboard__row:hover:before,.switchboard__row:focus-within:before{width:100%}.switchboard__name{gap:var(--space-3);align-content:start;display:grid}.switchboard__name h3{font-size:var(--step-3);letter-spacing:-.03em;align-items:baseline;gap:.4em;font-weight:800;display:flex}.switchboard__name h3:before{content:"";border:3px solid var(--strand);border-radius:50%;flex:none;width:.42em;height:.42em;display:inline-block;transform:translateY(-.04em)}.switchboard__name p{color:var(--fog);max-width:26em}.switchboard__list{gap:0;margin:0;padding:0;list-style:none;display:grid}@media (min-width:640px){.switchboard__list{column-gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr))}}.switchboard__link{align-content:start;align-items:start;gap:var(--space-1) var(--space-4);padding:var(--space-4) 0;border-top:1px solid var(--line);color:var(--paper);grid-template-columns:1fr auto;height:100%;text-decoration:none;display:grid}@media (min-width:640px){.switchboard__list li:nth-child(-n+2) .switchboard__link{border-top:0;padding-top:0}}.switchboard__list li:first-child .switchboard__link{border-top:0;padding-top:0}.switchboard__link strong{font-family:var(--font-head);letter-spacing:-.01em;font-size:1.1875rem;font-weight:600;line-height:1.3}.switchboard__link span{color:var(--mist);grid-column:1;font-size:.975rem;line-height:1.5}.switchboard__link .icon{width:18px;height:18px;color:var(--strand);transition:transform .22s var(--ease-out);grid-area:1/2;margin-top:.3em}.switchboard__link:hover strong{color:var(--paper);text-decoration:underline;-webkit-text-decoration-color:var(--strand);text-decoration-color:var(--strand);text-underline-offset:.25em;text-decoration-thickness:2px}.switchboard__link:hover .icon{transform:translate(4px)}.badge-new{font-family:var(--font-head);color:var(--green);vertical-align:.15em;margin-left:.5em;font-size:.75rem;font-weight:600}.frame{border-radius:var(--r-md);background:var(--ink-2);border:1px solid var(--line);position:relative;overflow:hidden}.frame__bar{align-items:center;gap:var(--space-3);height:34px;padding:0 var(--space-4);border-bottom:1px solid var(--line);background:#141920;display:flex}.frame__lights{gap:6px;display:flex}.frame__lights span{background:var(--line-strong);border-radius:50%;width:9px;height:9px}.frame__url{background:var(--ink-0);max-width:22rem;color:var(--mist);text-align:center;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;flex:1;margin-inline:auto;padding:3px 12px;font-size:.75rem;line-height:1.4;overflow:hidden}.frame__media{aspect-ratio:16/9;position:relative;overflow:hidden}.frame__media img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .7s var(--ease-out)}.tile{aspect-ratio:16/9;justify-content:flex-end;gap:var(--space-2);background:radial-gradient(120% 120% at 100% 0%, color-mix(in srgb, var(--strand) 14%, transparent), transparent 55%), var(--ink-2);flex-direction:column;padding:clamp(1.25rem,.8rem + 2vw,2.25rem);display:flex;position:relative;overflow:hidden}.tile:after{content:"";z-index:0;border:2px solid color-mix(in srgb, var(--strand) 55%, transparent);width:26rem;height:26rem;box-shadow:0 0 0 22px var(--ink-2), 0 0 0 24px color-mix(in srgb, var(--strand) 30%, transparent), 0 0 0 46px var(--ink-2), 0 0 0 48px color-mix(in srgb, var(--strand) 16%, transparent);opacity:.9;border-radius:50%;position:absolute;top:-16rem;right:-15rem}@media (max-width:640px){.tile:after{top:-19rem;right:-19rem}}.tile__name{z-index:1;font-family:var(--font-head);letter-spacing:-.03em;color:var(--paper);max-width:14ch;font-size:clamp(1.6rem,1.2rem + 1.6vw,2.5rem);font-weight:800;line-height:1.05;position:relative}.tile__kind{z-index:1;color:var(--fog);font-size:var(--step--1);position:relative}.project{gap:var(--space-5);align-content:start;display:grid}.project__meta{gap:var(--space-3);display:grid}.project__services{color:var(--mist);font-size:var(--step--1)}.project__title{font-size:var(--step-2)}.project__summary{color:var(--fog)}.project__detail{color:var(--mist);font-size:.975rem}.project__media-link{border-radius:var(--r-md);text-decoration:none;display:block}.project__media-link:hover .frame__media img{transform:scale(1.02)}.project--lead{gap:var(--space-6)}@media (min-width:960px){.project--lead{align-items:center;gap:var(--space-8);grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.project--lead .project__title{font-size:var(--step-3)}}.projects-pair{gap:var(--space-8);margin-top:clamp(3rem,2rem + 4vw,6rem);display:grid}@media (min-width:860px){.projects-pair{gap:var(--space-7);grid-template-columns:repeat(2,minmax(0,1fr))}}.projects-grid{gap:var(--space-8) var(--space-7);display:grid}@media (min-width:760px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1180px){.projects-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}}.section-foot{gap:var(--space-5);flex-wrap:wrap;align-items:center;margin-top:clamp(2.5rem,1.5rem + 3vw,4rem);display:flex}.process{counter-reset:step;gap:0;margin:0;padding:0;list-style:none;display:grid}.process__step{counter-increment:step;gap:var(--space-2) var(--space-4);padding-bottom:var(--space-6);grid-template-columns:3rem 1fr;display:grid;position:relative}.process__step:before{content:counter(step, decimal-leading-zero);border:1px solid var(--line-strong);background:var(--ink-0);width:3rem;height:3rem;font-family:var(--font-head);color:var(--paper);z-index:1;border-radius:50%;grid-row:1/span 2;place-items:center;font-size:.95rem;font-weight:600;display:grid;position:relative}.process__step:after{content:"";background:var(--line-strong);width:1px;position:absolute;top:3rem;bottom:0;left:1.5rem}.process__step:last-child{padding-bottom:0}.process__step:last-child:after{display:none}.process__step h3{font-size:var(--step-1);align-self:center}.process__step p{color:var(--fog);grid-column:2;max-width:36em}.section--alt .process__step:before{background:var(--ink-1)}@media (min-width:1100px){.process--row{grid-template-columns:repeat(var(--steps,6), minmax(0, 1fr));gap:var(--space-5)}.process--row .process__step{grid-template-rows:auto auto 1fr;grid-template-columns:1fr;align-content:start;padding-bottom:0}.process--row .process__step:before{margin-bottom:var(--space-4);grid-row:auto}.process--row .process__step:after{left:3rem;right:calc(var(--space-5) * -1);width:auto;height:1px;top:1.5rem;bottom:auto}.process--row .process__step h3{align-self:start}.process--row .process__step p{grid-column:1;font-size:.975rem}}.principles{gap:var(--space-7);display:grid}@media (min-width:900px){.principles{gap:var(--space-8) var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr))}}.principle{gap:var(--space-4);padding-top:var(--space-5);border-top:1px solid var(--line-strong);align-content:start;display:grid}.principle h3{font-size:var(--step-2)}.principle p{color:var(--fog)}.principle blockquote{margin-top:var(--space-2);padding-left:var(--space-4);border-left:2px solid var(--yellow);color:#d5dbe3;font-size:.975rem}.principle blockquote cite{margin-top:var(--space-2);color:var(--mist);font-size:.875rem;font-style:normal;display:block}.reviews{columns:1;column-gap:var(--space-5)}@media (min-width:720px){.reviews{columns:2}}@media (min-width:1100px){.reviews{columns:3}}.review{break-inside:avoid;gap:var(--space-4);margin:0 0 var(--space-5);padding:var(--space-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--ink-1);display:grid}.section--alt .review{background:var(--ink-0)}.review blockquote{color:var(--paper);font-size:1.0625rem;line-height:1.6}.review footer{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);flex-wrap:wrap;font-size:.875rem;display:flex}.review__name{font-family:var(--font-head);color:var(--paper);font-size:1rem;font-weight:600}.review__name span{font-family:var(--font-body);color:var(--mist);font-size:.875rem;font-weight:400;display:block}.stars{color:var(--yellow);align-items:center;gap:2px;display:inline-flex}.stars svg{width:14px;height:14px}.review__source{align-items:center;gap:var(--space-2);color:var(--mist);display:flex}.quote-feature{gap:var(--space-5);max-width:54rem;display:grid}.quote-feature blockquote{font-family:var(--font-head);font-size:var(--step-2);letter-spacing:-.015em;color:var(--paper);text-wrap:pretty;font-weight:500;line-height:1.35}.quote-feature blockquote:before{content:"“";height:2.2rem;color:var(--strand,var(--yellow));font-size:4rem;line-height:.6;display:block}.quote-feature figcaption{align-items:center;gap:var(--space-3) var(--space-5);color:var(--fog);flex-wrap:wrap;display:flex}.quote-feature figcaption strong{font-family:var(--font-head);color:var(--paper)}.post-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.post-row{border-bottom:1px solid var(--line)}.post-row a{gap:var(--space-2) var(--space-6);padding:var(--space-5) 0;color:var(--paper);text-decoration:none;display:grid}@media (min-width:860px){.post-row a{grid-template-columns:11rem minmax(0,1fr) auto;align-items:baseline}}.post-row time{color:var(--mist);font-size:var(--step--1)}.post-row h3{font-size:var(--step-1);letter-spacing:-.01em;font-weight:600;line-height:1.3}.post-row p{color:var(--fog);max-width:48em;margin-top:var(--space-2);grid-column:2;font-size:.975rem}.post-row .icon{width:18px;height:18px;color:var(--blue);transition:transform .22s var(--ease-out)}@media (max-width:859px){.post-row p{grid-column:auto}.post-row .icon{display:none}}.post-row a:hover h3{text-decoration:underline;-webkit-text-decoration-color:var(--blue);text-decoration-color:var(--blue);text-underline-offset:.2em}.post-row a:hover .icon{transform:translate(4px)}.post-row__read{color:var(--mist);font-size:var(--step--1);white-space:nowrap}.cta-band{border-radius:var(--r-lg);border:1px solid var(--line);background:radial-gradient(60rem 30rem at 100% 0%, #01a8f724, transparent 60%), var(--ink-1);gap:var(--space-7);isolation:isolate;padding:clamp(2rem,1rem + 5vw,5rem);display:grid;position:relative;overflow:hidden}@media (min-width:960px){.cta-band{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end}}.cta-band__rings{z-index:-1;opacity:.8;pointer-events:none;width:34rem;height:34rem;position:absolute;top:-10rem;right:-8rem}@media (max-width:959px){.cta-band__rings{display:none}}.cta-band h2{font-size:var(--step-4);max-width:14ch}.cta-band p{color:var(--fog);margin-top:var(--space-5);max-width:34em;font-size:var(--step-1);line-height:1.5}.cta-band__actions{gap:var(--space-5);justify-items:start;display:grid}.contact-lines{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.contact-lines a,.contact-lines span{color:var(--paper);font-family:var(--font-head);align-items:center;gap:.7em;font-size:1.0625rem;font-weight:500;text-decoration:none;display:inline-flex}.contact-lines a:hover{color:var(--blue-bright)}.contact-lines .icon{width:18px;height:18px;color:var(--blue)}.page-head{isolation:isolate;border-bottom:1px solid var(--line);padding-top:clamp(2rem,1rem + 4vw,4.5rem);padding-bottom:clamp(3rem,2rem + 4vw,5.5rem);position:relative;overflow:hidden}.page-head:before{content:"";z-index:-1;background:radial-gradient(closest-side, color-mix(in srgb, var(--strand,var(--blue)) 16%, transparent), transparent 70%);pointer-events:none;width:56rem;height:56rem;position:absolute;top:-30rem;right:-20rem}.page-head__inner{gap:var(--space-5);max-width:56rem;display:grid}.page-head h1{font-size:var(--step-5);max-width:20ch}.page-head--compact h1{font-size:var(--step-4)}.page-head .lede{font-size:var(--step-1)}.page-head .btn-row{margin-top:var(--space-3)}.breadcrumbs ol{font-size:var(--step--1);color:var(--mist);flex-wrap:wrap;gap:.35em;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li{align-items:center;gap:.35em;display:inline-flex}.breadcrumbs li+li:before{content:"/";color:var(--line-strong)}.breadcrumbs a{color:var(--fog);text-decoration:none}.breadcrumbs a:hover{color:var(--paper);text-decoration:underline}.svc-block{gap:var(--space-6);display:grid}@media (min-width:960px){.svc-block--split{gap:var(--space-8);grid-template-columns:minmax(0,4fr) minmax(0,8fr)}.svc-block--split>.svc-block__head{top:calc(var(--header-h) + 2rem);align-self:start;position:sticky}}.svc-block__head{gap:var(--space-4);display:grid}.svc-block__head h2{font-size:var(--step-3)}.svc-block__head p{color:var(--fog)}.problems{gap:var(--space-5);margin:0;padding:0;list-style:none;display:grid}@media (min-width:720px){.problems{grid-template-columns:repeat(2,minmax(0,1fr))}}.problems li{gap:var(--space-3);padding:var(--space-6);border-radius:var(--r-md);border:1px solid var(--line);background:var(--ink-1);align-content:start;display:grid}.problems h3{font-size:var(--step-1);gap:var(--space-3);display:grid}.problems h3:before{content:"";background:var(--strand);border-radius:2px;width:1.5rem;height:3px}.problems p{color:var(--fog)}.deliverables{border-top:1px solid var(--line);margin:0;padding:0;list-style:none;display:grid}@media (min-width:760px){.deliverables{column-gap:var(--space-7);grid-template-columns:repeat(2,minmax(0,1fr))}}.deliverables li{gap:var(--space-2);padding-block:var(--space-5);border-bottom:1px solid var(--line);display:grid}.deliverables h3{letter-spacing:-.01em;font-size:1.1875rem;font-weight:600}.deliverables p{color:var(--fog);font-size:.995rem}.compare{gap:var(--space-5);display:grid}@media (min-width:760px){.compare{grid-template-columns:repeat(2,minmax(0,1fr))}}.compare__col{padding:var(--space-6);border-radius:var(--r-md);border:1px solid var(--line)}.compare__col--custom{border-color:color-mix(in srgb, var(--strand) 45%, var(--line));background:color-mix(in srgb, var(--strand) 6%, var(--ink-0))}.compare__col h3{font-size:var(--step-1);margin-bottom:var(--space-4)}.compare__col ul{gap:var(--space-2);color:var(--fog);margin:0;padding-left:1.2em;display:grid}.stack{gap:var(--space-5);display:grid}@media (min-width:760px){.stack{grid-template-columns:repeat(3,minmax(0,1fr))}}.stack h3{color:var(--fog);margin-bottom:var(--space-3);font-size:1rem;font-weight:600}.stack ul{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.stack li{border:1px solid var(--line-strong);color:var(--paper);border-radius:999px;padding:.35em .8em;font-size:.9375rem}.callout{gap:var(--space-5);border-radius:var(--r-lg);border:1px solid color-mix(in srgb, var(--strand) 50%, var(--line));background:radial-gradient(40rem 20rem at 0% 0%, color-mix(in srgb, var(--strand) 12%, transparent), transparent 70%), var(--ink-1);padding:clamp(1.75rem,1rem + 3vw,3rem);display:grid}@media (min-width:900px){.callout{align-items:center;gap:var(--space-7);grid-template-columns:minmax(0,1fr) auto}}.callout h2{font-size:var(--step-3)}.callout p{color:var(--fog);margin-top:var(--space-4);max-width:44em}.faq{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line)}.faq summary{justify-content:space-between;align-items:center;gap:var(--space-5);padding:var(--space-5) 0;cursor:pointer;font-family:var(--font-head);font-weight:600;font-size:var(--step-1);letter-spacing:-.01em;line-height:1.3;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary .icon{width:20px;height:20px;color:var(--blue);transition:transform .22s var(--ease-out)}.faq details[open] summary .icon{transform:rotate(45deg)}.faq summary:hover{color:var(--blue-bright)}.faq__answer{padding-bottom:var(--space-6);color:var(--fog);max-width:48em}.related{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}@media (min-width:760px){.related{grid-template-columns:repeat(3,minmax(0,1fr))}}.related a{gap:var(--space-3);height:100%;padding:var(--space-5) var(--space-5) var(--space-6);border:1px solid var(--line);border-radius:var(--r-md);color:var(--paper);text-decoration:none;transition:border-color .2s,background-color .2s;display:grid}.related a:hover{border-color:color-mix(in srgb, var(--strand) 60%, var(--line));background:var(--ink-1)}.related strong{font-family:var(--font-head);font-size:var(--step-1);letter-spacing:-.01em;font-weight:600}.related span:not(.strand-tag){color:var(--fog);font-size:.975rem}.split{gap:var(--space-7);display:grid}@media (min-width:960px){.split{gap:var(--space-8);grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.split--even{grid-template-columns:repeat(2,minmax(0,1fr))}.split--wide-right{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}}.values{border-top:1px solid var(--line);gap:0;margin:0;padding:0;list-style:none;display:grid}.values li{gap:var(--space-2);padding-block:var(--space-5);border-bottom:1px solid var(--line);display:grid}@media (min-width:760px){.values li{gap:var(--space-6);grid-template-columns:14rem minmax(0,1fr)}}.values h3{font-size:var(--step-1)}.values p{color:var(--fog)}.statement{font-family:var(--font-head);font-size:var(--step-3);letter-spacing:-.02em;color:var(--paper);max-width:24ch;font-weight:600;line-height:1.2}.people{gap:var(--space-7);display:grid}@media (min-width:760px){.people{grid-template-columns:repeat(2,minmax(0,1fr))}}.person{gap:var(--space-5);align-content:start;display:grid}.person__photo{border-radius:var(--r-lg);background:var(--ink-2);aspect-ratio:1;border:1px solid var(--line);overflow:hidden}.person__photo img{object-fit:cover;object-position:top center;width:100%;height:100%}.person h2,.person h3{font-size:var(--step-2)}.person__role{color:var(--fog);font-family:var(--font-head);margin-top:var(--space-2);font-weight:500}.person p:not(.person__role){color:var(--fog)}.contact-card{gap:var(--space-6);align-content:start;display:grid}.contact-card h2{font-size:var(--step-2)}.next-steps{counter-reset:next;gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.next-steps li{counter-increment:next;gap:var(--space-3);color:var(--fog);grid-template-columns:2rem 1fr;display:grid}.next-steps li:before{content:counter(next);border:1px solid var(--line-strong);width:2rem;height:2rem;font-family:var(--font-head);color:var(--paper);border-radius:50%;place-items:center;font-size:.875rem;font-weight:600;display:grid}.form-panel{border-radius:var(--r-lg);border:1px solid var(--line);background:var(--ink-1);padding:clamp(1.5rem,1rem + 2.5vw,3rem)}.form,.form__row{gap:var(--space-5);display:grid}@media (min-width:640px){.form__row--2{grid-template-columns:repeat(2,minmax(0,1fr))}}.field{gap:var(--space-2);align-content:start;display:grid}.field label,.field legend{font-family:var(--font-head);color:var(--paper);padding:0;font-size:.975rem;font-weight:600}.field__optional{font-family:var(--font-body);color:var(--mist);margin-left:.35em;font-size:.875rem;font-weight:400}.field__hint{color:var(--mist);font-size:.875rem}.field input,.field select,.field textarea{width:100%;min-height:48px;font:inherit;color:var(--paper);background:var(--ink-0);border:1px solid var(--line-strong);border-radius:var(--r-sm);appearance:none;padding:.7rem .9rem;font-size:1rem;transition:border-color .16s,box-shadow .16s}.field textarea{resize:vertical;min-height:9.5rem;line-height:1.55}.field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' stroke='%23a9b2be' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .9rem center;background-repeat:no-repeat;padding-right:2.5rem}.field input::placeholder,.field textarea::placeholder{color:#6f7a87}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--mist)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 3px #01a8f747}.field [aria-invalid=true]{border-color:var(--danger)}.field__error{color:var(--danger);align-items:center;gap:.4em;font-size:.9rem;display:flex}.chips{gap:var(--space-2);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.chips legend{margin-bottom:var(--space-3);font-family:var(--font-head);color:var(--paper);padding:0;font-size:.975rem;font-weight:600}.chip{position:relative}.chip input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute}.chip span{border:1px solid var(--line-strong);min-height:40px;color:var(--fog);border-radius:999px;align-items:center;padding:.45em .95em;font-size:.9375rem;transition:border-color .16s,color .16s,background-color .16s;display:inline-flex}.chip input:hover+span{border-color:var(--mist);color:var(--paper)}.chip input:checked+span{border-color:var(--blue);color:var(--paper);background:#01a8f71f}.chip input:focus-visible+span{outline:2px solid var(--focus);outline-offset:2px}.hp-field{width:1px;height:1px;overflow:hidden;position:absolute!important;left:-10000px!important}.form__footer{gap:var(--space-4);align-items:center;display:grid}@media (min-width:640px){.form__footer{grid-template-columns:auto 1fr}}.form__legal{color:var(--mist);font-size:.875rem}.form__status{padding:var(--space-4) var(--space-5);border-radius:var(--r-sm);border:1px solid var(--line-strong);font-size:.975rem}.form__status--error{border-color:color-mix(in srgb, var(--danger) 60%, transparent);background:color-mix(in srgb, var(--danger) 8%, transparent)}.form__status--success{border-color:color-mix(in srgb, var(--success) 60%, transparent);background:color-mix(in srgb, var(--success) 8%, transparent)}.form-success{gap:var(--space-4);justify-items:start;display:grid}.form-success h2{font-size:var(--step-3)}.form-success p{color:var(--fog)}.article-head .page-head__inner{max-width:50rem}.article-head h1{font-size:var(--step-4);max-width:22ch}.article-meta{gap:var(--space-2) var(--space-5);color:var(--mist);font-size:var(--step--1);flex-wrap:wrap;display:flex}.article-meta strong{color:var(--fog);font-weight:500}.article-layout{gap:var(--space-8);display:grid}@media (min-width:1100px){.article-layout{gap:var(--space-9);grid-template-columns:minmax(0,1fr) 18rem}}.article-body{font-size:1.125rem}.article-aside{gap:var(--space-5);align-content:start;display:grid}@media (min-width:1100px){.article-aside{top:calc(var(--header-h) + 2rem);align-self:start;position:sticky}}.aside-card{padding:var(--space-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--ink-1);gap:var(--space-4);display:grid}.aside-card h2{font-size:1.25rem}.aside-card p{color:var(--fog);font-size:.975rem}.pagination{justify-content:space-between;gap:var(--space-4);margin-top:var(--space-7);display:flex}.site-footer{border-top:1px solid var(--line);background:var(--ink-0);padding-top:clamp(3rem,2rem + 4vw,5.5rem);padding-bottom:var(--space-6);margin-top:0}.footer-grid{gap:var(--space-7);display:grid}@media (min-width:900px){.footer-grid{gap:var(--space-6);grid-template-columns:minmax(0,4fr) repeat(3,minmax(0,2.4fr))}}.footer-brand{gap:var(--space-5);align-content:start;display:grid}.footer-brand img{width:auto;height:36px}.footer-brand p{color:var(--fog);max-width:26em;font-size:.975rem}.footer-col h2{color:var(--paper);letter-spacing:0;margin-bottom:var(--space-4);font-size:.9375rem;font-weight:600}.footer-col ul{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.footer-col a{color:var(--fog);font-size:.95rem;text-decoration:none}.footer-col a:hover{color:var(--paper);text-decoration:underline}.footer-col .strand-tag{margin-top:var(--space-3);font-size:.8125rem}.footer-col .strand-tag:first-child{margin-top:0}.social{gap:var(--space-2);margin:0;padding:0;list-style:none;display:flex}.social a{border-radius:var(--r-sm);border:1px solid var(--line);width:44px;height:44px;color:var(--fog);place-items:center;transition:color .16s,border-color .16s;display:grid}.social a:hover{color:var(--paper);border-color:var(--mist)}.social svg{width:18px;height:18px}.footer-bottom{padding-top:var(--space-5);border-top:1px solid var(--line);gap:var(--space-3) var(--space-6);color:var(--mist);flex-wrap:wrap;justify-content:space-between;margin-top:clamp(3rem,2rem + 3vw,4.5rem);font-size:.875rem;display:flex}.footer-bottom ul{gap:var(--space-5);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.footer-bottom a{color:var(--mist)}.footer-bottom a:hover{color:var(--paper)}.notfound{align-content:center;gap:var(--space-6);min-height:60vh;padding-block:var(--section);display:grid}.notfound h1{font-size:var(--step-5);max-width:14ch}@media print{.site-header,.site-footer,.cta-band,.hero__visual{display:none!important}body{color:#000;background:#fff}}@media (min-width:900px){.principles--compact{gap:var(--space-6);grid-template-columns:repeat(4,minmax(0,1fr))}}.principles--compact .principle{gap:var(--space-3)}.principles--compact .principle h3{font-size:var(--step-1)}.principles--compact .principle p{font-size:var(--step--1)}.clients__marquee{flex:1;min-width:0}.clients__copy{display:none!important}@media (prefers-reduced-motion:no-preference){.hero h1{animation:m-rise .9s var(--ease-out) both}.hero__lead{animation:m-fade-rise .9s var(--ease-out) .12s both}.hero .btn-row{animation:m-fade-rise .9s var(--ease-out) .24s both}.clients{animation:m-fade-rise .9s var(--ease-out) .45s both}.page-head__inner>*{animation:m-fade-rise .8s var(--ease-out) both}.page-head__inner>h1{animation-name:m-rise}.page-head__inner>:nth-child(2){animation-delay:60ms}.page-head__inner>:nth-child(3){animation-delay:.12s}.page-head__inner>:nth-child(4){animation-delay:.18s}.page-head__inner>:nth-child(5){animation-delay:.24s}.clients__marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.clients__track{width:max-content;animation:38s linear infinite m-marquee;display:flex}.clients__track ul{padding-right:var(--space-6);flex-wrap:nowrap}.clients__copy{display:flex!important}.clients__track li{white-space:nowrap}.clients__marquee:hover .clients__track{animation-play-state:paused}.sysmap__core-ring{transform-box:fill-box;transform-origin:50%;animation:4.5s ease-in-out infinite m-breathe}.sysmap__dot{transform-box:fill-box;transform-origin:50%;animation:3.2s ease-in-out infinite m-pulse;animation-delay:calc(var(--i,0) * .35s + 1.6s)}.cta-band__rings{animation:70s linear infinite m-spin}.switchboard__link,.related a,.post-row a{transition:transform .26s var(--ease-out), background-color .2s ease, border-color .2s ease, color .2s ease}.related a:hover{transform:translateY(-4px)}.post-row a:hover{transform:translate(6px)}.project .frame{transition:transform .5s var(--ease-out), box-shadow .5s var(--ease-out)}.project:hover .frame{transform:translateY(-6px);box-shadow:0 30px 60px -30px #000c}.project:hover .frame__media img{transform:scale(1.03)}@supports (animation-timeline:view()){.section-head,.switchboard__row,.project,.process__step,.principle,.review,.cta-band,.svc-block,.faq details,.person,.deliverables li,.problems li,.stack>div,.compare__col,.quote-feature{animation:linear both m-reveal;animation-timeline:view();animation-range:entry entry 70%}.project .frame__media,.person__photo{animation:linear both m-reveal-media;animation-timeline:view();animation-range:entry cover 30%}}}@keyframes m-rise{0%{transform:translateY(22px)}}@keyframes m-fade-rise{0%{opacity:0;transform:translateY(22px)}}@keyframes m-reveal{0%{transform:translateY(48px)}}@keyframes m-reveal-media{0%{opacity:0;transform:scale(1.08)}}@keyframes m-marquee{to{transform:translate(-50%)}}@keyframes m-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@keyframes m-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.35)}}@keyframes m-spin{to{transform:rotate(360deg)}}
