@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--lens-x:34%;--lens-y:46%;--pa-t:0;--pa-on:0}*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-pan-x:initial;--tw-pan-y:initial;--tw-pinch-zoom:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:root,:host{--font-sans:var(--font-manrope),ui-sans-serif,system-ui,sans-serif;--font-mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;--color-red-900:#82181a;--color-gray-200:#e5e7eb;--spacing:.25rem;--container-sm:24rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-manrope),ui-sans-serif,system-ui,sans-serif;--default-mono-font-family:var(--font-mono);--color-canvas:#f8fafc;--color-surface:#fff;--color-surface-accent:#eef3fc;--color-panel:#080d18;--color-panel-soft:#101728;--color-frame-dark:#151c2b;--color-card-dark:#1b2029;--color-ink:#0b1220;--color-ink-muted:#5f6b7a;--color-ink-faint:#667485;--color-ink-muted-deep:#505c6c;--color-ink-inverse:#e8edf5;--color-ink-inverse-muted:#7c8aa0;--color-rule:#dce3ec;--color-rule-strong:#7d8ca0;--color-rule-inverse:#26303f;--color-rule-inverse-strong:#59677d;--color-accent:#1d4ed8;--color-accent-graphic:#2563eb;--color-accent-on-dark:#60a5fa;--color-secondary:#2f7d62;--color-secondary-graphic:#3f9b78;--color-secondary-on-dark:#6bc9a3;--color-error:#b42318;--color-error-graphic:#d92d20;--color-error-on-dark:#f97066;--radius-surface:.75rem;--radius-control:.625rem;--text-display:clamp(2.75rem,2.2rem + 2.2vw,4.25rem);--text-display--line-height:1.05;--text-display--letter-spacing:-.03em;--text-heading:clamp(1.75rem,1.5rem + 1.1vw,2.25rem);--text-heading--line-height:1.2;--text-heading--letter-spacing:-.022em;--text-home-section:clamp(2.25rem,1.25rem + 3.6vw,4.5rem);--text-home-section--line-height:1.1;--text-home-section--letter-spacing:-.028em;--text-closing:clamp(2.25rem,1.25rem + 3.6vw,4.5rem);--text-closing--line-height:1.1;--text-closing--letter-spacing:-.028em;--text-subhead:1.25rem;--text-subhead--line-height:1.35;--text-subhead--letter-spacing:-.015em;--text-lede:clamp(1.25rem,1.17rem + .35vw,1.375rem);--text-lede--line-height:1.5;--text-lede--letter-spacing:-.011em;--text-body:1.0625rem;--text-body--line-height:1.65;--text-reading:clamp(1.0625rem,.9625rem + .45vw,1.1875rem);--text-reading--line-height:1.6;--text-card-title:clamp(1.25rem,1.04rem + .9vw,1.625rem);--text-card-title--line-height:1.25;--text-card-title--letter-spacing:-.018em;--text-small:.9375rem;--text-small--line-height:1.55;--text-label:.75rem;--text-label--letter-spacing:.13em;--text-meta:.8125rem;--text-meta--line-height:1.5;--text-meta--letter-spacing:.01em;--container-narrow:46rem;--container-page:78rem;--font-display:var(--font-sora),var(--font-manrope),ui-sans-serif,system-ui,sans-serif}@supports (color:lab(0% 0 0)){:root,:host{--color-red-900:lab(28.5139% 44.5539 29.0463);--color-gray-200:lab(91.6229% -.159115 -2.26791)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:root{--brand-intro-dismiss-at:2.88s;--brand-intro-dismiss-duration:.34s;--hero-seq-offset:0s;--hero-seq-scale:1;--ease-settle:cubic-bezier(.2,0,.1,1);--badge-sway:linear(0,.0915,.2554,.4703,.7122,.957,1.1825,1.3703,1.5072,1.5857,1.6043,1.5672,1.4829,1.3637,1.2236,1.0774,.9388,.8196,.7286,.6713,.6494,.6612,.7022,.7656,.8432,.9264,1.007,1.078,1.1338,1.1712,1.1886,1.187,1.1686,1.1372,1.0973,1.0537,1.011,.973,.9427,.9219,.9114,.9106,.9182,.9323,.9504,.9701,.9891,1.0056,1.0184,1.0267,1.0305,1.0303,1.0269,1.0213,1.0149,1.0087,1.0035,1,.9983,.9985,1);--ease-standard:cubic-bezier(.4,0,.2,1);--ease-expo-out:cubic-bezier(.16,1,.3,1);--site-nav-height:3.75rem;--site-nav-offset:1rem;--site-nav-clearance:calc(var(--site-nav-offset) + var(--site-nav-height))}html[data-brand-intro=played]{--hero-seq-scale:.65}html:not([data-brand-intro=played]){--hero-seq-offset:calc(var(--brand-intro-dismiss-at) + var(--brand-intro-dismiss-duration)*.25)}html{-webkit-text-size-adjust:100%;background-color:var(--color-canvas)}@media (pointer:coarse){html:has(.hero.bg-panel){background-color:var(--color-panel)}}:target,#contact{scroll-margin-top:calc(var(--site-nav-clearance) + 1.5rem)}body{background-color:var(--color-canvas);color:var(--color-ink);font-family:var(--font-manrope),ui-sans-serif,system-ui,sans-serif;font-size:var(--text-body);text-rendering:optimizelegibility;line-height:1.65}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:1px}.on-panel :focus-visible{outline-color:var(--color-accent-on-dark)}::selection{background-color:#2563eb38}@supports (color:color-mix(in lab, red, red)){::selection{background-color:color-mix(in srgb,var(--color-accent-graphic)22%,transparent)}}h1,h2,h3{font-family:var(--font-sora),var(--font-manrope),ui-sans-serif,system-ui,sans-serif}h1,h2,h3,h4{text-wrap:balance}p{text-wrap:pretty}}@layer components{.tech-label{font-size:var(--text-label);letter-spacing:.13em;text-transform:uppercase;font-variant-numeric:tabular-nums;font-weight:500;line-height:1.4}.tech-meta{font-size:var(--text-meta);letter-spacing:.01em;font-variant-numeric:tabular-nums;font-weight:500;line-height:1.5}.section-index{font-size:var(--text-label);letter-spacing:.06em;font-variant-numeric:tabular-nums;color:var(--color-accent);font-weight:500;line-height:1.4}.section-index--on-panel{color:var(--color-accent-on-dark)}.panel-link{--panel-link-accent:var(--color-accent);border-color:var(--color-rule);transition:transform .2s ease-out,border-color .2s ease-out}.panel-link--on-dark{--panel-link-accent:var(--color-accent-on-dark);border-color:var(--color-rule-inverse)}.panel-link:has(a:focus-visible){border-color:var(--panel-link-accent);transform:translateY(-3px)}@media (hover:hover) and (pointer:fine){.panel-link:hover{border-color:var(--panel-link-accent);transform:translateY(-3px)}}.panel-link:has(a:focus-visible){outline:2px solid var(--panel-link-accent);outline-offset:3px}@supports selector(:has(*)){.panel-link a:focus-visible{outline:none}}.panel-link:active{transition-duration:80ms;transform:translateY(-1px)}.panel-link__arrow{transition:transform .2s ease-out}.panel-link:has(a:focus-visible) .panel-link__arrow{transform:translate(3px)}.panel-link:has(a:focus-visible) .panel-link__arrow--back{transform:translate(-3px)}@media (hover:hover) and (pointer:fine){.panel-link:hover .panel-link__arrow{transform:translate(3px)}.panel-link:hover .panel-link__arrow--back{transform:translate(-3px)}}@media (prefers-reduced-motion:no-preference){.panel-link:has(a:focus-visible) .diagram-edge-line{stroke-dasharray:5 4;animation:.7s linear infinite diagram-flow}@media (hover:hover) and (pointer:fine){.panel-link:hover .diagram-edge-line{stroke-dasharray:5 4;animation:.7s linear infinite diagram-flow}}}.enter-on-scroll,.enter-stagger>*{opacity:1}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.enter-on-scroll{animation:linear both enter-rise;animation-timeline:view();animation-range:entry entry 40%}.enter-on-scroll>h2,.enter-on-scroll>.home-heading{animation:linear both heading-wipe;animation-timeline:view();animation-range:entry entry 46%}.enter-stagger{view-timeline-name:--enter-group}.enter-stagger>*{animation:linear both enter-rise;animation-timeline:--enter-group;animation-range:entry entry 34%}.enter-stagger>:nth-child(2){animation-range:entry 6% entry 40%}.enter-stagger>:nth-child(3){animation-range:entry 12% entry 46%}.enter-stagger>:nth-child(4){animation-range:entry 18% entry 52%}.enter-stagger>:nth-child(n+5){animation-range:entry 24% entry 58%}[data-enter] .enter-stagger>*{animation:none}}}@supports not selector(::-webkit-scrollbar){.scroll-contained{scrollbar-width:thin;scrollbar-color:var(--color-rule-inverse-strong)transparent}}.scroll-contained:focus-visible{outline-offset:-2px}.scroll-contained::-webkit-scrollbar{width:6px;height:6px}.scroll-contained::-webkit-scrollbar-track{background:0 0}.scroll-contained::-webkit-scrollbar-thumb{background-color:var(--color-rule-inverse-strong);border-radius:3px}.scroll-contained::-webkit-scrollbar-thumb:hover{background-color:var(--color-accent-graphic)}.scroll-contained::-webkit-scrollbar-thumb:active{background-color:var(--color-accent-graphic)}.scroll-contained::-webkit-scrollbar-corner{background:0 0}:root{--scrollbar-thumb:var(--color-rule-strong);--scrollbar-thumb-hover:var(--color-ink-muted)}.on-panel,dialog,.site-nav__panel,.cs-toc-panel{--scrollbar-thumb:var(--color-rule-inverse-strong);--scrollbar-thumb-hover:var(--color-accent-graphic)}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb)transparent}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);background-clip:padding-box;border:1px solid #0000;border-radius:999px;min-height:48px}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}::-webkit-scrollbar-thumb:active{background-color:var(--color-accent-graphic)}::-webkit-scrollbar-corner{background:0 0}.grid-motif,.grid-motif-panel{isolation:isolate;position:relative}.grid-motif:before,.grid-motif-panel:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(to right,var(--grid-line)1px,transparent 1px),linear-gradient(to bottom,var(--grid-line)1px,transparent 1px);background-position:0 0;background-size:2.5rem 2.5rem;position:absolute;inset:0}.grid-motif:before{--grid-line:#dce3ecb3}@supports (color:color-mix(in lab, red, red)){.grid-motif:before{--grid-line:color-mix(in srgb,var(--color-rule)70%,transparent)}}.grid-motif:before{-webkit-mask-image:radial-gradient(118% 100% at 0 0,#000 0%,#0000 62%);mask-image:radial-gradient(118% 100% at 0 0,#000 0%,#0000 62%)}.grid-motif-panel:before{--grid-line:#26303fd9}@supports (color:color-mix(in lab, red, red)){.grid-motif-panel:before{--grid-line:color-mix(in srgb,var(--color-rule-inverse)85%,transparent)}}.grid-motif-panel:before{-webkit-mask-image:radial-gradient(100% 90%,#000 0%,#0000 78%);mask-image:radial-gradient(100% 90%,#000 0%,#0000 78%)}.page-seq,.hero-seq{opacity:1}@media (prefers-reduced-motion:no-preference){.page-seq{animation:enter-rise .52s var(--ease-settle)calc(var(--hero-seq-offset) + var(--seq-delay,0s))both}.hero-seq{animation:enter-rise .52s var(--ease-settle)calc(var(--hero-seq-offset) + var(--seq-delay,0s)*var(--hero-seq-scale))both}.hero-seq--clip{animation-name:hero-clip-up;animation-duration:.76s}}.brand-intro{z-index:60;background-color:var(--color-panel);animation:brand-intro-dismiss var(--brand-intro-dismiss-duration)ease-out var(--brand-intro-dismiss-at)both;place-items:center;display:grid;position:fixed;inset:0}[data-brand-intro=played] .brand-intro{display:none}.brand-intro__stage{aspect-ratio:1;width:min(72vw,clamp(260px,30vw,420px));position:relative}.brand-intro__art{width:100%;height:100%;display:block}.brand-intro__writing{animation:.2s linear 1.98s both brand-intro-signature-out}.brand-intro__stroke{fill:none;stroke:currentColor;stroke-width:12px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:var(--stroke-length);animation:brand-intro-draw var(--stroke-duration)linear var(--stroke-delay)both}.brand-intro__pulse{transform-box:fill-box;transform-origin:50%;animation:.23s ease-out 1.51s both brand-intro-pulse}.brand-intro__mark{animation:brand-intro-propagate .6s var(--ease-standard)1.58s both}.home-heading{font-size:var(--text-home-section);line-height:var(--text-home-section--line-height);letter-spacing:var(--text-home-section--letter-spacing);text-align:center;max-width:20ch;margin-inline:auto}.home-heading-support{text-align:center;max-width:48ch;margin-inline:auto}.home-heading-support.contact-availability{text-wrap:balance;max-width:none}.hero{isolation:isolate;min-height:100svh;padding-block:calc(var(--site-nav-clearance) + 2rem)3.5rem;flex-direction:column;justify-content:center;display:flex;position:relative}.hero>*{width:100%}.hero__field{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero__field-set{position:absolute;inset:0}.hero__field-set--wide,.hero__field-set--tablet{display:none}@media (min-width:48rem){.hero__field-set--phone{display:none}.hero__field-set--tablet{display:block}}@media (min-width:64rem){.hero__field-set--tablet{display:none}.hero__field-set--wide{display:block}}.hero__field-layer{width:100%;height:100%;position:absolute;inset:0}.hero__field-run{fill:none;stroke:#59677d8c}@supports (color:color-mix(in lab, red, red)){.hero__field-run{stroke:color-mix(in srgb,var(--color-rule-inverse-strong)55%,transparent)}}.hero__field-run{stroke-width:1px;vector-effect:non-scaling-stroke}.hero__field-layer--lit{-webkit-mask-image:radial-gradient(22rem 22rem at var(--px,24%)var(--py,42%),#000 0%,transparent 70%);-webkit-mask-image:radial-gradient(22rem 22rem at var(--px,24%)var(--py,42%),#000 0%,transparent 70%);-webkit-mask-image:radial-gradient(22rem 22rem at var(--px,24%)var(--py,42%),#000 0%,transparent 70%);mask-image:radial-gradient(22rem 22rem at var(--px,24%)var(--py,42%),#000 0%,transparent 70%)}.hero__field-layer--lit .hero__field-run{stroke:#60a5fa9e}@supports (color:color-mix(in lab, red, red)){.hero__field-layer--lit .hero__field-run{stroke:color-mix(in srgb,var(--color-accent-on-dark)62%,transparent)}}.hero__field-signal{fill:none;stroke:var(--color-accent-on-dark);stroke-width:1.5px;stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:6 100;stroke-dashoffset:106px;opacity:0}@media (prefers-reduced-motion:no-preference){.hero__field-signal{opacity:.85;animation-name:hero-field-travel;animation-timing-function:linear;animation-iteration-count:infinite}}.hero__grid{flex-direction:column;gap:3rem;min-width:0;display:flex}.hero__name{letter-spacing:-.03em;color:var(--color-ink-inverse);text-wrap:balance;font-size:clamp(2.75rem,6.4vw,5.5rem);font-weight:500;line-height:1.08}.hero__role{letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-inverse);flex-wrap:wrap;align-items:center;gap:1.25rem;margin-top:1.25rem;font-size:clamp(1rem,.35vw + .88rem,1.125rem);font-weight:600;line-height:1.5;display:flex}.hero__link{opacity:0;background-color:#60a5fa8c;flex:1 0 100%;min-width:3rem;height:1px;margin-top:-.25rem;display:none;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.hero__link{background-color:color-mix(in srgb,var(--color-accent-on-dark)55%,transparent)}}.hero__link:before,.hero__link:after{background-color:var(--color-accent-on-dark);content:"";border-radius:50%;width:5px;height:5px;position:absolute;top:50%;transform:translateY(-50%)}.hero__link:before{left:0}.hero__link-signal{position:absolute;inset:0}.hero__link-signal>span{background-color:var(--color-accent-on-dark);opacity:0;width:1.5rem;height:1px;position:absolute;top:0;left:0}.hero__link:after{right:0}.hero__statement{max-width:34rem}.hero-plate{border-radius:var(--radius-surface);aspect-ratio:21/9;border:1px solid var(--color-rule-inverse);background-color:var(--color-panel-soft);background-image:linear-gradient(90deg,#26303f99 1px,#0000 1px),linear-gradient(#26303f99 1px,#0000 1px);width:100%;position:relative}@supports (color:color-mix(in lab, red, red)){.hero-plate{background-image:linear-gradient(to right,color-mix(in srgb,var(--color-rule-inverse)60%,transparent)1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--color-rule-inverse)60%,transparent)1px,transparent 1px)}}.hero-plate{background-size:1.25rem 1.25rem}.hero-plate--photo{border-color:var(--color-rule-inverse-strong);aspect-ratio:3/4;background-image:none;max-width:17rem;margin-inline:auto;overflow:hidden}.hero-plate__photo{object-fit:cover;object-position:center;width:100%;height:100%}.hero-plate__mark{border-color:var(--color-rule-inverse-strong);border-style:solid;border-width:0;width:.875rem;height:.875rem;position:absolute}.hero-plate__mark--tl{border-top-width:1px;border-left-width:1px;top:.625rem;left:.625rem}.hero-plate__mark--tr{border-top-width:1px;border-right-width:1px;top:.625rem;right:.625rem}.hero-plate__mark--bl{border-bottom-width:1px;border-left-width:1px;bottom:.625rem;left:.625rem}.hero-plate__mark--br{border-bottom-width:1px;border-right-width:1px;bottom:.625rem;right:.625rem}@media (min-width:64rem){.hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,22rem);align-items:center;gap:4rem;display:grid}.hero__role>span:first-child{text-wrap:balance;max-width:26em}.hero__link{flex:auto;margin-top:0;margin-right:-4rem;display:block}.hero-plate{aspect-ratio:4/5}.hero-plate--photo{max-width:none;margin-inline:0}}.about-grid{gap:2.5rem;min-width:0;display:grid}.about-grid__body .home-heading{max-width:none;margin-inline:0}.about-grid__body>div{max-width:40rem}.about-plate{aspect-ratio:5/6;object-fit:cover;object-position:center bottom;border:1px solid var(--color-rule);border-radius:var(--radius-surface);width:100%;max-width:17.5rem;height:auto;margin-inline:auto;display:block}@media (min-width:40rem){.about-plate{max-width:20rem}}@media (min-width:64rem){.about-grid__body .home-heading{text-align:left}.about-plate{max-width:none;margin-inline:0}.about-grid:has(.about-grid__media){grid-template-columns:minmax(0,1fr) minmax(0,22rem);align-items:center;gap:4rem}}@media (max-width:39.9375rem){.contact-routes>*{text-align:center;align-items:center}.contact-routes>*>p:first-child{justify-content:center}}.btn{border-radius:var(--radius-control);font-size:var(--text-small);line-height:var(--text-small--line-height);border:1px solid #0000;justify-content:center;align-items:center;gap:.625rem;padding:.75rem 1.25rem;font-weight:500;transition:color .2s,border-color .2s,background-color .2s;display:inline-flex}.btn--secondary{border-color:var(--color-rule-strong);background-color:var(--color-surface);color:var(--color-ink)}.btn--secondary:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent);background-color:#0000}.btn--secondary.btn--on-panel{border-color:var(--color-rule-inverse-strong);background-color:var(--color-panel-soft);color:var(--color-ink-inverse)}.btn--secondary.btn--on-panel:hover:not(:disabled){border-color:var(--color-accent-on-dark);color:var(--color-accent-on-dark);background-color:#0000}.btn-main,.btn-flow{isolation:isolate;cursor:pointer;transition:color .3s var(--ease-expo-out),border-color .3s ease,transform .2s ease;position:relative;overflow:hidden}.btn-main:before,.btn-flow:before{content:"";z-index:-1;aspect-ratio:1;background-color:var(--btn-fill);pointer-events:none;border-radius:50%;position:absolute}.btn-main--line,.btn-flow--line{--btn-fill:var(--color-accent);border-color:var(--color-rule-strong);background-color:var(--color-surface);color:var(--color-ink)}.btn-main--line.btn--on-panel,.btn-flow--line.btn--on-panel{border-color:var(--color-rule-inverse-strong);background-color:var(--color-panel-soft);color:var(--color-ink-inverse)}.btn-main--solid,.btn-flow--solid{--btn-fill:var(--color-surface);border-color:var(--color-accent);background-color:var(--color-accent);color:#fff}@media (hover:hover){.btn-main--line:hover:not(:disabled),.btn-flow--line:hover:not(:disabled){border-color:var(--btn-fill);color:#fff}.btn-main--solid:hover:not(:disabled),.btn-flow--solid:hover:not(:disabled){color:var(--color-accent)}}.btn-main--line:is(:focus-visible,:active:not(:disabled)),.btn-flow--line:is(:focus-visible,:active:not(:disabled)){border-color:var(--btn-fill);color:#fff}.btn-main--solid:is(:focus-visible,:active:not(:disabled)),.btn-flow--solid:is(:focus-visible,:active:not(:disabled)){color:var(--color-accent)}.btn-main:before{top:var(--origin-y,50%);left:var(--origin-x,50%);width:var(--origin-d,160%);transition:transform .5s var(--ease-expo-out);transform:translate(-50%,-50%)scale(0)}@media (hover:hover){.btn-main:hover:not(:disabled):before{transform:translate(-50%,-50%)scale(1)}}.btn-main:is(:focus-visible,:active:not(:disabled)):before{transform:translate(-50%,-50%)scale(1)}.btn-main--solid{--btn-fill:var(--color-accent);background-color:#0000}.btn-main--solid:before{transform:translate(-50%,-50%)scale(1)}@media (hover:hover){.btn-main--solid:hover:not(:disabled):before{transform:translate(-50%,-50%)scale(0)}}.btn-main--solid:is(:focus-visible,:active:not(:disabled)):before{transform:translate(-50%,-50%)scale(0)}@media (hover:hover){:is(.on-panel .btn-main--solid,.btn-main--solid.btn--on-panel):hover:not(:disabled){color:inherit}}:is(.on-panel .btn-main--solid,.btn-main--solid.btn--on-panel):is(:focus-visible,:active:not(:disabled)){color:inherit}.btn-main:active:not(:disabled){transform:scale(.985)}.btn-main__label{align-items:center;gap:.5rem;display:inline-flex}.btn-flow{--btn-node-size:1.5rem;--btn-node-inset:.75rem;--btn-flow-block:calc(.75rem + (var(--text-small--line-height)*1em - var(--btn-node-size))/2);padding:var(--btn-flow-block)var(--btn-node-inset)var(--btn-flow-block)1.25rem;gap:.75rem}.btn-flow:before{top:50%;left:calc(100% - var(--btn-node-inset) - var(--btn-node-size)/2);width:220%;transition:transform .65s var(--ease-expo-out);transform:translate(-50%,-50%)scale(0)}.btn-flow__label{display:block}.btn-flow__node{width:var(--btn-node-size);height:var(--btn-node-size);border-radius:50%;flex:none;place-items:center;transition:background-color .4s,color .4s;display:grid;position:relative;overflow:hidden}.btn-flow__arrow{width:1rem;height:1rem}.btn-flow--solid{--btn-fill:var(--color-accent);background-color:#0000}.btn-flow--solid:before{transform:translate(-50%,-50%)scale(1)}.btn-flow--solid .btn-flow__node{background-color:var(--color-surface);color:var(--color-accent)}.btn-flow--line,.btn-flow--line.btn--on-panel{color:var(--color-accent);background-color:#0000}.on-panel .btn-flow--line{border-color:var(--color-rule-inverse-strong);color:inherit}.btn-flow--line .btn-flow__node{background-color:var(--color-accent);color:#fff}@media (hover:hover){.on-panel .btn-flow--solid:hover:not(:disabled){color:inherit}.btn-flow--solid:hover:not(:disabled):before{transform:translate(-50%,-50%)scale(0)}.btn-flow--solid:hover:not(:disabled) .btn-flow__node{background-color:var(--color-accent);color:#fff}.btn-flow--line:hover:not(:disabled){border-color:var(--color-accent);color:#fff}.btn-flow--line:hover:not(:disabled):before{transform:translate(-50%,-50%)scale(1)}.btn-flow--line:hover:not(:disabled) .btn-flow__node{background-color:var(--color-surface);color:var(--color-accent)}}.on-panel .btn-flow--solid:is(:focus-visible,:active:not(:disabled)){color:inherit}.btn-flow--solid:is(:focus-visible,:active:not(:disabled)):before{transform:translate(-50%,-50%)scale(0)}.btn-flow--solid:is(:focus-visible,:active:not(:disabled)) .btn-flow__node{background-color:var(--color-accent);color:#fff}.btn-flow--line:is(:focus-visible,:active:not(:disabled)){border-color:var(--color-accent);color:#fff}.btn-flow--line:is(:focus-visible,:active:not(:disabled)):before{transform:translate(-50%,-50%)scale(1)}.btn-flow--line:is(:focus-visible,:active:not(:disabled)) .btn-flow__node{background-color:var(--color-surface);color:var(--color-accent)}@keyframes btn-flow-arrow{0%{animation-timing-function:cubic-bezier(.55,0,1,.45);transform:translate(0)}40%{transform:translate(170%)}40.01%{animation-timing-function:cubic-bezier(.34,1.56,.64,1);transform:translate(-170%)}to{transform:translate(0)}}@media (prefers-reduced-motion:no-preference) and (hover:hover){.btn-flow:hover:not(:disabled) .btn-flow__arrow{animation:.65s 80ms both btn-flow-arrow}}@media (prefers-reduced-motion:no-preference){.btn-flow:is(:focus-visible,:active:not(:disabled)) .btn-flow__arrow{animation:.65s 80ms both btn-flow-arrow}}.btn-flow:active:not(:disabled){transform:scale(.97)}.btn--icon{border-radius:50%;width:2.75rem;height:2.75rem;padding:0}.btn:disabled{border-color:var(--color-rule);color:var(--color-ink-faint);cursor:default;background-color:#0000}.btn--on-panel:disabled{border-color:var(--color-rule-inverse);color:var(--color-ink-inverse-muted)}.btn-main--solid:disabled:before{transform:translate(-50%,-50%)scale(0)}@media (prefers-reduced-motion:no-preference){.slider__item[data-reveal=pending]{opacity:0;transform:translateY(1.5rem)}.slider__item[data-reveal=shown]{transition:opacity .9s var(--ease-expo-out),transform 1s var(--ease-expo-out)}[data-enter=pending]{opacity:0;transform:translateY(1.5rem)}[data-enter=shown]{transition:opacity .9s var(--ease-expo-out)var(--enter-delay,0s),transform 1s var(--ease-expo-out)var(--enter-delay,0s)}}.slider__viewport{position:relative}.slider__controls{justify-content:center;gap:.75rem;margin-top:1.5rem;display:flex}.slider__controls>*{flex:none}.slider__track{--slider-inset:calc(max(0px,(100% - var(--container-page))/2) + var(--slider-gutter));--slider-gutter:1.5rem;--slider-gap:.75rem;--slider-peek:1.25rem;--slider-edge:calc(var(--slider-peek) + var(--slider-gap));gap:var(--slider-gap);padding-inline:var(--slider-edge);overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;margin-block:-.5rem;padding-block:.5rem;scroll-padding-inline:0;list-style:none;display:flex;overflow:auto hidden}.slider__track::-webkit-scrollbar{display:none}.slider__item{scroll-snap-align:center;flex:none;width:100%;display:flex}@media (min-width:40rem){.slider__track{--slider-gutter:2rem;--slider-peek:1.75rem}}@media (min-width:48rem){.slider__track{padding-inline:var(--slider-inset);scroll-snap-type:none;grid-template-columns:minmax(0,1fr);gap:1.5rem;display:grid;overflow:visible}.slider__item{scroll-snap-align:none;width:auto}.slider--row .slider__track{padding-inline:var(--slider-inset);scroll-padding-inline:var(--slider-inset);scroll-snap-type:x mandatory;gap:1.25rem;display:flex;overflow-x:auto}.slider--row .slider__item{scroll-snap-align:start;width:calc(45.4545% - .568182rem)}}@media (min-width:64rem){.slider__track{--slider-gutter:3rem}}@media (min-width:1024px){.slider__track{--slider-gutter:3rem}}@media (prefers-reduced-motion:no-preference){.slider__track{scroll-behavior:smooth}}.logoloop{--logoloop-item:113px;--logoloop-scale:.55;--logoloop-fade:clamp(calc(var(--logoloop-item)*var(--logoloop-scale)),12%,160px);overflow:hidden;padding-block:0!important}.logoloop__track{will-change:transform;-webkit-user-select:none;user-select:none;flex-wrap:wrap;row-gap:2rem;display:flex}.logoloop__seq{flex-wrap:wrap;align-items:center;row-gap:2rem;display:flex}.logoloop__seq[data-copy]:not([data-copy="0"]){display:none}.logoloop__item{margin-right:calc(72px*var(--logoloop-scale));flex:none;justify-content:center;align-items:center;display:flex}@media (min-width:48rem){.logoloop{--logoloop-scale:.72}}@media (min-width:64rem){.logoloop{--logoloop-scale:1}}@media (prefers-reduced-motion:reduce){.logoloop__track{justify-content:center;padding-inline:1rem}.logoloop__seq{justify-content:center;max-width:16rem;margin-inline:auto}.logoloop__item{margin-inline:calc(28px*var(--logoloop-scale))}}@media (prefers-reduced-motion:reduce) and (min-width:48rem){.logoloop__seq{max-width:34rem}}@media (prefers-reduced-motion:reduce) and (min-width:64rem){.logoloop__seq{max-width:52rem}}.logoloop__mark{width:calc(var(--mark-w)*var(--logoloop-scale)*1px);height:calc(var(--mark-h)*var(--logoloop-scale)*1px);color:var(--color-ink-muted);transition:transform .3s var(--ease-standard),color .3s var(--ease-standard);display:block}.logoloop__item:hover .logoloop__mark{color:var(--color-accent)}@media (prefers-reduced-motion:no-preference){.logoloop{-webkit-mask-image:linear-gradient(to right,transparent 0,black var(--logoloop-fade),black calc(100% - var(--logoloop-fade)),transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,black var(--logoloop-fade),black calc(100% - var(--logoloop-fade)),transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,black var(--logoloop-fade),black calc(100% - var(--logoloop-fade)),transparent 100%);mask-image:linear-gradient(to right,transparent 0,black var(--logoloop-fade),black calc(100% - var(--logoloop-fade)),transparent 100%)}.logoloop__track{flex-wrap:nowrap;width:max-content}.logoloop__seq{flex-wrap:nowrap}.logoloop__seq[data-copy]:not([data-copy="0"]){display:flex}@media (hover:hover) and (pointer:fine){.logoloop__item:hover .logoloop__mark{transform-origin:50%;transform:scale(1.2)}}}.site-nav{color:var(--color-ink-inverse)}.site-nav :is(a,button):focus-visible{outline:2px solid var(--color-accent-on-dark);outline-offset:3px}.site-nav__bar{z-index:2;height:var(--site-nav-height);border:1px solid var(--color-rule-inverse);background-color:var(--color-frame-dark);border-radius:.75rem;align-items:center;gap:1rem;padding:.5rem .5rem .5rem 1.25rem;display:flex;position:relative;box-shadow:0 4px 14px #02061059}.site-nav__brand{display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.site-nav__lang{font-size:var(--text-meta);letter-spacing:.04em;align-items:baseline;gap:.375rem;font-weight:500;display:inline-flex}.site-nav__lang-sep,.site-nav__lang-off,.site-nav__lang-link{color:var(--color-ink-inverse-muted)}.site-nav__lang-link{margin-block:-.5rem;padding-block:.5rem;transition:color .2s}.site-nav__lang-link:hover{color:var(--color-accent-on-dark)}.site-nav__links{gap:.25rem;margin-left:auto;display:flex}.site-nav__link{min-height:2.75rem;font-size:var(--text-small);border-radius:.5rem;align-items:center;padding-inline:.875rem;font-weight:500;transition:color .2s;display:inline-flex}.site-nav__link:hover,.site-nav__link[aria-current=page]{color:var(--color-accent-on-dark)}.site-nav__burger{cursor:pointer;width:2.75rem;height:2.75rem;margin-left:auto;display:none;position:relative}.site-nav__line{background-color:currentColor;width:26px;height:2px;margin:-1px 0 0 -13px;transition:transform .25s,opacity .2s;position:absolute;top:50%;left:50%}.site-nav__burger:hover .site-nav__line{opacity:.75}.site-nav__line--top{transform:translateY(-4px)}.site-nav__line--bottom{transform:translateY(4px)}.site-nav__burger[data-open] .site-nav__line--top{transform:rotate(45deg)}.site-nav__burger[data-open] .site-nav__line--bottom{transform:rotate(-45deg)}.site-nav__panel{z-index:1;min-height:60dvh;max-height:100dvh;padding:calc(var(--site-nav-clearance) + 2rem)calc(var(--site-nav-offset) + 1rem + 1px)1.75rem;overscroll-behavior:contain;isolation:isolate;border-bottom:1px solid var(--color-rule-inverse);background-color:var(--color-frame-dark);visibility:hidden;opacity:0;transition:opacity .2s ease,visibility 0s linear .2s,display 0s linear .2s allow-discrete;border-radius:0 0 1.25rem 1.25rem;flex-direction:column;display:flex;position:fixed;top:0;left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #02061073}.site-nav[data-open] .site-nav__panel{visibility:visible;opacity:1;transition:opacity .2s}.site-nav__scrim{z-index:0;visibility:hidden;opacity:0;transition:opacity .2s ease,visibility 0s linear .2s,display 0s linear .2s allow-discrete;background-color:#0206108c;position:fixed;inset:0}.site-nav[data-open] .site-nav__scrim{visibility:visible;opacity:1;transition:opacity .2s}.site-nav:not([data-open]) .site-nav__panel,.site-nav:not([data-open]) .site-nav__scrim{display:none}@starting-style{.site-nav[data-open] .site-nav__panel,.site-nav[data-open] .site-nav__scrim{opacity:0}}@media (prefers-reduced-motion:no-preference){.site-nav__panel{transition:opacity .2s ease,translate .26s var(--ease-expo-out),visibility 0s linear .2s,display 0s linear .2s allow-discrete;translate:0 -.75rem}@starting-style{.site-nav[data-open] .site-nav__panel{translate:0 -.75rem}}.site-nav[data-open] .site-nav__panel{transition:opacity .2s ease,translate .26s var(--ease-expo-out);translate:0}}.site-nav__lang--menu{font-size:var(--text-subhead);gap:.625rem;margin-top:auto;padding-top:2.5rem}@media (max-height:30rem){.site-nav__panel{padding-top:calc(var(--site-nav-clearance) + 1rem)}.site-nav__panel .site-nav__word{font-size:2rem}.site-nav__lang--menu{padding-top:.75rem}.site-nav__panel .site-nav__foot{padding-top:.5rem}}html[data-nav-open]{overflow:hidden}html:has(dialog:modal){overflow:hidden}.site-nav__mark{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.site-nav__mark .ground-mark{width:min(30rem,120vw);color:var(--color-accent-on-dark);opacity:.07;bottom:-10rem;right:-8rem}.site-nav__words{flex-direction:column;gap:.5rem;display:flex}.site-nav__word-link{transition:color .2s;display:block}.site-nav__word-link:hover,.site-nav__word-link[aria-current=page]{color:var(--color-accent-on-dark)}.site-nav__clip{padding-bottom:.08em;display:block;overflow:hidden}.site-nav__word{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(2.75rem,12vw,3.5rem);font-weight:500;line-height:1.1;display:block}.site-nav__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem .75rem;padding-top:1rem;display:flex}.site-nav__foot .btn{white-space:nowrap;flex-shrink:0}.site-nav__icons{gap:.375rem;display:flex}.site-nav__icon{border:1px solid var(--color-rule-inverse-strong);border-radius:50%;place-items:center;width:3rem;height:3rem;transition:color .2s,border-color .2s;display:grid}.site-nav__icon:hover{border-color:var(--color-accent-on-dark);color:var(--color-accent-on-dark)}.site-nav__icon-svg{width:1.375rem;height:1.375rem}@keyframes site-nav-rise{0%{transform:translateY(105%)}}@keyframes site-nav-fade{0%{opacity:0}}@media (prefers-reduced-motion:no-preference){.site-nav[data-open] .site-nav__word{animation:site-nav-rise .56s var(--ease-expo-out)calc(80ms + var(--i,0)*70ms)both}.site-nav[data-open] .site-nav__foot{animation:.4s .32s both site-nav-fade}}@media (prefers-reduced-motion:reduce){.site-nav__line{transition:opacity .2s}}@media (max-width:47.99rem){.site-nav__bar{padding-left:1rem}.site-nav__brand{position:static;transform:none}.site-nav__lang--bar,.site-nav__links{display:none}.site-nav__burger{display:block}}@media (min-width:48rem) and (max-width:56rem){.site-nav__links{gap:.125rem}.site-nav__link{padding-inline:.5rem}}@media (min-width:48rem){.site-nav__panel,.site-nav__scrim{display:none}}.site-nav-shell{top:var(--site-nav-offset);z-index:40;height:var(--site-nav-height);padding-inline:var(--site-nav-offset);pointer-events:none;position:fixed;inset-inline:0}main{padding-top:var(--site-nav-clearance)}main:has(>.hero){padding-top:0}.site-nav-shell>*{inset-inline:var(--site-nav-offset);pointer-events:auto;width:auto;position:absolute;top:0}.route{--route-node:9;--route-line:var(--color-accent-graphic);--route-track:var(--color-rule);--route-title:var(--color-ink);--route-copy:var(--color-ink-muted);--route-upcoming-index:var(--color-ink-faint);--route-upcoming-title:var(--color-ink-faint)}.route--on-panel{--route-line:var(--color-accent-on-dark);--route-track:var(--color-rule-inverse);--route-title:var(--color-ink-inverse);--route-copy:var(--color-ink-inverse-muted);--route-upcoming-index:var(--color-ink-inverse-muted);--route-upcoming-title:var(--color-ink-inverse-muted)}.route__heading{margin-bottom:1rem}.route__rows{--route-gutter:1.5rem;--route-measure:min(100%,calc(var(--container-page) - 2*var(--route-gutter)));width:100%}@media (min-width:40rem){.route__rows{--route-gutter:2rem}}@media (min-width:64rem){.route__rows{--route-gutter:3rem}}.route__row{--route-stroke:4.3;position:relative}.route__head{aspect-ratio:calc(1000/var(--head-h-m));position:relative}.route__body{padding-bottom:2rem;position:relative}.route__arrival{pointer-events:none;width:1px;height:0;position:absolute;bottom:0;left:0}.route__svg{width:100%;height:100%;display:block;position:absolute;inset:0;overflow:visible}.route__svg--desktop{display:none}.route__svg--rail{height:100%}.route__track{fill:none;stroke:var(--route-track);stroke-width:var(--route-stroke);stroke-linecap:butt;stroke-linejoin:round}.route__line{fill:none;stroke:var(--route-line);stroke-width:var(--route-stroke);stroke-linecap:butt;stroke-linejoin:round;stroke-dasharray:100;stroke-dashoffset:0}.route__node{fill:none;stroke:var(--route-line);stroke-width:var(--route-node);stroke-linecap:round;vector-effect:non-scaling-stroke}.route__text{--text-start-m:max(var(--text-inset-m),1.5rem);margin-left:var(--text-start-m);width:calc(var(--text-end-m) - var(--text-start-m));max-width:34rem;padding-top:1.25rem}@media (min-width:40rem){.route__text{--text-start-m:max(var(--text-inset-m),2rem)}}.route__reveal{grid-template-rows:1fr;display:grid;overflow:hidden}.route__reveal>*{min-height:0}@media (max-width:59.9375rem){.route__reveal>*{min-height:auto}}.route__title{color:var(--route-title);margin-top:.5rem}.route__copy{color:var(--route-copy);padding-top:.75rem}@media (min-width:960px){.route__row{max-width:var(--route-measure);--route-stroke:1.3;width:100%;max-height:20rem;aspect-ratio:calc(1000/var(--row-h-d));margin-inline:auto}.route__head{aspect-ratio:auto;height:0;position:static}.route__body{padding-bottom:0;position:static}.route__svg--head,.route__svg--rail{display:none}.route__svg--desktop{display:block}.route__arrival{top:var(--node-top-d);bottom:auto}.route__reveal>*{min-height:0}.route__text{top:var(--text-top-d);left:var(--text-inset-d);width:min(30rem,calc(100% - var(--text-inset-d)));max-width:none;margin-left:0;padding-top:0;position:absolute}}.act--dark{--color-canvas:var(--color-panel);--color-surface:var(--color-panel-soft);--color-surface-accent:var(--color-frame-dark);--color-ink:var(--color-ink-inverse);--color-ink-muted:var(--color-ink-inverse-muted);--color-ink-faint:var(--color-ink-inverse-muted);--color-rule:var(--color-rule-inverse);--color-rule-strong:var(--color-rule-inverse-strong);--color-accent:var(--color-accent-on-dark);--color-secondary:var(--color-secondary-on-dark);--color-error:var(--color-error-on-dark);background-color:var(--color-panel);color:var(--color-ink-inverse)}:root{--light-canvas:var(--color-canvas);--light-surface:var(--color-surface);--light-surface-accent:var(--color-surface-accent);--light-ink:var(--color-ink);--light-ink-muted:var(--color-ink-muted);--light-ink-faint:var(--color-ink-faint);--light-rule:var(--color-rule);--light-rule-strong:var(--color-rule-strong);--light-accent:var(--color-accent);--light-secondary:var(--color-secondary);--light-error:var(--color-error)}.ground-light{--color-canvas:var(--light-canvas);--color-surface:var(--light-surface);--color-surface-accent:var(--light-surface-accent);--color-ink:var(--light-ink);--color-ink-muted:var(--light-ink-muted);--color-ink-faint:var(--light-ink-faint);--color-rule:var(--light-rule);--color-rule-strong:var(--light-rule-strong);--color-accent:var(--light-accent);--color-secondary:var(--light-secondary);--color-error:var(--light-error);color:var(--color-ink)}.ground-light :focus-visible{outline-color:var(--color-accent)}.cs-toc-rail,.cs-toc-panel{--toc-ahead:var(--color-ink-inverse);--toc-current:var(--color-accent-on-dark);--toc-passed:var(--color-ink-inverse-muted);--toc-dot-passed:var(--color-accent-graphic);--toc-track:var(--color-rule-inverse-strong)}.cs-toc__list{--toc-pad:.3125rem;--toc-font:.8125rem;--toc-dot:9px;flex-direction:column;min-width:0;display:flex}.cs-toc__item{position:relative}.cs-toc__link{min-height:1.75rem;padding-block:var(--toc-pad);border-radius:var(--radius-control);font-size:var(--toc-font);color:var(--toc-ahead);align-items:flex-start;gap:.75rem;line-height:1.25;display:flex}.cs-toc__link:hover .cs-toc__label{text-underline-offset:.2em;text-decoration:underline}.cs-toc__dot{width:var(--toc-dot);height:var(--toc-dot);margin-top:calc((var(--toc-font)*1.25 - var(--toc-dot))/2);border:1px solid var(--toc-ahead);background-color:#0000;border-radius:9999px;flex-shrink:0}.cs-toc__seg{top:calc(var(--toc-pad) + (var(--toc-font)*1.25 - var(--toc-dot))/2 + var(--toc-dot));bottom:calc(0px - var(--toc-pad) - (var(--toc-font)*1.25 - var(--toc-dot))/2);left:calc(var(--toc-dot)/2 - .5px);background-color:var(--toc-track);width:1px;position:absolute}.cs-toc-rail{display:none}@media (min-width:64rem){.cs-toc-rail{top:calc(var(--site-nav-clearance) + 2rem);border:1px solid var(--color-rule-inverse);background-color:var(--color-frame-dark);pointer-events:auto;border-radius:.75rem;width:9rem;padding:1rem .875rem 1rem 1rem;display:block;position:sticky;box-shadow:0 4px 14px #02061059}.cs-toc-rail .cs-toc__list{--toc-pad:.625rem;--toc-font:.875rem;--toc-dot:10px}}@media (min-width:64rem) and (prefers-reduced-motion:no-preference){.cs-toc-rail[data-enter=pending]{opacity:0;clip-path:inset(0 0 100% round .75rem);transform:none}.cs-toc-rail[data-enter=pending] .cs-toc__item{opacity:0;translate:0 -.375rem}.cs-toc-rail[data-enter=pending]:focus-within,.cs-toc-rail[data-enter=pending]:focus-within .cs-toc__item{opacity:1;clip-path:none;translate:none}.cs-toc-rail[data-enter=shown]{clip-path:inset(-1.5rem round .75rem);transition:opacity .26s ease-out,clip-path .56s cubic-bezier(.32,.72,0,1)}.cs-toc-rail[data-enter=shown] .cs-toc__item{transition:opacity .28s ease-out,translate .38s var(--ease-expo-out)}.cs-toc-rail[data-enter=shown] .cs-toc__item:first-child{transition-delay:.18s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(2){transition-delay:.215s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(3){transition-delay:.25s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(4){transition-delay:.285s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(5){transition-delay:.32s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(6){transition-delay:.355s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(7){transition-delay:.39s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(8){transition-delay:.425s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(9){transition-delay:.46s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(10){transition-delay:.495s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(11){transition-delay:.53s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(12){transition-delay:.565s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(13){transition-delay:.6s}.cs-toc-rail[data-enter=shown] .cs-toc__item:nth-child(14){transition-delay:.635s}}.cs-toc-button{z-index:30;border:1px solid var(--color-rule-inverse);background-color:var(--color-frame-dark);width:3.5rem;height:3.5rem;color:var(--color-ink-inverse);cursor:pointer;border-radius:9999px;place-items:center;margin:-3.5rem 1rem 0 auto;transition:border-color .2s;display:grid;position:sticky;bottom:1rem;box-shadow:0 4px 14px #02061059}.cs-toc-button:hover{border-color:var(--color-accent-on-dark)}@supports (animation-timeline:view()){.cs-acts{view-timeline-name:--cs-acts}.cs-toc-button{right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));margin:0;animation:linear both cs-toc-leave;animation-timeline:--cs-acts;animation-range:exit exit 4%;position:fixed}@media (prefers-reduced-motion:reduce){.cs-toc-button{animation-timing-function:step-end}}}@media (min-width:64rem){.cs-toc-button{display:none}}.cs-toc-icon{shape-rendering:geometricprecision}.cs-toc-icon__stop,.cs-toc-icon__bar,.cs-toc-icon__link{transform-box:fill-box;transform-origin:50%}@media (prefers-reduced-motion:no-preference){.cs-toc-icon__bar,.cs-toc-icon__link{stroke-dasharray:1}.cs-toc-icon [data-step="1"]{animation:5s ease-out .5 both cs-icon-stop-1}.cs-toc-icon [data-step="2"]{animation:5s ease-out .5 both cs-icon-line-2}.cs-toc-icon [data-step="3"]{animation:5s ease-out .5 both cs-icon-line-3}.cs-toc-icon [data-step="4"]{animation:5s ease-out .5 both cs-icon-stop-4}.cs-toc-icon [data-step="5"]{animation:5s ease-out .5 both cs-icon-line-5}.cs-toc-icon [data-step="6"]{animation:5s ease-out .5 both cs-icon-line-6}.cs-toc-icon [data-step="7"]{animation:5s ease-out .5 both cs-icon-stop-7}.cs-toc-icon [data-step="8"]{animation:5s ease-out .5 both cs-icon-line-8}}.cs-toc-panel{border:1px solid var(--color-rule-inverse);background-color:var(--color-frame-dark);width:min(15rem,100vw - 2rem);max-height:min(32rem,100svh - 7rem);color:var(--color-ink-inverse);border-radius:.75rem;margin:0;padding:.875rem 1rem .75rem;position:fixed;inset:auto 1rem 5.25rem auto;overflow-y:auto;box-shadow:0 8px 28px #02061073}.cs-toc-panel::backdrop{background-color:#02061059}@media (prefers-reduced-motion:no-preference){@supports (transition-behavior:allow-discrete){.cs-toc-panel{opacity:0;clip-path:inset(calc(100% - 3rem) -3rem -3rem calc(100% - 3rem) round .75rem);transition:opacity .16s ease-out,clip-path .2s var(--ease-standard),transform .2s var(--ease-standard),overlay .2s allow-discrete,display .2s allow-discrete;transform:translateY(.5rem)}.cs-toc-panel:popover-open{opacity:1;clip-path:inset(-3rem round .75rem);transition:opacity .2s ease-out,clip-path .34s cubic-bezier(.32,.72,0,1),transform .34s cubic-bezier(.32,.72,0,1),overlay .34s allow-discrete,display .34s allow-discrete;transform:none}@starting-style{.cs-toc-panel:popover-open{opacity:0;clip-path:inset(calc(100% - 3rem) -3rem -3rem calc(100% - 3rem) round .75rem);transform:translateY(.5rem)}}.cs-toc-panel .cs-toc__item{transition:opacity .22s ease-out,translate .28s var(--ease-expo-out)}@starting-style{.cs-toc-panel:popover-open .cs-toc__item{opacity:0;translate:0 .5rem}}.cs-toc-panel:popover-open .cs-toc__item:first-child{transition-delay:90ms}.cs-toc-panel:popover-open .cs-toc__item:nth-child(2){transition-delay:.12s}.cs-toc-panel:popover-open .cs-toc__item:nth-child(3){transition-delay:.15s}.cs-toc-panel:popover-open .cs-toc__item:nth-child(4){transition-delay:.18s}.cs-toc-panel:popover-open .cs-toc__item:nth-child(5){transition-delay:.21s}.cs-toc-panel:popover-open .cs-toc__item:nth-child(6){transition-delay:.24s}.cs-toc-panel:popover-open .cs-toc__item:nth-child(7){transition-delay:.27s}.cs-toc-panel:popover-open .cs-toc__item:nth-child(8){transition-delay:.3s}.cs-toc-panel:popover-open .cs-toc__item:nth-child(9){transition-delay:.33s}.cs-toc-panel:popover-open .cs-toc__item:nth-child(10){transition-delay:.36s}.cs-toc-panel:popover-open .cs-toc__item:nth-child(11){transition-delay:.39s}.cs-toc-panel:popover-open .cs-toc__item:nth-child(12){transition-delay:.42s}.cs-toc-panel:popover-open .cs-toc__item:nth-child(13){transition-delay:.45s}.cs-toc-panel:popover-open .cs-toc__item:nth-child(14){transition-delay:.48s}.cs-toc-panel::backdrop{opacity:0;transition:opacity .2s ease-out,overlay .2s allow-discrete,display .2s allow-discrete}.cs-toc-panel:popover-open::backdrop{opacity:1;transition-duration:.3s}@starting-style{.cs-toc-panel:popover-open::backdrop{opacity:0}}.zoom-dialog,.zoom-dialog::backdrop{opacity:0;transition:opacity .16s ease-out,overlay .16s allow-discrete,display .16s allow-discrete}.zoom-dialog[open],.zoom-dialog[open]::backdrop{opacity:1;transition-duration:.26s}@starting-style{.zoom-dialog[open],.zoom-dialog[open]::backdrop{opacity:0}}.zoom-dialog__stage{transition:transform .16s var(--ease-expo-out);transform:scale(.96)}.zoom-dialog[open] .zoom-dialog__stage{transition-duration:.32s;transform:none}@starting-style{.zoom-dialog[open] .zoom-dialog__stage{transform:scale(.96)}}}.zoom-dialog__image{transition:transform .28s var(--ease-expo-out)}.zoom-dialog__stage[data-dragging] .zoom-dialog__image{transition:none}}.cs-toc-panel .cs-toc__list{--toc-pad:.5rem;--toc-font:var(--text-small)}.cs-toc-panel .cs-toc__link{min-height:2.25rem}@supports (animation-timeline:view()) and (timeline-scope:--a){.cs-section{view-timeline-inset:35% 64%}.cs-toc__link{animation:step-end forwards cs-toc-label-passed,linear cs-toc-label-current;animation-range:cover,cover}.cs-toc__dot{animation:step-end forwards cs-toc-dot-passed,linear cs-toc-dot-current;animation-range:cover,cover}.cs-toc__seg{animation:step-end forwards cs-toc-seg-passed;animation-range:cover}}.cs-pipeline{min-width:0;display:grid;position:relative}@media (min-width:64rem){.cs-pipeline{grid-auto-rows:1fr}}.cs-pipeline__seg{background-color:var(--color-accent-graphic);transform-origin:top;width:1px;position:absolute;top:2.5rem;bottom:-2rem;left:calc(1.25rem - .5px)}.cs-pipeline__node{z-index:1;border:1px solid var(--color-accent-graphic);background-color:var(--color-panel);width:2.5rem;height:2.5rem;color:var(--color-accent-on-dark);font-size:var(--text-meta);font-variant-numeric:tabular-nums;border-radius:50%;flex-shrink:0;place-items:center;font-weight:600;display:grid;position:relative}@media (prefers-reduced-motion:no-preference){[data-enter=shown] .cs-pipeline__seg{animation:cs-line-draw .32s var(--ease-standard)calc(.5s + var(--i,0)*.22s)both}[data-enter=shown] .cs-pipeline__node{animation:cs-node-settle .46s var(--ease-settle)calc(.32s + var(--i,0)*.22s)both}[data-enter=shown] .diagram-draw-node{transform-box:fill-box;transform-origin:50%;animation:diagram-node-settle .46s var(--ease-settle)calc(.36s + var(--step,0)*.26s)both}[data-enter=shown] .diagram-draw-node>rect{animation:diagram-node-activate .9s ease-out calc(.36s + var(--step,0)*.26s)both}[data-enter=shown] .diagram-draw-edge{stroke-dasharray:1;animation:diagram-edge-draw .42s var(--ease-standard)calc(.52s + var(--step,0)*.26s)both}[data-enter=shown] .diagram-draw-fade{animation:diagram-fade .36s ease-out calc(.62s + var(--step,0)*.26s)both}}.project-stack{gap:1.5rem;list-style:none;display:grid}.project-stack__item{top:calc(var(--site-nav-clearance) + 1.25rem + var(--i,0)*1.25rem);position:sticky}.project-stack__card{border-radius:var(--radius-surface);transform-origin:top}.project-stack__card>*{box-shadow:0 -10px 30px #0206102e}@supports (animation-timeline:view()){.project-stack{view-timeline-name:--project-stack}@media (prefers-reduced-motion:no-preference){.project-stack__card{animation:linear both project-stack-settle;animation-timeline:--project-stack;animation-range:exit-crossing calc(var(--i)/var(--n)*100%)exit-crossing 100%}}}.cs-fact{border-radius:var(--radius-surface);background-color:var(--color-panel);flex-direction:column;gap:.625rem;min-width:0;padding:1.125rem 1.25rem 1.25rem;display:flex}.cs-fact__term{justify-content:flex-start;align-items:center;gap:.625rem;min-width:0;display:flex}.cs-fact__label{letter-spacing:-.011em;font-size:1.1875rem;font-weight:500;line-height:1.3}.cs-stack{gap:1.5rem;display:grid}@media (min-height:44rem){.cs-stack__card{top:calc(var(--site-nav-clearance) + 1.25rem + var(--i,0)*1.25rem);position:sticky}}.cs-stack__inner{border-radius:var(--radius-surface);background-color:var(--color-surface-accent);transform-origin:top;flex-direction:column;gap:1.5rem;padding:2rem;display:flex;box-shadow:0 -8px 24px #0b122014}@media (min-width:48rem){.cs-stack__inner{grid-template-columns:minmax(0,15rem) minmax(0,1fr);align-items:start;gap:1.5rem 3rem;padding:2.75rem;display:grid}}@supports (animation-timeline:view()){.cs-stack{view-timeline-name:--cs-stack}@media (prefers-reduced-motion:no-preference){.cs-stack__inner{animation:linear both cs-settle;animation-timeline:--cs-stack;animation-range:exit-crossing calc(var(--i)/var(--n)*100%)exit-crossing 100%}}}.cs-lessons{min-width:0;display:grid}.cs-lessons__item{border-top:1px solid var(--color-rule);padding-block:1.75rem}.cs-lessons__item:first-child{border-top:0;padding-top:0}.cs-lessons__item:last-child{padding-bottom:0}.cs-mark{background-color:#0000;background-image:linear-gradient(#1d4ed829,#1d4ed829);border-radius:.2em;margin:0 -.15em;padding:.05em .15em}@supports (color:color-mix(in lab, red, red)){.cs-mark{background-image:linear-gradient(color-mix(in oklab,var(--color-accent)16%,transparent),color-mix(in oklab,var(--color-accent)16%,transparent))}}.cs-mark{-webkit-box-decoration-break:clone;box-decoration-break:clone;color:inherit;background-repeat:no-repeat;background-size:100% 100%}@media (prefers-reduced-motion:no-preference){[data-enter=shown] .cs-mark{animation:cs-mark-sweep .76s cubic-bezier(.3,0,.2,1)calc(.35s + var(--i,0)*.26s + var(--k,0)*.12s)both}}.cs-hub__beam{fill:none;stroke:#2563eb66}@supports (color:color-mix(in lab, red, red)){.cs-hub__beam{stroke:color-mix(in srgb,var(--color-accent-graphic)40%,transparent)}}.cs-hub__beam{stroke-width:1.25px}.cs-hub__pulse{fill:none;stroke:var(--color-accent-on-dark);stroke-width:2.25px;stroke-linecap:round;stroke-dasharray:.07 2;stroke-dashoffset:.07px;opacity:0}.cs-hub__pill-box{fill:var(--color-frame-dark);stroke:var(--color-rule-inverse-strong);stroke-width:1px}.cs-hub__pill-icon{color:var(--color-ink-inverse)}.cs-hub__pill-label{fill:var(--color-ink-inverse);font-family:var(--font-manrope),sans-serif;font-weight:500}.cs-hub__hub-ring{fill:none;stroke:#2563eb8c}@supports (color:color-mix(in lab, red, red)){.cs-hub__hub-ring{stroke:color-mix(in srgb,var(--color-accent-graphic)55%,transparent)}}.cs-hub__hub-ring{stroke-width:1px;stroke-dasharray:3 5}.cs-hub__hub-core{fill:var(--color-panel-soft);stroke:var(--color-accent-graphic);stroke-width:1.5px}.cs-hub__hub-icon{color:var(--color-ink-inverse)}.cs-hub__hub-label{fill:var(--color-ink-inverse);font-family:var(--font-manrope),sans-serif;letter-spacing:.14em;text-transform:uppercase;font-weight:600}@media (prefers-reduced-motion:no-preference){[data-enter=shown] .cs-hub__hub{transform-box:fill-box;transform-origin:50%;animation:cs-pop .52s var(--ease-settle).2s both}[data-enter=shown] .cs-hub__pill{transform-box:fill-box;transform-origin:50%;animation:cs-pop .46s var(--ease-settle)calc(.42s + var(--i,0)*90ms)both}[data-enter=shown] .cs-hub__beam{animation:cs-fade .6s ease-out calc(.7s + var(--i,0)*90ms)both}[data-enter=shown] .cs-hub__pulse{opacity:1;animation:cs-pulse 2.8s cubic-bezier(.45,0,.55,1)calc(1.4s + var(--i,0)*.4s)infinite both}[data-enter=shown] .cs-fact{animation:cs-pop .48s var(--ease-settle)calc(.15s + var(--i,0)*.11s)both}}.cs-hub__sat{cursor:default;outline:none;transition:opacity .26s}.cs-hub__beam,.cs-hub__pill-box{transition:stroke .2s,stroke-width .2s}:is(.cs-hub:has(.cs-hub__sat:hover) .cs-hub__sat:not(:hover),.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat:focus) .cs-hub__sat:not(:focus)){opacity:.28}.cs-hub__sat:hover .cs-hub__beam,.cs-hub__sat:hover .cs-hub__pill-box{stroke:var(--color-accent-on-dark);stroke-width:2px}.cs-hub:not(:has(.cs-hub__sat:hover)) .cs-hub__sat:focus .cs-hub__beam{stroke:var(--color-accent-on-dark);stroke-width:2px}.cs-hub:not(:has(.cs-hub__sat:hover)) .cs-hub__sat:focus .cs-hub__pill-box{stroke:var(--color-accent-on-dark);stroke-width:2px}.cs-hub:has(.cs-hub__sat:is(:hover,:focus)) .cs-hub__hub-core{fill:#152853}@supports (color:color-mix(in lab, red, red)){.cs-hub:has(.cs-hub__sat:is(:hover,:focus)) .cs-hub__hub-core{fill:color-mix(in srgb,var(--color-accent-graphic)22%,var(--color-panel-soft))}}.cs-hub:has(.cs-hub__sat:is(:hover,:focus)) .cs-hub__hub-core{stroke:var(--color-accent-on-dark)}.cs-hub__caption{min-height:1.5rem;font-size:var(--text-small);justify-content:center;gap:.75rem;margin-top:1rem;font-weight:500;display:flex}.cs-hub__hint{color:var(--color-ink-inverse-muted)}.cs-hub__info{display:none}.cs-hub:has(.cs-hub__sat:is(:hover,:focus)) .cs-hub__hint{display:none}:is(.cs-hub:has(.cs-hub__sat[data-i="0"]:hover) .cs-hub__info[data-i="0"],.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat[data-i="0"]:focus) .cs-hub__info[data-i="0"],.cs-hub:has(.cs-hub__sat[data-i="1"]:hover) .cs-hub__info[data-i="1"],.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat[data-i="1"]:focus) .cs-hub__info[data-i="1"],.cs-hub:has(.cs-hub__sat[data-i="2"]:hover) .cs-hub__info[data-i="2"],.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat[data-i="2"]:focus) .cs-hub__info[data-i="2"],.cs-hub:has(.cs-hub__sat[data-i="3"]:hover) .cs-hub__info[data-i="3"],.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat[data-i="3"]:focus) .cs-hub__info[data-i="3"],.cs-hub:has(.cs-hub__sat[data-i="4"]:hover) .cs-hub__info[data-i="4"],.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat[data-i="4"]:focus) .cs-hub__info[data-i="4"],.cs-hub:has(.cs-hub__sat[data-i="5"]:hover) .cs-hub__info[data-i="5"],.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat[data-i="5"]:focus) .cs-hub__info[data-i="5"],.cs-hub:has(.cs-hub__sat[data-i="6"]:hover) .cs-hub__info[data-i="6"],.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat[data-i="6"]:focus) .cs-hub__info[data-i="6"],.cs-hub:has(.cs-hub__sat[data-i="7"]:hover) .cs-hub__info[data-i="7"],.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat[data-i="7"]:focus) .cs-hub__info[data-i="7"],.cs-hub:has(.cs-hub__sat[data-i="8"]:hover) .cs-hub__info[data-i="8"],.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat[data-i="8"]:focus) .cs-hub__info[data-i="8"],.cs-hub:has(.cs-hub__sat[data-i="9"]:hover) .cs-hub__info[data-i="9"],.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat[data-i="9"]:focus) .cs-hub__info[data-i="9"],.cs-hub:has(.cs-hub__sat[data-i="10"]:hover) .cs-hub__info[data-i="10"],.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat[data-i="10"]:focus) .cs-hub__info[data-i="10"],.cs-hub:has(.cs-hub__sat[data-i="11"]:hover) .cs-hub__info[data-i="11"],.cs-hub:not(:has(.cs-hub__sat:hover)):has(.cs-hub__sat[data-i="11"]:focus) .cs-hub__info[data-i="11"]){display:inline}@media (prefers-reduced-motion:no-preference){.cs-hub__sat:hover .cs-hub__pulse{stroke-width:3px;animation-duration:1.1s;animation-delay:0s}.cs-hub:not(:has(.cs-hub__sat:hover)) .cs-hub__sat:focus .cs-hub__pulse{stroke-width:3px;animation-duration:1.1s;animation-delay:0s}}.about-hero{--about-hero-top:4rem;padding-top:var(--about-hero-top);padding-bottom:4rem;overflow-x:clip}@media (min-width:40rem){.about-hero{--about-hero-top:6rem}}.about-hero__mark{display:none}@media (min-width:64rem){.about-hero__copy{position:relative}.about-hero__mark.brand-ground{z-index:0;aspect-ratio:1;width:min(34rem,100%);display:block;position:absolute;top:calc(100% + 1.5rem);left:-1.25rem;overflow:visible}.about-hero__mark .ground-mark{width:auto;inset:1.25rem}}.about-hero__inner{gap:3rem;min-width:0;display:grid}.about-hero__copy{text-align:center;flex-direction:column;align-items:center;gap:1.5rem;min-width:0;display:flex}.about-hero__title,.legal__title{color:var(--color-ink);font-family:var(--font-sora),var(--font-manrope),sans-serif;letter-spacing:-.03em;font-size:clamp(2.75rem,1.75rem + 4.6vw,5.5rem);font-weight:500;line-height:1.05}.about-hero__lede,.legal__lede{max-width:36rem;color:var(--color-ink-muted);font-size:var(--text-lede);line-height:var(--text-lede--line-height)}.about-hero__badge{justify-content:center;min-width:0;display:flex}@media (min-width:64rem){.about-hero{padding-bottom:5rem}.about-hero__inner{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:4rem}.about-hero__copy{text-align:left;align-items:flex-start;padding-top:2rem}.about-hero__badge{margin-top:calc(-1*var(--about-hero-top));align-self:start}.about-hero__badge .about-badge__strap{height:calc(var(--site-nav-clearance) + 3rem + 30rem);margin-top:-30rem}}.about-lanyard{transform-origin:50% 0;flex-direction:column;align-items:center;width:fit-content;max-width:100%;display:flex}.about-badge__strap{z-index:1;background:linear-gradient(var(--color-accent-graphic),var(--color-accent));transform-origin:50% 0;border-radius:0 0 4px 4px;width:2.25rem;height:7.75rem;margin-bottom:calc(-1.5rem - 3px);position:relative;-webkit-mask-image:linear-gradient(#0000,#000 3rem);mask-image:linear-gradient(#0000,#000 3rem)}.about-badge__swing{transform-origin:50% 1.5rem;flex-direction:column;align-items:center;max-width:100%;display:flex}.about-lanyard[data-ready] .about-badge__swing{cursor:grab;touch-action:pan-y}.about-badge__swing img{-webkit-user-drag:none}.about-lanyard[data-moving]{z-index:35;position:relative}.about-lanyard[data-drag] .about-badge__swing{cursor:grabbing;-webkit-user-select:none;user-select:none}.about-badge-host.brand-ground{width:fit-content;max-width:100%;overflow:visible}.about-badge{border:1px solid var(--color-rule-inverse);background-color:var(--color-panel);border-radius:1.25rem;flex-direction:column;gap:.6rem;width:21rem;max-width:100%;padding:1.25rem;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 60px -24px #080d188c}@supports (color:color-mix(in lab, red, red)){.about-badge{box-shadow:0 30px 60px -24px color-mix(in srgb,var(--color-panel)55%,transparent)}}.about-badge{color:var(--color-ink-inverse)}.about-badge__slot{background-color:var(--color-canvas);border-radius:999px;width:3.5rem;height:.5rem;margin:0 auto .25rem;display:block}.about-badge__head{justify-content:space-between;align-items:center;display:flex}.about-badge__photo{aspect-ratio:10/9;border:1px solid var(--color-rule-inverse);border-radius:var(--radius-control);overflow:hidden}.about-badge__img{object-fit:cover;object-position:50% 29%;width:100%;height:100%}.about-badge__name{font-family:var(--font-sora),var(--font-manrope),sans-serif;letter-spacing:-.02em;font-size:1.5rem;font-weight:500;line-height:1.15}.about-badge__role{color:var(--color-accent-on-dark)}.about-badge__facts{border-top:1px solid var(--color-rule-inverse);gap:.4rem;padding-top:.75rem;display:grid}.about-badge__fact{grid-template-columns:6rem minmax(0,1fr);align-items:baseline;gap:.6rem;display:grid}.about-badge__sheen{background:radial-gradient(circle 13rem at var(--mx,50%)var(--my,0px),#e8edf521,transparent 70%);position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.about-badge__sheen{background:radial-gradient(circle 13rem at var(--mx,50%)var(--my,0px),color-mix(in srgb,var(--color-ink-inverse)13%,transparent),transparent 70%)}}.about-badge__sheen{opacity:0;pointer-events:none}.about-badge-host[data-pointer=in] .about-badge__sheen{opacity:1}.about-read{z-index:1;padding-block:1rem 3.5rem;position:relative}.about-read__inner{flex-direction:column;gap:clamp(1.75rem,3vw,2.5rem);display:flex}.about-read__p{color:var(--color-ink);letter-spacing:-.012em;text-align:left;text-wrap:pretty;font-size:clamp(1.3125rem,1.05rem + .9vw,1.75rem);line-height:1.55}@media (min-width:40rem){.about-read{padding-block:1.5rem 4.5rem}}.about-pen{-webkit-box-decoration-break:clone;box-decoration-break:clone;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 12' preserveAspectRatio='none'%3E%3Cpath d='M3 8.5C38 5.5 74 9.8 112 7.2S186 5 237 7.6' fill='none' stroke='%232563eb' stroke-width='3.2' stroke-linecap='round'/%3E%3C/svg%3E");background-position:0 100%;background-repeat:no-repeat;background-size:100% .42em;padding-bottom:.14em}.path__grid{gap:3rem;min-width:0;display:grid}.path__tools{border:0;flex-direction:column;align-items:stretch;gap:1.25rem;min-width:0;margin:0;padding:0;display:flex}.path__legend{float:left;flex-direction:column;gap:.375rem;width:100%;padding:0;display:flex}.path__legend+*{clear:both}.path__groups{flex-direction:column;align-items:flex-start;gap:1.25rem;min-width:0;display:flex}.path__group{flex-direction:column;gap:.5rem;min-width:0;display:flex}.path__chips{flex-wrap:wrap;gap:.4rem;display:flex}.path-tool{border:1px solid var(--color-rule-inverse);border-radius:var(--radius-control);color:var(--color-ink-inverse);cursor:pointer;font-size:var(--text-small);align-items:center;gap:.4rem;padding:.4rem .75rem;transition:border-color .2s,background-color .2s;display:inline-flex;position:relative}.path-tool__input{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.path-tool:has(.path-tool__input:checked){border-color:var(--color-accent-on-dark);background-color:#60a5fa29}@supports (color:color-mix(in lab, red, red)){.path-tool:has(.path-tool__input:checked){background-color:color-mix(in srgb,var(--color-accent-on-dark)16%,transparent)}}.path-tool:has(.path-tool__input:focus-visible){outline:2px solid var(--color-accent-on-dark);outline-offset:2px}@media (hover:hover) and (pointer:fine){.path-tool:hover{border-color:var(--color-accent-on-dark)}}.path__summary{min-height:1.5rem}.path-summary{color:var(--color-ink-inverse);font-size:var(--text-small);line-height:1.5;display:none}.path-summary__tool{color:var(--color-accent-on-dark);font-weight:600}@media (max-width:63.999rem){.path:has(.path-tool__input[value=all]:checked) .path-summary--all{color:var(--color-ink-inverse-muted);display:block}.path__summary{min-height:calc(var(--text-meta)*1.5)}.path-summary{font-size:var(--text-meta);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.path__tools{top:var(--site-nav-clearance);z-index:2;border-bottom:1px solid var(--color-rule-inverse);background-color:var(--color-panel);gap:.6rem;margin-inline:-1.5rem;padding:.75rem 1.5rem;position:sticky}.path__groups{overscroll-behavior-x:contain;scrollbar-width:none;flex-direction:row;align-items:center;gap:.4rem;margin-inline:-1.5rem;padding-inline:1.5rem;overflow-x:auto}.path__groups::-webkit-scrollbar{display:none}.path__group,.path__chips{display:contents}.path__legend,.path__group-name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.path-tool{background-color:var(--color-panel);flex:none;min-height:2.75rem}}@media (min-width:40rem) and (max-width:63.999rem){.path__tools,.path__groups{margin-inline:-2rem;padding-inline:2rem}.path__groups{margin-inline:-2rem}}@media (min-width:64rem){.path__grid{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:start;gap:4rem}}@media (min-width:64rem) and (max-width:79.999rem) and (min-height:58.25rem),(min-width:80rem) and (min-height:52.5rem){.path__tools{top:calc(var(--site-nav-clearance) + 2rem);position:sticky}}.path{--path-ahead:var(--color-ink-inverse);--path-current:var(--color-accent-on-dark);--path-passed:var(--color-accent-graphic);--path-track:var(--color-rule-inverse-strong);--path-gap:3.5rem;--path-dot:.875rem;--path-dot-top:.15rem}.path-route{gap:var(--path-gap);min-width:0;display:grid}.path-stop{min-width:0;padding-left:2.25rem;position:relative}.path-stop__node{top:var(--path-dot-top);width:var(--path-dot);height:var(--path-dot);border:1.5px solid var(--path-ahead);background-color:var(--color-panel);border-radius:50%;position:absolute;left:0}.path-stop__seg{top:calc(var(--path-dot-top) + var(--path-dot) + .3rem);bottom:calc(-1*(var(--path-gap) + var(--path-dot-top) - .3rem));left:calc(var(--path-dot)/2 - .75px);background-color:var(--path-track);width:1.5px;position:absolute}.path-stop:last-child .path-stop__seg{display:none}.path-stop__body{border-radius:var(--radius-surface);border:1px solid #0000;flex-direction:column;gap:.5rem;min-width:0;max-width:46rem;margin:-1rem -1.25rem;padding:1rem 1.25rem;transition:border-color .24s,background-color .24s;display:flex}.path-stop__meta{flex-wrap:wrap;align-items:center;gap:.4rem .75rem;display:flex}.path-stop__tag{background-color:var(--color-accent-on-dark);color:var(--color-panel);opacity:var(--stop-on,0);border-radius:999px;padding:.1rem .5rem;transition:opacity .24s}.path-stop__title{color:var(--color-ink-inverse);font-family:var(--font-sora),var(--font-manrope),sans-serif;font-size:var(--text-card-title);letter-spacing:-.02em;font-weight:500;line-height:1.2;transition:color .24s}.path-stop__points{gap:.5rem;margin-top:.5rem;padding-left:1.1rem;list-style:outside;display:grid}.path-stop__points li::marker{color:var(--color-accent-on-dark)}.path-stop__projects{flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.path:has(.path-tool__input:checked:not([value=all])) .path-stop{--stop-dim:1}@media (hover:hover) and (pointer:fine){.path:has(.path-tool:not(.path-tool--all):hover) .path-stop{--stop-dim:1}}.path-stop .path-stop__body{border-color:#60a5fa}@supports (color:color-mix(in lab, red, red)){.path-stop .path-stop__body{border-color:color-mix(in srgb,var(--color-accent-on-dark)calc(var(--stop-on,0)*100%),transparent)}}.path-stop .path-stop__body{background-color:#60a5fa}@supports (color:color-mix(in lab, red, red)){.path-stop .path-stop__body{background-color:color-mix(in srgb,var(--color-accent-on-dark)calc(var(--stop-on,0)*9%),transparent)}}.path-stop .path-stop__node{opacity:max(calc(1 - var(--stop-dim,0)*.6),var(--stop-on,0));outline:calc(var(--stop-on,0)*2px)solid var(--color-accent-on-dark);outline-offset:3px;transition:opacity .24s}.path-stop .path-stop__title{color:#60a5fa}@supports (color:color-mix(in lab, red, red)){.path-stop .path-stop__title{color:color-mix(in srgb,var(--color-accent-on-dark)calc(var(--stop-on,0)*100%),color-mix(in srgb,var(--color-ink-inverse-muted)calc(var(--stop-dim,0)*100%),var(--color-ink-inverse)))}}.page-header__standfirst{font-family:var(--font-sora),var(--font-manrope),sans-serif;letter-spacing:-.022em;text-wrap:balance;font-size:clamp(1.75rem,1.3rem + 1.6vw,2.5rem);font-weight:500;line-height:1.2}@supports (animation-timeline:view()){.path-stop{view-timeline:--path-stop block;view-timeline-inset:35% 64%}.path-stop__node{animation:step-end forwards path-node-passed,linear path-node-current;animation-timeline:--path-stop,--path-stop;animation-range:cover,cover}.path-stop__seg{animation:step-end forwards path-seg-passed;animation-timeline:--path-stop;animation-range:cover}}@media (prefers-reduced-motion:no-preference){.about-hero__copy>*,.legal__head>*{animation:enter-rise .52s var(--ease-settle)calc(var(--hero-seq-offset) + var(--seq-delay,0s))both}.about-hero__badge .about-lanyard{--badge-at:calc(var(--hero-seq-offset) + .12s);animation:about-badge-drop .42s var(--ease-expo-out)var(--badge-at)both,about-badge-sway 2.2s var(--badge-sway)var(--badge-at)both}@media (hover:hover) and (pointer:fine){.about-badge{transform-origin:50% 1.5rem;transition:transform .6s var(--ease-expo-out)}.about-badge-host[data-pointer=in] .about-badge{transform:perspective(1000px)rotateX(calc(var(--py,0)*-6deg))rotateY(calc(var(--px,0)*8deg))}.about-lanyard[data-moving] .about-badge-host .about-badge{transform:none}.about-badge__sheen{transition:opacity .3s}}[data-enter=pending] .about-pen{background-size:0% .42em}[data-enter=shown] .about-pen{animation:about-pen-write .82s var(--ease-expo-out)calc(.45s + var(--k,0)*.26s)both}.path__grid[data-enter=pending]:focus-within{opacity:1;transform:none}}.xray{flex-direction:column;gap:1rem;min-width:0;max-width:44rem;display:flex}.xray__input{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.xray__frame{--lens:clamp(4.25rem,8vw,6.75rem);--lx:var(--lens-x);--ly:var(--lens-y);aspect-ratio:560/380;border:1px solid var(--color-rule-inverse);border-radius:var(--radius-surface);background-color:var(--color-panel-soft)}.xray__frame[data-pointer=in]{--lx:var(--mx);--ly:var(--my)}.xray__layer{width:100%;height:100%;display:block;position:absolute;inset:0}.xray__layer--ui{-webkit-mask-image:radial-gradient(circle var(--lens)at var(--lx)var(--ly),transparent calc(100% - 1px),#000 100%);-webkit-mask-image:radial-gradient(circle var(--lens)at var(--lx)var(--ly),transparent calc(100% - 1px),#000 100%);-webkit-mask-image:radial-gradient(circle var(--lens)at var(--lx)var(--ly),transparent calc(100% - 1px),#000 100%);-webkit-mask-image:radial-gradient(circle var(--lens)at var(--lx)var(--ly),transparent calc(100% - 1px),#000 100%);mask-image:radial-gradient(circle var(--lens)at var(--lx)var(--ly),transparent calc(100% - 1px),#000 100%)}.xray__layer--sys{-webkit-mask-image:radial-gradient(circle var(--lens)at var(--lx)var(--ly),#000 calc(100% - 1px),transparent 100%);-webkit-mask-image:radial-gradient(circle var(--lens)at var(--lx)var(--ly),#000 calc(100% - 1px),transparent 100%);-webkit-mask-image:radial-gradient(circle var(--lens)at var(--lx)var(--ly),#000 calc(100% - 1px),transparent 100%);-webkit-mask-image:radial-gradient(circle var(--lens)at var(--lx)var(--ly),#000 calc(100% - 1px),transparent 100%);mask-image:radial-gradient(circle var(--lens)at var(--lx)var(--ly),#000 calc(100% - 1px),transparent 100%)}.xray__ring{top:var(--ly);left:var(--lx);width:calc(var(--lens)*2);aspect-ratio:1;border:1.5px solid var(--color-accent-on-dark);border-radius:50%;position:absolute;box-shadow:0 0 0 6px #60a5fa1f}@supports (color:color-mix(in lab, red, red)){.xray__ring{box-shadow:0 0 0 6px color-mix(in srgb,var(--color-accent-on-dark)12%,transparent)}}.xray__ring{pointer-events:none;translate:-50% -50%}.xray:has(.xray__input:checked) .xray__layer--sys{-webkit-mask-image:none;mask-image:none}:is(.xray:has(.xray__input:checked) .xray__layer--ui,.xray:has(.xray__input:checked) .xray__ring){opacity:0}.xray__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;display:flex}.xray__switch{border-radius:var(--radius-control);color:var(--color-ink-inverse);cursor:pointer;font-size:var(--text-small);align-items:center;gap:.6rem;padding:.25rem .125rem;font-weight:500;display:inline-flex}.xray:has(.xray__input:focus-visible) .xray__switch{outline:2px solid var(--color-accent-on-dark);outline-offset:3px}.xray__track{border:1.5px solid var(--color-accent-on-dark);border-radius:999px;flex:none;width:2.25rem;height:1.25rem;position:relative}.xray__track:after{background-color:var(--color-accent-on-dark);content:"";border-radius:50%;width:.6rem;height:.6rem;position:absolute;top:50%;left:.2rem;transform:translateY(-50%)}.xray:has(.xray__input:checked) .xray__track{background-color:var(--color-accent-on-dark)}.xray:has(.xray__input:checked) .xray__track:after{background-color:var(--color-panel);transform:translate(.95rem,-50%)}.xray__hint{color:var(--color-ink-inverse-muted)}@media not all and (hover:hover) and (pointer:fine){.xray__hint{display:none}}.xr-frame,.xr-line,.xr-soft-stroke{fill:none;stroke-width:1.5px}.xr-frame,.xr-line{stroke:#e8edf594}@supports (color:color-mix(in lab, red, red)){.xr-frame,.xr-line{stroke:color-mix(in srgb,var(--color-ink-inverse)58%,transparent)}}.xr-frame--dim{stroke:#e8edf542}@supports (color:color-mix(in lab, red, red)){.xr-frame--dim{stroke:color-mix(in srgb,var(--color-ink-inverse)26%,transparent)}}.xr-soft-stroke{stroke:#e8edf557}@supports (color:color-mix(in lab, red, red)){.xr-soft-stroke{stroke:color-mix(in srgb,var(--color-ink-inverse)34%,transparent)}}.xr-dot{fill:#e8edf566}@supports (color:color-mix(in lab, red, red)){.xr-dot{fill:color-mix(in srgb,var(--color-ink-inverse)40%,transparent)}}.xr-fill{fill:#e8edf5b8}@supports (color:color-mix(in lab, red, red)){.xr-fill{fill:color-mix(in srgb,var(--color-ink-inverse)72%,transparent)}}.xr-soft{fill:#e8edf542}@supports (color:color-mix(in lab, red, red)){.xr-soft{fill:color-mix(in srgb,var(--color-ink-inverse)26%,transparent)}}.xr-accent{fill:var(--color-accent-on-dark)}.xr-ink{fill:none;stroke:var(--color-panel);stroke-linecap:round;stroke-linejoin:round;stroke-width:2px}.xr-wire{fill:none;stroke:var(--color-accent-on-dark);stroke-linecap:round;stroke-width:1.75px}.xr-node{fill:var(--color-panel);stroke:#e8edf599}@supports (color:color-mix(in lab, red, red)){.xr-node{stroke:color-mix(in srgb,var(--color-ink-inverse)60%,transparent)}}.xr-node{stroke-width:1.5px}.xr-node--hub{stroke:var(--color-accent-on-dark);stroke-width:2px}.xr-label{fill:var(--color-ink-inverse);font-family:var(--font-sora),var(--font-manrope),sans-serif;text-anchor:middle;font-size:14px;font-weight:500}.xr-label--hub{fill:var(--color-accent-on-dark);font-size:16px}.xr-meta{fill:var(--color-ink-inverse-muted);font-family:var(--font-manrope),sans-serif;letter-spacing:.02em;text-anchor:middle;font-size:11px}.xr-meta--wire{fill:var(--color-accent-on-dark);text-anchor:start}@media (prefers-reduced-motion:no-preference){.xray__frame:not([data-pointer=in]){animation:xray-sweep 16s var(--ease-standard)infinite}.xray:has(.xray__input:checked) .xray__frame{animation:none}.xr-wire{stroke-dasharray:5 7;animation:1.6s linear infinite xray-flow}.xray__frame[data-pointer=in] .xr-wire{animation-play-state:paused}.xray:has(.xray__input:checked) .xr-wire{animation-play-state:paused}}.legal-ground{--color-ink-muted:var(--color-ink-muted-deep);clip-path:inset(0)}.legal-ground .ground-mark,.legal-ground .ground-torch{position:fixed}.legal-ground .ground-torch .ground-mark{position:absolute}.legal-ground .ground-mark{--legal-mark:min(34rem,70vw);right:calc(var(--legal-mark)*-.082);bottom:calc(var(--legal-mark)*-.035);width:var(--legal-mark)}@media (max-width:39.99rem){.legal-ground .ground-mark{width:115vw;bottom:-5rem;right:-40vw}.legal-ground>.ground-mark{opacity:.08}}.legal{padding-block:4rem 5rem}@media (min-width:40rem){.legal{padding-block:6rem 7rem}}.legal__inner{flex-direction:column;gap:clamp(2.5rem,5vw,3.5rem);min-width:0;display:flex}.legal__head,.legal__section{flex-direction:column;gap:1.25rem;min-width:0;display:flex}.legal__head{gap:1.5rem}.legal__lede{max-width:none}.legal__lede strong{color:var(--color-ink);font-weight:600}.legal__details{flex-direction:column;gap:.25rem;display:flex}.legal__detail{flex-wrap:wrap;column-gap:.5rem;display:flex}.legal__detail dt{color:var(--color-ink-muted);font-size:var(--text-reading);line-height:var(--text-reading--line-height)}.legal__detail dt:after{content:":"}.legal__detail dd{color:var(--color-ink);font-size:var(--text-reading);font-weight:600;line-height:var(--text-reading--line-height);overflow-wrap:anywhere}.legal__heading{color:var(--color-ink);font-size:var(--text-card-title);letter-spacing:var(--text-card-title--letter-spacing);font-weight:500;line-height:var(--text-card-title--line-height)}.legal__text{color:var(--color-ink-muted);font-size:var(--text-reading);line-height:var(--text-reading--line-height);text-wrap:wrap}.legal__strong{color:var(--color-ink);overflow-wrap:anywhere;font-weight:600}.site-footer{flex-direction:column;align-items:center;gap:1.25rem;padding:1.5rem 1rem;display:flex}.site-footer__brand{align-items:center;gap:1rem;display:flex}@media (min-width:40rem){.site-footer{flex-direction:row;justify-content:space-between;gap:2rem;padding:1.125rem clamp(1.5rem,3vw,2.5rem)}}#main:focus{outline:none}.site-footer__mark{border-radius:999px;display:inline-flex}.site-footer__mark:focus-visible,.site-footer__top:focus-visible{outline:2px solid var(--color-accent-on-dark);outline-offset:3px}.site-footer__top{background-color:var(--color-accent-on-dark);width:2.5rem;height:2.5rem;color:var(--color-frame-dark);border-radius:999px;place-items:center;display:grid}.site-footer__top svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.25px;width:1.15rem;height:1.15rem}.site-footer__top:hover{background-color:#88bcfb}@supports (color:color-mix(in lab, red, red)){.site-footer__top:hover{background-color:color-mix(in srgb,var(--color-accent-on-dark)75%,white)}}@media (prefers-reduced-motion:no-preference){.site-footer__top svg{transition:transform .25s var(--ease-expo-out)}.site-footer__top:hover svg,.site-footer__top:focus-visible svg{transform:translateY(-2px)}}.work-layers__header{align-items:center;gap:2.5rem;min-width:0;display:grid}@media (min-width:64rem){.work-layers__header{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:4rem}}.work-layers__copy{flex-direction:column;gap:1.5rem;min-width:0;display:flex}@media (max-width:63.999rem){.work-layers__copy{text-align:center;align-items:center}}.work-layers__art{flex-direction:column;justify-self:center;gap:1.25rem;width:100%;min-width:0;max-width:34rem;display:flex}@media (min-width:64rem){.work-layers__art{justify-self:stretch;max-width:none}}.work-layers__radios{border:0;margin:0;padding:0}.work-layers__radios input{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.brand-ground.work-layers__stack{--spread:0cqw;--tilt:0;width:100%;margin-bottom:3.5rem;position:relative;overflow:visible;container-type:inline-size}.work-layer{--chosen:0;--dim:0;z-index:var(--z);pointer-events:none;transform:translate(calc(var(--tilt)*(var(--i) - 1.5)*1px),calc(var(--i)*var(--spread)));position:absolute;inset:0}.work-layer svg{width:100%;height:100%;display:block;overflow:visible}.work-layer__lift>g{opacity:calc(1 - var(--dim)*.62);transition:opacity .25s}.work-layer__plate,.work-layer__name,.work-layer__count{cursor:pointer;pointer-events:visiblePainted}.work-layer__plate{fill:var(--color-panel);stroke:var(--color-rule-inverse-strong);stroke-width:calc(1.25px + var(--chosen)*1.75px);vector-effect:non-scaling-stroke;transition:stroke .2s}.work-layer__line,.work-layer__wire,.work-layer__accent-line{fill:none;stroke:#e8edf573}@supports (color:color-mix(in lab, red, red)){.work-layer__line,.work-layer__wire,.work-layer__accent-line{stroke:color-mix(in srgb,var(--color-ink-inverse)45%,transparent)}}.work-layer__line,.work-layer__wire,.work-layer__accent-line{stroke-width:1.1px;vector-effect:non-scaling-stroke}.work-layer__wire{stroke-dasharray:3 3}.work-layer__accent-line{stroke:var(--color-accent-on-dark)}.work-layer__dot,.work-layer__soft{fill:#e8edf538}@supports (color:color-mix(in lab, red, red)){.work-layer__dot,.work-layer__soft{fill:color-mix(in srgb,var(--color-ink-inverse)22%,transparent)}}.work-layer__fill{fill:#e8edf5b3}@supports (color:color-mix(in lab, red, red)){.work-layer__fill{fill:color-mix(in srgb,var(--color-ink-inverse)70%,transparent)}}.work-layer__accent{fill:var(--color-accent-on-dark)}.work-layer__leader{fill:none;stroke:#2563eb}@supports (color:color-mix(in lab, red, red)){.work-layer__leader{stroke:color-mix(in srgb,var(--color-accent-graphic)calc(var(--chosen)*100%),var(--color-rule-strong))}}.work-layer__leader{stroke-width:1px}.work-layer__name{fill:#5f6b7a}@supports (color:color-mix(in lab, red, red)){.work-layer__name{fill:color-mix(in srgb,var(--color-ink-muted)calc(var(--dim)*100%),color-mix(in srgb,var(--color-accent)calc(var(--chosen)*100%),var(--color-ink)))}}.work-layer__name{font-family:var(--font-sora),var(--font-manrope),sans-serif;font-size:15px;font-weight:600}.work-layer__count{fill:var(--color-ink-muted);letter-spacing:.04em;font-size:12px}.work-layer:hover .work-layer__plate{stroke:var(--color-accent-on-dark);stroke-width:2px}.work-layer:hover .work-layer__name{fill:var(--color-accent)}.work-layers__stack:has(.work-layer:hover) .work-layer:not(:hover){--dim:1}.work-layers__state{z-index:11;top:calc(var(--rest-bottom) + .75rem);min-height:2.75rem;color:var(--color-ink-muted);font-size:var(--text-small);text-align:center;transform:translateY(calc(var(--last)*var(--spread)));flex-wrap:wrap;justify-content:center;align-items:center;gap:.25rem .75rem;display:flex;position:absolute;left:0;right:0}.work-layers__state strong{color:var(--color-ink)}.work-layers__state>p{display:contents}.work-layers__state--kind,.work-layers__reset,.work-layers__hint--pointer{display:none}@media (hover:hover) and (pointer:fine){.work-layers__hint--pointer{display:inline}.work-layers__hint--touch{display:none}}.work-layers__reset{border:1px solid var(--color-rule-strong);border-radius:var(--radius-control);min-height:2.75rem;color:var(--color-ink);cursor:pointer;align-items:center;padding-inline:.85rem}.work-layers__reset:hover{border-color:var(--color-ink)}:is(.work-layers:has(#work-kind-all:focus-visible) .work-layers__reset,.work-layers:has(#work-kind-all:focus-visible) .work-layers__chip--all){outline:2px solid var(--color-accent);outline-offset:2px}.work-layers__chips{display:none}.work-layers__chip{border:1px solid var(--color-rule-strong);border-radius:var(--radius-control);min-height:2.75rem;color:var(--color-ink);font-size:var(--text-small);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem .85rem;display:inline-flex}.work-layers__chip-count{opacity:.7}.work-layers__chip--all{border-style:dashed;grid-column:1/-1;justify-content:center}.work-layers:has(#work-kind-all:checked) .work-layers__chip--all{border-style:solid;border-color:var(--color-ink);background-color:var(--color-ink);color:var(--color-surface)}@media (max-width:39.999rem),(max-width:63.999rem) and (hover:none){.work-layer__name,.work-layer__count,.work-layer__leader{display:none}.work-layer svg{transform-origin:34% 0;transform:translate(16%)scale(1.15)}.brand-ground.work-layers__stack{margin-bottom:1.5rem;overflow-x:clip}.work-layers__stack .work-layers__state{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;min-height:0;position:absolute;overflow:hidden}.work-layers__chips{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;width:100%;display:grid}}@media (prefers-reduced-motion:no-preference){.work-layers:has(.work-layers__radios input:focus) .project-grid__item.page-seq{animation-delay:calc(var(--seq-pos,0)*60ms)}.work-layers__stack[data-pointer=in]{--spread:calc(22*100cqw/var(--box,560));--tilt:calc(var(--px,0)*14)}.work-layer,.work-layers__state{transition:transform 1s cubic-bezier(.45,0,.2,1),opacity .25s}.work-layers__stack[data-pointer=in] .work-layer,.work-layers__stack[data-pointer=in] .work-layers__state{transition:transform .6s var(--ease-expo-out),opacity .25s ease}.work-layer__lift{animation:work-layer-nudge .65s var(--ease-expo-out)backwards;animation-delay:calc(.9s + var(--i)*.16s)}}@media (forced-colors:active){.work-layers__chip,.work-layers__reset{border-width:2px}}.more-work{min-width:0;display:flex;position:relative}.more-work__item{min-width:0}.more-work__link{border:1px solid var(--color-rule-inverse);border-radius:var(--radius-surface);background-color:var(--color-card-dark);flex-direction:column;min-width:0;height:100%;transition:border-color .24s;display:flex;position:relative;overflow:hidden}.more-work__link:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.more-work__art{background-color:var(--color-panel);display:block;overflow:hidden}.more-work__label,.more-work__cue{color:var(--color-accent-on-dark)}.more-work-end{align-items:center;gap:1rem;margin-bottom:2.5rem;display:flex}.more-work-end__rule{background-color:var(--color-rule);flex:1;height:1px;position:relative}.more-work-end__rule:after{background-color:var(--color-accent);content:"";transform-origin:0;position:absolute;inset:0}.more-work-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem 2rem;margin-bottom:2rem;display:flex}@media (min-width:40rem){.more-work-end{margin-bottom:3rem}.more-work-head{margin-bottom:2.5rem}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.more-work-end__rule:after{animation:linear both more-work-rule;animation-timeline:view();animation-range:entry 40% cover 50%}}}.more-work__problem{color:var(--color-ink-inverse-muted)}.more-work__title,.more-work__folded-title{color:var(--color-ink-inverse);font-family:var(--font-sora),var(--font-manrope),sans-serif;letter-spacing:-.02em;font-weight:500;line-height:1.2;transition:color .2s}.more-work__title{font-size:var(--text-card-title)}.more-work__link:is(:hover,:focus-visible) .more-work__title,.more-work__link:is(:hover,:focus-visible) .more-work__folded-title{color:var(--color-accent-on-dark)}.more-work__text{flex-direction:column;flex:1;gap:.5rem;min-width:0;display:flex}.more-work__cue{align-items:center;gap:.5rem;margin-top:auto;padding-top:.5rem;display:inline-flex}.more-work__arrow{transition:transform .24s var(--ease-settle);display:inline-block}.more-work__link:focus-visible .more-work__arrow{transform:translate(.25rem)}@media (hover:hover) and (pointer:fine){.more-work__link:hover{border-color:var(--color-accent-on-dark)}.more-work__link:hover .more-work__arrow{transform:translate(.25rem)}}@media (max-width:63.99rem){.more-work{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;flex-direction:row;align-items:stretch;gap:1rem;margin-inline:-1.5rem;padding:0 1.5rem .5rem;overflow-x:auto}.more-work__item{scroll-snap-align:center;flex:none;width:min(80%,22rem)}.more-work__link:focus-visible{outline-color:var(--color-accent-on-dark);outline-offset:-3px}.more-work__folded,.more-work__art--wide{display:none}.more-work__open{flex-direction:column;flex:1;display:flex}.more-work__art--card{aspect-ratio:4/3;border-bottom:1px solid var(--color-rule-inverse);flex:none;width:100%}.more-work__text{padding:1.25rem}}@media (min-width:40rem) and (max-width:63.99rem){.more-work{margin-inline:-2rem;padding-inline:2rem}}@media (min-width:64rem){.more-work{flex-direction:row;gap:1rem;height:34rem;container-type:inline-size}.more-work__item{flex:1 1 0}.more-work__art--card{display:none}.more-work__folded{opacity:1;flex-direction:column;width:calc(19.2308cqw - .384615rem);display:flex;position:absolute;top:0;bottom:0;left:0}.more-work__art--thumb{aspect-ratio:1;border-bottom:1px solid var(--color-rule-inverse);flex:none;width:100%}.more-work__foot{flex-direction:column;flex:1;gap:.375rem;min-width:0;padding:1.25rem;display:flex}.more-work__folded-title{-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:.9375rem;display:-webkit-box;overflow:hidden}.more-work__open{opacity:0;flex-direction:column;width:calc(61.5385cqw - 1.23077rem);display:flex;position:absolute;top:0;bottom:0;left:0}.more-work__art--wide{aspect-ratio:3;border-bottom:1px solid var(--color-rule-inverse);flex:none;width:100%}.more-work__text{padding:1.5rem}:is(.more-work[data-active="0"] .more-work__item[data-k="0"],.more-work[data-active="1"] .more-work__item[data-k="1"],.more-work[data-active="2"] .more-work__item[data-k="2"],.more-work:not([data-active]):not(:has(.more-work__item:is(:hover,:focus-within))) .more-work__item[data-k="0"],.more-work:not([data-active]):not(:has(.more-work__item:hover)) .more-work__item:focus-within,.more-work:not([data-active]) .more-work__item:hover){flex-grow:3.2}:is(.more-work[data-active="0"] .more-work__item[data-k="0"] .more-work__folded,.more-work[data-active="1"] .more-work__item[data-k="1"] .more-work__folded,.more-work[data-active="2"] .more-work__item[data-k="2"] .more-work__folded,.more-work:not([data-active]):not(:has(.more-work__item:is(:hover,:focus-within))) .more-work__item[data-k="0"] .more-work__folded,.more-work:not([data-active]):not(:has(.more-work__item:hover)) .more-work__item:focus-within .more-work__folded,.more-work:not([data-active]) .more-work__item:hover .more-work__folded){opacity:0}:is(.more-work[data-active="0"] .more-work__item[data-k="0"] .more-work__open,.more-work[data-active="1"] .more-work__item[data-k="1"] .more-work__open,.more-work[data-active="2"] .more-work__item[data-k="2"] .more-work__open,.more-work:not([data-active]):not(:has(.more-work__item:is(:hover,:focus-within))) .more-work__item[data-k="0"] .more-work__open,.more-work:not([data-active]):not(:has(.more-work__item:hover)) .more-work__item:focus-within .more-work__open,.more-work:not([data-active]) .more-work__item:hover .more-work__open){opacity:1}}@media (min-width:80rem){.more-work__foot,.more-work__text{padding:1.75rem}.more-work__folded-title{font-size:var(--text-body)}}@media (prefers-reduced-motion:no-preference) and (min-width:64rem){.more-work__item{transition:flex-grow .65s var(--ease-standard)}.more-work__open{transition:opacity .26s}.more-work__folded{transition:opacity .32s 60ms}:is(.more-work[data-active="0"] .more-work__item[data-k="0"] .more-work__folded,.more-work[data-active="1"] .more-work__item[data-k="1"] .more-work__folded,.more-work[data-active="2"] .more-work__item[data-k="2"] .more-work__folded,.more-work:not([data-active]):not(:has(.more-work__item:is(:hover,:focus-within))) .more-work__item[data-k="0"] .more-work__folded,.more-work:not([data-active]):not(:has(.more-work__item:hover)) .more-work__item:focus-within .more-work__folded,.more-work:not([data-active]) .more-work__item:hover .more-work__folded){transition:opacity .26s}:is(.more-work[data-active="0"] .more-work__item[data-k="0"] .more-work__open,.more-work[data-active="1"] .more-work__item[data-k="1"] .more-work__open,.more-work[data-active="2"] .more-work__item[data-k="2"] .more-work__open,.more-work:not([data-active]):not(:has(.more-work__item:is(:hover,:focus-within))) .more-work__item[data-k="0"] .more-work__open,.more-work:not([data-active]):not(:has(.more-work__item:hover)) .more-work__item:focus-within .more-work__open,.more-work:not([data-active]) .more-work__item:hover .more-work__open){transition:opacity .38s}}.ambient-host{--ambient-bg:var(--color-canvas);--ambient-line:var(--color-accent-graphic);--ambient-cap:.08;--ambient-fade:1;isolation:isolate;position:relative}.ambient-ground{z-index:-1;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.brand-ground{isolation:isolate;position:relative;overflow:hidden}.ground-mark{z-index:-1;color:var(--color-accent);opacity:.06;pointer-events:none;position:absolute}.ground-mark svg{width:100%;height:auto;display:block}.ground-torch{z-index:-1;opacity:0;pointer-events:none;-webkit-mask-image:radial-gradient(circle 15rem at var(--mx,50%)var(--my,50%),#000 10%,transparent 100%);-webkit-mask-image:radial-gradient(circle 15rem at var(--mx,50%)var(--my,50%),#000 10%,transparent 100%);-webkit-mask-image:radial-gradient(circle 15rem at var(--mx,50%)var(--my,50%),#000 10%,transparent 100%);-webkit-mask-image:radial-gradient(circle 15rem at var(--mx,50%)var(--my,50%),#000 10%,transparent 100%);mask-image:radial-gradient(circle 15rem at var(--mx,50%)var(--my,50%),#000 10%,transparent 100%);position:absolute;inset:0}.ground-torch .ground-mark{opacity:.17}.brand-ground[data-pointer=in] .ground-torch{opacity:1}.contact-ground{--color-ink-muted:var(--color-ink-muted-deep)}.contact-ground .ground-mark{width:min(44rem,95vw);bottom:-14rem;right:-6rem}@media (max-width:39.99rem){.contact-ground .ground-mark{width:130vw;bottom:-6rem;right:-45vw}.contact-ground>.ground-mark{opacity:.08}}.contact-word{color:var(--color-accent);font-family:var(--font-sora),var(--font-manrope),sans-serif;letter-spacing:-.045em;text-align:center;font-size:clamp(3.25rem,10vw,5.5rem);font-weight:500;line-height:.9}.page-title{font-size:clamp(2.75rem,1.75rem + 4.6vw,5.5rem);line-height:var(--text-display--line-height);letter-spacing:var(--text-display--letter-spacing)}.proximity-word__word{white-space:nowrap;display:inline-block}@media (prefers-reduced-motion:no-preference){.brand-ground .ground-torch{transition:opacity .3s}.brand-ground .ground-mark{translate:calc(var(--px,0)*-18px)calc(var(--py,0)*-12px);transition:translate .7s var(--ease-expo-out)}.proximity-word [data-letter]{transition:font-weight .22s ease-out}}.rising-heading__word{vertical-align:top;margin-bottom:-.14em;padding-bottom:.14em;display:inline-block;overflow:clip}.rising-heading__in{display:inline-block}@media (prefers-reduced-motion:no-preference){.rising-heading__in{animation:heading-rise .8s var(--ease-expo-out)calc(var(--hero-seq-offset,0s) + .12s + var(--w,0)*80ms)both}[data-enter=pending] .rising-heading__in{animation:none;transform:translateY(105%)}[data-enter=shown] .rising-heading__in{animation:heading-rise .8s var(--ease-expo-out)calc(.15s + var(--w,0)*80ms)both}}.contact-dir{width:100%;min-width:0;max-width:36rem;margin-inline:auto;list-style:none;display:grid}.contact-dir__feature,.contact-dir__item{border-bottom:1px solid #7d8ca066;grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:.25rem 1rem;min-width:0;padding-block:1.25rem;display:grid}@supports (color:color-mix(in lab, red, red)){.contact-dir__feature,.contact-dir__item{border-bottom:1px solid color-mix(in oklab,var(--color-rule-strong)40%,transparent)}}.contact-dir__feature,.contact-dir__item{text-align:left}.contact-dir>:last-child{border-bottom:0}.contact-dir__text{display:contents}.contact-dir__feature>h3,.contact-dir__text>h3{grid-area:1/1}.contact-dir__preview{display:none}.contact-dir__preview-page{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.contact-dir__action{text-align:right;grid-area:1/2;justify-self:end;min-width:0}.contact-dir__feature>:not(h3,.contact-dir__action),.contact-dir__text>:not(h3){grid-column:1/-1}@media (min-width:40rem) and (max-width:63.99rem){.contact-dir{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:0;max-width:46rem}.contact-dir>:nth-child(odd){padding-right:2.5rem}.contact-dir__feature,.contact-dir__item,.contact-dir__text{flex-direction:column;align-items:flex-start;gap:.25rem;display:flex}.contact-dir__feature,.contact-dir__item{padding-block:1.75rem}.contact-dir>:nth-child(n+3){border-bottom:0}.contact-dir__action{text-align:left;margin-top:auto;padding-top:.5rem}}@media (min-width:64rem){.contact-dir{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:4rem;max-width:none}.contact-dir__feature{border-bottom:0;flex-direction:column;grid-area:1/1/span 3/span 5;align-self:stretch;align-items:flex-start;gap:.25rem;padding-top:1.25rem;padding-bottom:0;display:flex}.contact-dir__item{grid-column:6/span 7;grid-template-columns:minmax(0,1fr) auto;gap:0 1.5rem}.contact-dir__text{flex-direction:column;grid-column:1;align-items:flex-start;gap:.25rem;display:flex}.contact-dir__action{text-align:left}.contact-dir__feature>.contact-dir__action{margin-top:.5rem}.contact-dir__feature--preview{grid-template-rows:auto auto 1fr;grid-template-columns:minmax(0,1fr) auto;align-content:stretch;gap:.25rem clamp(1.25rem,2.5vw - .5rem,2rem);padding-right:clamp(.75rem,5vw - 2.5rem,2.5rem);display:grid}.contact-dir__feature--preview>.contact-dir__desc{text-wrap:pretty}.contact-dir__feature--preview>h3{grid-area:1/1}.contact-dir__feature--preview>.contact-dir__desc{grid-area:2/1}.contact-dir__feature--preview .contact-dir__preview{aspect-ratio:210/297;border:1px solid #7d8ca066;grid-area:1/2/-1;height:100%;display:block;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.contact-dir__feature--preview .contact-dir__preview{border:1px solid color-mix(in oklab,var(--color-rule-strong)40%,transparent)}}.contact-dir__feature--preview .contact-dir__preview{background-color:var(--color-surface);cursor:zoom-in;border-radius:.375rem;transition:border-color .2s,box-shadow .2s;box-shadow:0 10px 24px -18px #0b122073}.contact-dir__feature--preview .contact-dir__preview:hover,.contact-dir__feature--preview .contact-dir__preview:focus-visible{border-color:var(--color-accent);box-shadow:0 14px 30px -18px #1d4ed873}.contact-dir__feature--preview .contact-dir__preview:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}}.nf-flow{position:relative}main:has(>.nf-ground){flex-direction:column;display:flex}.nf-ground{--color-ink-muted:var(--color-ink-muted-deep);flex-direction:column;flex:1 0 auto;justify-content:flex-start;display:flex}.nf-ground .ground-mark{--nf-mark:min(34rem,calc((100svh - 9.5rem)*.89));right:calc(var(--nf-mark)*-.082);bottom:calc(var(--nf-mark)*-.035);width:var(--nf-mark)}@media (max-width:39.99rem){.nf-ground .ground-mark{width:115vw;bottom:-5rem;right:-40vw}.nf-ground>.ground-mark{opacity:.08}}.nf-flow>:not(svg){position:relative}.nf-flow__svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.nf-flow__track{fill:none;stroke:var(--color-rule-strong);stroke-width:1.25px}.nf-flow__signal{fill:none;stroke:var(--color-accent-graphic);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:.12 1;stroke-dashoffset:.12px;opacity:0}.nf-flow__copy{flex-direction:column;align-items:flex-start;gap:1.25rem;padding-right:2.5rem;display:flex}@media (min-width:40rem){.nf-flow__copy{padding-right:0}}.nf-flow__numeral{color:var(--color-accent);font-family:var(--font-sora),var(--font-manrope),sans-serif;font-size:clamp(6rem,4rem + 10vw,12rem);font-weight:600;line-height:1}@media (min-width:40rem) and (max-height:47.5rem){.nf-flow__numeral{font-size:clamp(6rem,2rem + 12vh,9rem)}}.nf-flow__back{width:fit-content;margin-top:.5rem;display:flex}@media (prefers-reduced-motion:no-preference){[data-wire-path=in] .nf-flow__signal{animation:6s linear infinite nf-signal-in}[data-wire-path=out] .nf-flow__signal{animation:6s linear infinite nf-signal-out}.nf-flow__numeral{animation:6s linear infinite nf-fail}.nf-flow__back{animation:6s ease-in-out infinite nf-done}}.run{gap:1.25rem;min-width:0;display:grid}.run__controls{flex-wrap:wrap;gap:.5rem;display:flex}.run__chip{border:1px solid var(--color-rule-inverse-strong);min-height:2.75rem;color:var(--color-ink-inverse);font-size:var(--text-small);cursor:pointer;border-radius:999px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;transition:border-color .18s,background-color .18s;display:inline-flex}.run__chip:hover,.run__chip[data-active]{border-color:var(--color-accent-on-dark);background-color:#60a5fa24}@supports (color:color-mix(in lab, red, red)){.run__chip:hover,.run__chip[data-active]{background-color:color-mix(in srgb,var(--color-accent-on-dark)14%,transparent)}}.run__chip:focus-visible{outline:2px solid var(--color-accent-on-dark);outline-offset:2px}.run__play{background:var(--color-accent-on-dark);clip-path:polygon(0 0,100% 50%,0 100%);width:.55rem;height:.65rem}.run__pause{border-inline:2.5px solid var(--color-accent-on-dark);width:.55rem;height:.65rem}.run [data-node] rect,.run [data-edge] path{transition:stroke .18s,fill .18s}.run [data-node].is-lit rect{fill:#60a5fa24}@supports (color:color-mix(in lab, red, red)){.run [data-node].is-lit rect{fill:color-mix(in srgb,var(--color-accent-on-dark)14%,transparent)}}.run [data-node].is-lit rect,.run [data-edge].is-lit path{stroke:var(--color-accent-on-dark)}.run [data-node][data-state=error].is-lit rect{fill:#f9706624}@supports (color:color-mix(in lab, red, red)){.run [data-node][data-state=error].is-lit rect{fill:color-mix(in srgb,var(--color-error-on-dark)14%,transparent)}}.run [data-node][data-state=error].is-lit rect,.run [data-edge][data-state=error].is-lit path{stroke:var(--color-error-on-dark)}.run-draw{fill:none;stroke:var(--color-accent-on-dark);stroke-width:1.5px;stroke-dasharray:1;stroke-dashoffset:1px;pointer-events:none}.run-draw--error{stroke:var(--color-error-on-dark)}.run__log{border:1px solid var(--color-rule-inverse);border-radius:var(--radius-control);background:var(--color-panel-soft);font-family:var(--font-mono);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.35rem 1.5rem;padding:.75rem 1rem;font-size:.8125rem;list-style:none;display:grid}.run__idle{color:var(--color-ink-inverse-muted)}.run__entry{color:var(--color-ink-inverse);gap:.75rem;display:flex}.run__index{color:var(--color-accent-on-dark)}.run__entry--end{color:var(--color-accent-on-dark);font-weight:600}.run__entry--stop{color:var(--color-error-on-dark);font-weight:600}.states{gap:1.5rem;min-width:0;display:grid}.states__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}@media (min-width:48rem){.states{grid-template-columns:13rem minmax(0,36.5rem);align-items:start}.states__list{grid-template-columns:minmax(0,1fr)}}.states__option{border:1px solid var(--color-rule);border-radius:var(--radius-control);background:var(--color-surface);width:100%;min-height:2.75rem;color:var(--color-ink-muted);font-size:var(--text-small);text-align:left;cursor:pointer;justify-content:flex-start;align-items:center;gap:.75rem;padding:.5rem .75rem;font-weight:500;transition:border-color .16s,background-color .16s,color .16s;display:flex}.states__option:hover{border-color:var(--color-rule-strong);color:var(--color-ink)}.states__option[aria-pressed=true]{border-color:var(--color-accent);background:var(--color-surface-accent);color:var(--color-ink)}.states__option:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.states__index{width:1.25rem;color:var(--color-accent);flex:none;font-size:.75rem}.states__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@media (max-width:47.99rem){.states__option{gap:.5rem;padding-inline:.625rem;font-size:.875rem}}@media (max-width:29.99rem){.states__index{display:none}}.states__card{border-radius:var(--radius-surface);background:var(--color-surface-accent);flex-direction:column;gap:1rem;min-width:0;margin:0;padding:1.25rem;display:flex}@media (max-width:47.99rem){.states__card{padding:1rem}}.states__step{color:var(--color-accent);font-size:var(--text-label);letter-spacing:var(--text-label--letter-spacing);text-transform:uppercase;font-weight:600}.states__figure{border:1px solid var(--color-rule);border-radius:var(--radius-control);background:var(--color-surface);overflow:hidden}.states__shot{width:100%;height:auto;display:block}.states__caption{max-width:38rem;color:var(--color-ink-muted);font-size:var(--text-small);line-height:var(--text-small--line-height);text-wrap:pretty}@media (prefers-reduced-motion:no-preference){.states__step,.states__figure>button,.states__caption{animation:.22s ease-out backwards states-in}.run__entry{animation:.28s ease-out both run-arrive}}.kit-intro{flex-direction:column;gap:1rem;max-width:48rem;padding-block:3rem 1rem;display:flex}.kit-share__card{background-color:var(--color-panel);background-image:linear-gradient(90deg,#26303f8c 1px,#0000 1px),linear-gradient(#26303f8c 1px,#0000 1px)}@supports (color:color-mix(in lab, red, red)){.kit-share__card{background-image:linear-gradient(to right,color-mix(in srgb,var(--color-rule-inverse)55%,transparent)1px,transparent 1px),linear-gradient(to bottom,color-mix(in srgb,var(--color-rule-inverse)55%,transparent)1px,transparent 1px)}}.kit-share__card{background-size:32px 32px}.kit-share{max-width:48rem;margin-inline:auto}.kit-share__card{aspect-ratio:1200/630;border-radius:var(--radius-surface);flex-direction:column;justify-content:space-between;gap:1rem;padding:2.25rem;display:flex}.kit-share__title{max-width:30rem;color:var(--color-ink-inverse);font-family:var(--font-sora),var(--font-manrope),sans-serif;font-size:clamp(1.5rem,1rem + 2vw,2.25rem);font-weight:600;line-height:1.15}.kit-share__diagram{max-width:30rem}.kit-sheet{border-radius:var(--radius-surface);background:var(--color-surface-accent);justify-content:center;padding:2rem;display:flex}.kit-sheet__page{aspect-ratio:210/297;background:var(--color-surface);flex-direction:column;gap:.75rem;width:min(100%,34rem);padding:2rem;display:flex;overflow:hidden;box-shadow:0 24px 48px -32px #080d1873}.kit-sheet__title{color:var(--color-ink);font-family:var(--font-sora),var(--font-manrope),sans-serif;font-size:1.5rem;font-weight:600;line-height:1.2}.kit-sheet__text,.kit-sheet__list{color:var(--color-ink-muted);font-size:.8125rem;line-height:1.5}.kit-sheet__list{gap:.35rem;padding-left:1rem;list-style:outside;display:grid}.kit-sheet__diagram{border-radius:var(--radius-control);background:var(--color-panel);padding:.75rem}.doc-dialog__bar{color:var(--color-ink-inverse);flex:none;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem clamp(.75rem,3vw,1.5rem);display:flex}.doc-dialog__title{font-size:var(--text-small);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.doc-dialog__actions{flex:none;align-items:center;gap:.5rem;display:flex}.doc-dialog__download{background-color:var(--color-surface);min-height:2.5rem;color:var(--color-ink);font-size:var(--text-small);border-radius:999px;align-items:center;gap:.5rem;padding-inline:1rem;font-weight:600;transition:background-color .2s;display:inline-flex}.doc-dialog__download:hover{background-color:var(--color-surface-accent)}.doc-dialog__close{border:1px solid var(--color-rule-inverse-strong);background-color:#080d18cc;border-radius:999px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:flex}@supports (color:color-mix(in lab, red, red)){.doc-dialog__close{background-color:color-mix(in srgb,var(--color-panel)80%,transparent)}}.doc-dialog__close{color:var(--color-ink-inverse);transition:border-color .2s,color .2s}.doc-dialog__close:hover{border-color:var(--color-accent-on-dark);color:var(--color-accent-on-dark)}.doc-dialog__download:focus-visible,.doc-dialog__close:focus-visible,.doc-dialog__pages:focus-visible{outline:2px solid var(--color-accent-on-dark);outline-offset:3px}.doc-dialog__pages{overscroll-behavior:contain;flex-direction:column;flex:1;align-items:center;gap:1rem;min-height:0;padding:.5rem clamp(.75rem,3vw,1.5rem) 2rem;display:flex;overflow-y:auto}.doc-dialog__page{border-radius:.25rem;width:min(100%,56rem);height:auto;display:block;box-shadow:0 18px 40px -24px #000000b3}.doc-dialog__pages[data-single]{justify-content:center;padding-bottom:clamp(.75rem,3vw,1.5rem);overflow:hidden;container-type:size}.doc-dialog__pages[data-single] .doc-dialog__page{width:min(100cqw,100cqh*var(--page-ratio,.707));min-height:0}}@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.top-3{top:calc(var(--spacing)*3)}.right-3{right:calc(var(--spacing)*3)}.bottom-3{bottom:calc(var(--spacing)*3)}.isolate{isolation:isolate}.z-10{z-index:10}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.-mx-6{margin-inline:calc(var(--spacing)*-6)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing)*1)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-2\.5{margin-top:calc(var(--spacing)*2.5)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-8{margin-top:calc(var(--spacing)*8)}.mt-9{margin-top:calc(var(--spacing)*9)}.mt-10{margin-top:calc(var(--spacing)*10)}.mt-14{margin-top:calc(var(--spacing)*14)}.mt-16{margin-top:calc(var(--spacing)*16)}.mt-auto{margin-top:auto}.-mr-2{margin-right:calc(var(--spacing)*-2)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-10{margin-bottom:calc(var(--spacing)*10)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.mb-14{margin-bottom:calc(var(--spacing)*14)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.aspect-\[3\/1\]{aspect-ratio:3}.aspect-square{aspect-ratio:1}.size-1{width:calc(var(--spacing)*1);height:calc(var(--spacing)*1)}.size-1\.5{width:calc(var(--spacing)*1.5);height:calc(var(--spacing)*1.5)}.size-2{width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.size-4\.5{width:calc(var(--spacing)*4.5);height:calc(var(--spacing)*4.5)}.size-5{width:calc(var(--spacing)*5);height:calc(var(--spacing)*5)}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.h-4{height:calc(var(--spacing)*4)}.h-16{height:calc(var(--spacing)*16)}.h-20{height:calc(var(--spacing)*20)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-full{max-height:100%}.max-h-none{max-height:none}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-11{min-height:calc(var(--spacing)*11)}.min-h-screen{min-height:100vh}.w-4{width:calc(var(--spacing)*4)}.w-16{width:calc(var(--spacing)*16)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-104{max-width:calc(var(--spacing)*104)}.max-w-\[26rem\]{max-width:26rem}.max-w-full{max-width:100%}.max-w-narrow{max-width:var(--container-narrow)}.max-w-none{max-width:none}.max-w-page{max-width:var(--container-page)}.max-w-prose{max-width:65ch}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing)*0)}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.cursor-zoom-in{cursor:zoom-in}.touch-pinch-zoom{--tw-pinch-zoom:pinch-zoom;touch-action:var(--tw-pan-x,)var(--tw-pan-y,)var(--tw-pinch-zoom,)}.resize{resize:both}.auto-rows-fr{grid-auto-rows:minmax(0,1fr)}.grid-cols-\[2\.5rem_minmax\(0\,1fr\)\]{grid-template-columns:2.5rem minmax(0,1fr)}.grid-rows-\[1fr\]{grid-template-rows:1fr}.grid-rows-subgrid{grid-template-rows:subgrid}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-2\.5{gap:calc(var(--spacing)*2.5)}.gap-3{gap:calc(var(--spacing)*3)}.gap-3\.5{gap:calc(var(--spacing)*3.5)}.gap-4{gap:calc(var(--spacing)*4)}.gap-5{gap:calc(var(--spacing)*5)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}.gap-10{gap:calc(var(--spacing)*10)}.gap-12{gap:calc(var(--spacing)*12)}.gap-20{gap:calc(var(--spacing)*20)}.gap-px{gap:1px}.gap-x-3{column-gap:calc(var(--spacing)*3)}.gap-x-5{column-gap:calc(var(--spacing)*5)}.gap-x-6{column-gap:calc(var(--spacing)*6)}.gap-x-8{column-gap:calc(var(--spacing)*8)}.gap-y-1{row-gap:calc(var(--spacing)*1)}.gap-y-2{row-gap:calc(var(--spacing)*2)}.gap-y-4{row-gap:calc(var(--spacing)*4)}.gap-y-5{row-gap:calc(var(--spacing)*5)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-control{border-radius:var(--radius-control)}.rounded-full{border-radius:2147483647px}.rounded-surface{border-radius:var(--radius-surface)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-accent{border-color:var(--color-accent)}.border-accent-graphic\/40{border-color:#2563eb66}@supports (color:color-mix(in lab, red, red)){.border-accent-graphic\/40{border-color:color-mix(in oklab,var(--color-accent-graphic)40%,transparent)}}.border-accent-on-dark{border-color:var(--color-accent-on-dark)}.border-rule{border-color:var(--color-rule)}.border-rule-inverse{border-color:var(--color-rule-inverse)}.border-rule-inverse-strong{border-color:var(--color-rule-inverse-strong)}.border-rule-strong{border-color:var(--color-rule-strong)}.border-rule-strong\/40{border-color:#7d8ca066}@supports (color:color-mix(in lab, red, red)){.border-rule-strong\/40{border-color:color-mix(in oklab,var(--color-rule-strong)40%,transparent)}}.border-transparent{border-color:#0000}.bg-accent{background-color:var(--color-accent)}.bg-accent-graphic\/12{background-color:#2563eb1f}@supports (color:color-mix(in lab, red, red)){.bg-accent-graphic\/12{background-color:color-mix(in oklab,var(--color-accent-graphic)12%,transparent)}}.bg-accent-on-dark{background-color:var(--color-accent-on-dark)}.bg-canvas{background-color:var(--color-canvas)}.bg-card-dark{background-color:var(--color-card-dark)}.bg-frame-dark{background-color:var(--color-frame-dark)}.bg-gray-200{background-color:var(--color-gray-200)}.bg-panel{background-color:var(--color-panel)}.bg-panel\/80{background-color:#080d18cc}@supports (color:color-mix(in lab, red, red)){.bg-panel\/80{background-color:color-mix(in oklab,var(--color-panel)80%,transparent)}}.bg-rule{background-color:var(--color-rule)}.bg-rule-inverse{background-color:var(--color-rule-inverse)}.bg-rule-strong{background-color:var(--color-rule-strong)}.bg-secondary-graphic{background-color:var(--color-secondary-graphic)}.bg-secondary-on-dark{background-color:var(--color-secondary-on-dark)}.bg-surface{background-color:var(--color-surface)}.bg-surface-accent{background-color:var(--color-surface-accent)}.bg-transparent{background-color:#0000}.bg-\[linear-gradient\(to_right\,var\(--color-accent\)\,var\(--color-accent\)\)\]{background-image:linear-gradient(to right,var(--color-accent),var(--color-accent))}.bg-\[linear-gradient\(to_right\,var\(--color-accent-on-dark\)\,var\(--color-accent-on-dark\)\)\]{background-image:linear-gradient(to right,var(--color-accent-on-dark),var(--color-accent-on-dark))}.bg-\[length\:0\%_1px\]{background-size:0% 1px}.bg-\[position\:0_100\%\]{background-position:0 100%}.bg-no-repeat{background-repeat:no-repeat}.fill-accent-on-dark{fill:var(--color-accent-on-dark)}.stroke-accent-on-dark{stroke:var(--color-accent-on-dark)}.stroke-ink-inverse{stroke:var(--color-ink-inverse)}.stroke-ink-inverse-muted{stroke:var(--color-ink-inverse-muted)}.object-contain{object-fit:contain}.object-center{object-position:center}.p-0{padding:calc(var(--spacing)*0)}.p-3{padding:calc(var(--spacing)*3)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.p-7{padding:calc(var(--spacing)*7)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-4{padding-block:calc(var(--spacing)*4)}.py-8{padding-block:calc(var(--spacing)*8)}.py-10{padding-block:calc(var(--spacing)*10)}.py-12{padding-block:calc(var(--spacing)*12)}.py-16{padding-block:calc(var(--spacing)*16)}.py-20{padding-block:calc(var(--spacing)*20)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-6{padding-top:calc(var(--spacing)*6)}.pt-16{padding-top:calc(var(--spacing)*16)}.pt-20{padding-top:calc(var(--spacing)*20)}.pt-24{padding-top:calc(var(--spacing)*24)}.pb-0\.5{padding-bottom:calc(var(--spacing)*.5)}.pb-6{padding-bottom:calc(var(--spacing)*6)}.pb-10{padding-bottom:calc(var(--spacing)*10)}.pb-12{padding-bottom:calc(var(--spacing)*12)}.pb-16{padding-bottom:calc(var(--spacing)*16)}.pb-20{padding-bottom:calc(var(--spacing)*20)}.text-center{text-align:center}.font-display{font-family:var(--font-sora),var(--font-manrope),ui-sans-serif,system-ui,sans-serif}.font-mono{font-family:var(--font-mono)}.text-card-title{font-size:var(--text-card-title);line-height:var(--tw-leading,var(--text-card-title--line-height));letter-spacing:var(--tw-tracking,var(--text-card-title--letter-spacing))}.text-closing{font-size:var(--text-closing);line-height:var(--tw-leading,var(--text-closing--line-height));letter-spacing:var(--tw-tracking,var(--text-closing--letter-spacing))}.text-display{font-size:var(--text-display);line-height:var(--tw-leading,var(--text-display--line-height));letter-spacing:var(--tw-tracking,var(--text-display--letter-spacing))}.text-heading{font-size:var(--text-heading);line-height:var(--tw-leading,var(--text-heading--line-height));letter-spacing:var(--tw-tracking,var(--text-heading--letter-spacing))}.text-lede{font-size:var(--text-lede);line-height:var(--tw-leading,var(--text-lede--line-height));letter-spacing:var(--tw-tracking,var(--text-lede--letter-spacing))}.text-meta{font-size:var(--text-meta);line-height:var(--tw-leading,var(--text-meta--line-height));letter-spacing:var(--tw-tracking,var(--text-meta--letter-spacing))}.text-subhead{font-size:var(--text-subhead);line-height:var(--tw-leading,var(--text-subhead--line-height));letter-spacing:var(--tw-tracking,var(--text-subhead--letter-spacing))}.text-body{font-size:var(--text-body);line-height:var(--tw-leading,var(--text-body--line-height))}.text-reading{font-size:var(--text-reading);line-height:var(--tw-leading,var(--text-reading--line-height))}.text-small{font-size:var(--text-small);line-height:var(--tw-leading,var(--text-small--line-height))}.leading-none{--tw-leading:1;line-height:1}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.\!text-red-900{color:var(--color-red-900)!important}.text-accent{color:var(--color-accent)}.text-accent-on-dark{color:var(--color-accent-on-dark)}.text-ink{color:var(--color-ink)}.text-ink-faint{color:var(--color-ink-faint)}.text-ink-inverse{color:var(--color-ink-inverse)}.text-ink-inverse-muted{color:var(--color-ink-inverse-muted)}.text-ink-muted{color:var(--color-ink-muted)}.text-rule-inverse{color:var(--color-rule-inverse)}.text-rule-strong{color:var(--color-rule-strong)}.text-secondary{color:var(--color-secondary)}.text-secondary-on-dark{color:var(--color-secondary-on-dark)}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-80{opacity:.8}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-size\]{transition-property:background-size;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[grid-template-rows\]{transition-property:grid-template-rows;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}@media (hover:hover){.group-hover\:text-accent-on-dark:is(:where(.group):hover *){color:var(--color-accent-on-dark)}}.backdrop\:bg-panel\/95::backdrop{background-color:#080d18f2}@supports (color:color-mix(in lab, red, red)){.backdrop\:bg-panel\/95::backdrop{background-color:color-mix(in oklab,var(--color-panel)95%,transparent)}}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-0:after{content:var(--tw-content);inset:calc(var(--spacing)*0)}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}.open\:flex:is([open],:popover-open,:open){display:flex}.focus-within\:border-accent-on-dark:focus-within{border-color:var(--color-accent-on-dark)}@media (hover:hover){.hover\:border-accent:hover{border-color:var(--color-accent)}.hover\:border-accent-on-dark:hover{border-color:var(--color-accent-on-dark)}.hover\:bg-\[length\:100\%_1px\]:hover{background-size:100% 1px}.hover\:text-accent-on-dark:hover{color:var(--color-accent-on-dark)}.hover\:opacity-80:hover{opacity:.8}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:fixed:focus{position:fixed}.focus\:top-4:focus{top:calc(var(--spacing)*4)}.focus\:left-4:focus{left:calc(var(--spacing)*4)}.focus\:z-50:focus{z-index:50}.focus\:border:focus{border-style:var(--tw-border-style);border-width:1px}.focus\:border-ink:focus{border-color:var(--color-ink)}.focus\:bg-canvas:focus{background-color:var(--color-canvas)}.focus\:px-4:focus{padding-inline:calc(var(--spacing)*4)}.focus\:py-2:focus{padding-block:calc(var(--spacing)*2)}.focus\:text-small:focus{font-size:var(--text-small);line-height:var(--tw-leading,var(--text-small--line-height))}.focus\:font-medium:focus{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.focus-visible\:border-accent:focus-visible{border-color:var(--color-accent)}.focus-visible\:border-accent-on-dark:focus-visible{border-color:var(--color-accent-on-dark)}.active\:cursor-grabbing:active{cursor:grabbing}@media (min-width:40rem){.sm\:col-span-2{grid-column:span 2/span 2}.sm\:-mx-8{margin-inline:calc(var(--spacing)*-8)}.sm\:mb-12{margin-bottom:calc(var(--spacing)*12)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:gap-16{gap:calc(var(--spacing)*16)}.sm\:gap-24{gap:calc(var(--spacing)*24)}.sm\:gap-x-0{column-gap:calc(var(--spacing)*0)}.sm\:gap-y-0{row-gap:calc(var(--spacing)*0)}.sm\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.sm\:border-rule{border-color:var(--color-rule)}.sm\:border-rule-inverse{border-color:var(--color-rule-inverse)}.sm\:p-6{padding:calc(var(--spacing)*6)}.sm\:p-7{padding:calc(var(--spacing)*7)}.sm\:p-8{padding:calc(var(--spacing)*8)}.sm\:p-10{padding:calc(var(--spacing)*10)}.sm\:px-8{padding-inline:calc(var(--spacing)*8)}.sm\:py-14{padding-block:calc(var(--spacing)*14)}.sm\:py-16{padding-block:calc(var(--spacing)*16)}.sm\:py-20{padding-block:calc(var(--spacing)*20)}.sm\:py-24{padding-block:calc(var(--spacing)*24)}.sm\:py-28{padding-block:calc(var(--spacing)*28)}.sm\:pt-20{padding-top:calc(var(--spacing)*20)}.sm\:pt-24{padding-top:calc(var(--spacing)*24)}.sm\:pt-28{padding-top:calc(var(--spacing)*28)}.sm\:pr-8{padding-right:calc(var(--spacing)*8)}.sm\:pb-14{padding-bottom:calc(var(--spacing)*14)}.sm\:pb-16{padding-bottom:calc(var(--spacing)*16)}.sm\:pb-20{padding-bottom:calc(var(--spacing)*20)}.sm\:pb-28{padding-bottom:calc(var(--spacing)*28)}.sm\:pl-8{padding-left:calc(var(--spacing)*8)}}@media (min-width:48rem){.md\:block{display:block}.md\:hidden{display:none}.md\:aspect-\[2\/1\]{aspect-ratio:2}.md\:w-1\/2{width:50%}.md\:shrink-0{flex-shrink:0}.md\:auto-rows-fr{grid-auto-rows:minmax(0,1fr)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-rows-\[0fr\]{grid-template-rows:0fr}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:items-stretch{align-items:stretch}.md\:gap-5{gap:calc(var(--spacing)*5)}.md\:gap-10{gap:calc(var(--spacing)*10)}.md\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.md\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.md\:p-8{padding:calc(var(--spacing)*8)}.md\:opacity-0{opacity:0}.md\:group-focus-within\:grid-rows-\[1fr\]:is(:where(.group):focus-within *){grid-template-rows:1fr}.md\:group-focus-within\:opacity-100:is(:where(.group):focus-within *){opacity:1}@media (hover:hover){.md\:group-hover\:grid-rows-\[1fr\]:is(:where(.group):hover *){grid-template-rows:1fr}.md\:group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}}@media (min-width:64rem){.lg\:col-start-3{grid-column-start:3}.lg\:-mx-12{margin-inline:calc(var(--spacing)*-12)}.lg\:mx-0{margin-inline:calc(var(--spacing)*0)}.lg\:mt-24{margin-top:calc(var(--spacing)*24)}.lg\:hidden{display:none}.lg\:max-w-none{max-width:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[1fr_26rem\]{grid-template-columns:1fr 26rem}.lg\:grid-cols-\[2\.5rem_13rem_minmax\(0\,1fr\)\]{grid-template-columns:2.5rem 13rem minmax(0,1fr)}.lg\:grid-cols-\[14rem_1fr\]{grid-template-columns:14rem 1fr}.lg\:items-start{align-items:flex-start}.lg\:justify-start{justify-content:flex-start}.lg\:gap-10{gap:calc(var(--spacing)*10)}.lg\:gap-16{gap:calc(var(--spacing)*16)}.lg\:gap-x-8{column-gap:calc(var(--spacing)*8)}.lg\:px-12{padding-inline:calc(var(--spacing)*12)}.lg\:pt-1\.5{padding-top:calc(var(--spacing)*1.5)}.lg\:pt-10{padding-top:calc(var(--spacing)*10)}.lg\:pr-44{padding-right:calc(var(--spacing)*44)}.lg\:pb-12{padding-bottom:calc(var(--spacing)*12)}.lg\:text-left{text-align:left}}@media (min-width:80rem){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}}@keyframes diagram-flow{to{stroke-dashoffset:-9px}}@keyframes hero-clip-up{0%{clip-path:inset(100% 0 0);transform:translateY(12px)}to{clip-path:inset(-30% -8%);transform:translateY(0)}}@keyframes heading-wipe{0%{clip-path:inset(115% 0 -20%)}to{clip-path:inset(-25% -10% -20%)}}@keyframes enter-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,opacity!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.btn,.btn *,.btn:before,.btn:after{transition-duration:0s!important}}@keyframes brand-intro-draw{0%{stroke-dashoffset:var(--stroke-length)}to{stroke-dashoffset:0}}@keyframes brand-intro-pulse{0%{opacity:0;transform:scale(.2)}40%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.3)}}@keyframes brand-intro-propagate{0%{clip-path:circle(0% at 31% 95.5%)}to{clip-path:circle(102% at 31% 95.5%)}}@keyframes brand-intro-signature-out{to{opacity:0}}@keyframes brand-intro-dismiss{to{opacity:0;visibility:hidden}}@media (prefers-reduced-motion:no-preference){.hero__link{transform-origin:0;animation:hero-connect calc(.7s*var(--hero-seq-scale))var(--ease-settle)calc(var(--hero-seq-offset) + .7s*var(--hero-seq-scale))both,hero-connect-out calc(.46s*var(--hero-seq-scale))ease-out calc(var(--hero-seq-offset) + 2.98s*var(--hero-seq-scale))both;transform:scaleX(0)}.hero__link-signal{animation:hero-signal-travel calc(.64s*var(--hero-seq-scale))var(--ease-standard)calc(var(--hero-seq-offset) + 1.42s*var(--hero-seq-scale))both}.hero__link-signal>span{animation:hero-signal-fade calc(.64s*var(--hero-seq-scale))linear calc(var(--hero-seq-offset) + 1.42s*var(--hero-seq-scale))both}.hero__link:after{animation:hero-node calc(.24s*var(--hero-seq-scale))var(--ease-settle)calc(var(--hero-seq-offset) + 1.98s*var(--hero-seq-scale))both;transform:translateY(-50%)scale(0)}.hero-plate{clip-path:inset(0 100% 0 0 round var(--radius-surface));animation:hero-plate-wipe calc(.76s*var(--hero-seq-scale))var(--ease-settle)calc(var(--hero-seq-offset) + 2.06s*var(--hero-seq-scale))both}.hero-plate__mark{opacity:0;animation:hero-mark calc(.32s*var(--hero-seq-scale))ease-out calc(var(--hero-seq-offset) + 2.62s*var(--hero-seq-scale))both}.hero__field{animation:hero-ambient calc(.9s*var(--hero-seq-scale))ease-out calc(var(--hero-seq-offset) + 2.3s*var(--hero-seq-scale))both}}@keyframes hero-connect{0%{opacity:1;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes hero-connect-out{0%{opacity:1}to{opacity:0}}@keyframes hero-node{to{transform:translateY(-50%)scale(1)}}@keyframes hero-signal-travel{0%{transform:translate(0)}to{transform:translate(calc(100% - 1.5rem))}}@keyframes hero-signal-fade{0%{opacity:0}14%{opacity:1}86%{opacity:1}to{opacity:0}}@keyframes hero-plate-wipe{to{clip-path:inset(0 round var(--radius-surface))}}@keyframes hero-mark{to{opacity:1}}@keyframes hero-field-travel{0%{stroke-dashoffset:106px}to{stroke-dashoffset:0}}@keyframes hero-ambient{0%{opacity:0}to{opacity:1}}[data-card-media]>*{transition:transform .42s var(--ease-settle)}.panel-link:has(a:focus-visible) [data-card-media]>*{transform:scale(1.035)}@media (hover:hover) and (pointer:fine){.panel-link:hover [data-card-media]>*{transform:scale(1.035)}}@media (prefers-reduced-motion:reduce){[data-card-media]>*{transition:none}.panel-link:hover [data-card-media]>*{transform:none}.panel-link:has(a:focus-visible) [data-card-media]>*{transform:none}}@keyframes cs-toc-label-current{0%,to{color:var(--toc-current)}}@keyframes cs-toc-label-passed{to{color:var(--toc-passed)}}@keyframes cs-toc-dot-current{0%,to{border-color:var(--toc-current);background-color:var(--toc-current)}}@keyframes cs-toc-dot-passed{to{border-color:var(--toc-dot-passed);background-color:var(--toc-dot-passed)}}@keyframes cs-toc-seg-passed{to{background-color:var(--toc-dot-passed)}}@keyframes cs-toc-leave{to{opacity:0;visibility:hidden;transform:translateY(.5rem)}}@keyframes cs-icon-stop-1{0%,0%{opacity:0;transform:scale(.4)}4.8%,86%{opacity:1;transform:scale(1)}92%,to{opacity:0;transform:scale(1)}}@keyframes cs-icon-line-2{0%,6%{opacity:1;stroke-dashoffset:1px}12%,86%{opacity:1;stroke-dashoffset:0}92%,to{opacity:0;stroke-dashoffset:0}}@keyframes cs-icon-line-3{0%,12.4%{opacity:1;stroke-dashoffset:1px}18.4%,86%{opacity:1;stroke-dashoffset:0}92%,to{opacity:0;stroke-dashoffset:0}}@keyframes cs-icon-stop-4{0%,17.2%{opacity:0;transform:scale(.4)}22%,86%{opacity:1;transform:scale(1)}92%,to{opacity:0;transform:scale(1)}}@keyframes cs-icon-line-5{0%,23.2%{opacity:1;stroke-dashoffset:1px}29.2%,86%{opacity:1;stroke-dashoffset:0}92%,to{opacity:0;stroke-dashoffset:0}}@keyframes cs-icon-line-6{0%,29.6%{opacity:1;stroke-dashoffset:1px}35.6%,86%{opacity:1;stroke-dashoffset:0}92%,to{opacity:0;stroke-dashoffset:0}}@keyframes cs-icon-stop-7{0%,34.4%{opacity:0;transform:scale(.4)}39.2%,86%{opacity:1;transform:scale(1)}92%,to{opacity:0;transform:scale(1)}}@keyframes cs-icon-line-8{0%,40.4%{opacity:1;stroke-dashoffset:1px}46.4%,86%{opacity:1;stroke-dashoffset:0}92%,to{opacity:0;stroke-dashoffset:0}}@keyframes cs-mark-sweep{0%{background-size:0% 100%}}@keyframes cs-line-draw{0%{transform:scaleY(0)}}@keyframes cs-node-settle{0%{opacity:0;transform:scale(.85)}}@keyframes diagram-node-settle{0%{opacity:0;transform:scale(.94)}}@keyframes diagram-node-activate{0%,45%{stroke:var(--color-accent-on-dark)}}@keyframes diagram-edge-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes diagram-fade{0%{opacity:0}}@keyframes project-stack-settle{to{transform:scale(calc(1 - (var(--n) - 1 - var(--i))*.04));filter:brightness(.9)}}@keyframes cs-settle{to{transform:scale(calc(1 - (var(--n) - 1 - var(--i))*.04));filter:brightness(.94)}}@keyframes cs-pop{0%{opacity:0;transform:scale(.9)}}@keyframes cs-fade{0%{opacity:0}}@keyframes cs-pulse{0%{stroke-dashoffset:.07px}to{stroke-dashoffset:-1px}}@media (forced-colors:active){.path-tool:has(.path-tool__input:checked){outline-offset:2px;outline:2px solid canvastext;font-weight:700}.path-stop .path-stop__node{outline:calc(var(--stop-on,0)*3px)solid CanvasText}.path-stop .path-stop__body{border-color:canvastext;border-width:calc(var(--stop-on,0)*1px)}.path-stop .path-stop__title{font-weight:calc(500 + var(--stop-on,0)*200)}}@keyframes about-badge-drop{0%{opacity:0;translate:0 -1.5rem}to{opacity:1;translate:0}}@keyframes about-badge-sway{0%{rotate:4deg}to{rotate:none}}@keyframes path-node-current{0%,to{border-color:var(--path-current);background-color:var(--path-current);box-shadow:0 0 0 4px color-mix(in srgb,var(--path-current)28%,transparent)}}@keyframes path-node-passed{to{border-color:var(--path-passed);background-color:var(--path-passed)}}@keyframes path-seg-passed{to{background-color:var(--path-passed)}}@property --lens-x{syntax:"<length-percentage>";inherits:true;initial-value:34%}@property --lens-y{syntax:"<length-percentage>";inherits:true;initial-value:46%}@media (forced-colors:active){.xray:has(.xray__input:checked) .xray__track{forced-color-adjust:none;background-color:highlight}}@keyframes xray-sweep{0%,to{--lens-x:34%;--lens-y:46%}33%{--lens-x:62%;--lens-y:30%}66%{--lens-x:76%;--lens-y:70%}}@keyframes xray-flow{to{stroke-dashoffset:-12px}}@keyframes about-pen-write{0%{background-size:0% .42em}}@keyframes work-layer-nudge{0%,to{transform:none}45%{transform:translate(-10px,-12px)}}@keyframes more-work-rule{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes heading-rise{0%{transform:translateY(105%)}to{transform:none}}@keyframes nf-signal-in{0%{stroke-dashoffset:.12px;opacity:1}21%{stroke-dashoffset:-1px;opacity:1}22%,to{stroke-dashoffset:-1px;opacity:0}}@keyframes nf-signal-out{0%,33%{stroke-dashoffset:.12px;opacity:0}34%{stroke-dashoffset:.12px;opacity:1}61%{stroke-dashoffset:-1px;opacity:1}62%,to{stroke-dashoffset:-1px;opacity:0}}@keyframes nf-fail{0%,20%{color:var(--color-accent);transform:none}22%{color:var(--color-error);transform:translate(-8px)}24%{transform:translate(8px)}26%{transform:translate(-5px)}28%{transform:translate(3px)}30%,78%{color:var(--color-error);transform:none}86%,to{color:var(--color-accent);transform:none}}@keyframes nf-done{0%,61%{transform:none}62.5%{transform:translateY(6px)}64.5%{transform:translateY(-3px)}66.5%{transform:translateY(4px)}68.5%{transform:translateY(-1px)}70%,to{transform:none}}@keyframes run-arrive{0%{opacity:0;transform:translateY(4px)}}@property --pa-t{syntax:"<number>";inherits:true;initial-value:0}@property --pa-on{syntax:"<number>";inherits:true;initial-value:0}.pa-art{--pa-e:calc(var(--pa-t)*6.4);--pa-fade:clamp(0,(6.2 - var(--pa-e))/.2,1);--pa-line:#e8edf5b3}@supports (color:color-mix(in lab, red, red)){.pa-art{--pa-line:color-mix(in srgb,var(--color-ink-inverse)70%,transparent)}}.pa-art{--pa-ink:var(--color-ink-inverse);--pa-frame:#e8edf5d9}@supports (color:color-mix(in lab, red, red)){.pa-art{--pa-frame:color-mix(in srgb,var(--color-ink-inverse)85%,transparent)}}.pa-art{width:100%;height:100%;display:block}.pa-art *{--pa-v:calc(1 - var(--pa-on) + var(--pa-on)*clamp(0,(var(--pa-e) - var(--s,0))/.25,1)*var(--pa-fade));--pa-h:calc(var(--pa-on)*clamp(0,(var(--pa-e) - var(--s,0))/.15,1)*clamp(0,(var(--s,0) + var(--dur,1) - var(--pa-e))/.3,1))}.pa-stage{--pa-lit:calc(var(--pa-on)*clamp(0,(var(--pa-e) - var(--a,0))/.15,1)*clamp(0,(var(--a,0) + 1.2 - var(--pa-e))/.3,1))}@keyframes pa-clock{0%{--pa-t:0;--pa-on:1}to{--pa-t:1;--pa-on:1}}@keyframes pa-clock-hover{0%{--pa-t:0;--pa-on:1}to{--pa-t:1;--pa-on:1}}@media (prefers-reduced-motion:no-preference){.pa-art--loop{animation:6.4s linear infinite pa-clock}.pa-art--loop[data-offscreen]{animation-play-state:paused}.more-work__link:focus-visible .pa-art:not(.pa-art--loop){animation:6.4s linear infinite pa-clock-hover}.panel-link:has(a:focus-visible) .pa-art:not(.pa-art--loop){animation:6.4s linear infinite pa-clock-hover}@media (hover:hover) and (pointer:fine){.panel-link:hover .pa-art:not(.pa-art--loop),.more-work__link:hover .pa-art:not(.pa-art--loop){animation:6.4s linear infinite pa-clock-hover}}.pa-art[data-play=once]{animation:6.4s linear pa-clock}}.panel-link [data-card-media]>.pa-art,.panel-link:hover [data-card-media]>.pa-art{transition:none;transform:none}.panel-link:has(a:focus-visible) [data-card-media]>.pa-art{transition:none;transform:none}.pa-panel{fill:none;stroke-width:1.5px;--pa-base:var(--pa-frame)}.pa-label{fill:#60a5fa}@supports (color:color-mix(in lab, red, red)){.pa-label{fill:color-mix(in srgb,var(--color-accent-on-dark)calc(var(--pa-lit,0)*100%),var(--color-ink-inverse))}}.pa-label{font-family:var(--font-sans);font-size:22px}.pa-connector{fill:none;stroke:var(--pa-line);stroke-width:2px}.pa-signal{fill:none;stroke:var(--color-accent-on-dark);stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:.25 2;stroke-dashoffset:calc(.25 - var(--pa-on)*clamp(0,(var(--pa-e) - var(--s,0))/.6,1)*1.25)}.pa-win,.pa-card,.pa-field,.pa-check{fill:none;stroke:var(--pa-line);stroke-width:1.25px}.pa-rule,.pa-wire,.pa-tree path{fill:none;stroke:var(--pa-line);stroke-width:1.25px;stroke-linecap:round;stroke-linejoin:round}.pa-bar{fill:#e8edf58c}@supports (color:color-mix(in lab, red, red)){.pa-bar{fill:color-mix(in srgb,var(--color-ink-inverse)55%,transparent)}}.pa-ink{fill:#e8edf5cc}@supports (color:color-mix(in lab, red, red)){.pa-ink{fill:color-mix(in srgb,var(--color-ink-inverse)80%,transparent)}}.pa-ink-soft{fill:#e8edf5b3}@supports (color:color-mix(in lab, red, red)){.pa-ink-soft{fill:color-mix(in srgb,var(--color-ink-inverse)70%,transparent)}}.pa-accent{fill:var(--color-accent-on-dark)}.pa-green{fill:var(--color-secondary-on-dark)}.pa-text{fill:var(--color-ink-inverse);font-family:var(--font-sans)}.pa-node{fill:none;stroke:var(--pa-line);stroke-width:1.25px}.pa-grid path{fill:none;stroke:#e8edf52e}@supports (color:color-mix(in lab, red, red)){.pa-grid path{stroke:color-mix(in srgb,var(--color-ink-inverse)18%,transparent)}}.pa-grid path{stroke-width:.6px}.pa-sheet-frame{fill:none;stroke:#e8edf566}@supports (color:color-mix(in lab, red, red)){.pa-sheet-frame{stroke:color-mix(in srgb,var(--color-ink-inverse)40%,transparent)}}.pa-sheet-frame{stroke-width:.8px}.pa-sheet-head{fill:#e8edf517}@supports (color:color-mix(in lab, red, red)){.pa-sheet-head{fill:color-mix(in srgb,var(--color-ink-inverse)9%,transparent)}}.pa-sheet-label{fill:#e8edf5b3}@supports (color:color-mix(in lab, red, red)){.pa-sheet-label{fill:color-mix(in srgb,var(--color-ink-inverse)70%,transparent)}}.pa-sheet-label{font-family:var(--font-sans)}.pa-select{fill:none;stroke:var(--color-accent-on-dark);stroke-width:1.5px}.pa-row-flash{fill:#60a5fa}@supports (color:color-mix(in lab, red, red)){.pa-row-flash{fill:color-mix(in srgb,var(--color-accent-on-dark)calc(var(--pa-h)*30%),transparent)}}.pa-ink-text{fill:#e8edf5bf}@supports (color:color-mix(in lab, red, red)){.pa-ink-text{fill:color-mix(in srgb,var(--color-ink-inverse)75%,transparent)}}.pa-text.pa-accent{fill:var(--color-accent-on-dark)}.pa-mono{font-family:var(--font-mono)}.pa-mountain{fill:#e8edf58c}@supports (color:color-mix(in lab, red, red)){.pa-mountain{fill:color-mix(in srgb,var(--color-ink-inverse)55%,transparent)}}.pa-on-accent,.pa-on-muted{fill:none;stroke:var(--color-panel);stroke-width:2.25px;stroke-linecap:round;stroke-linejoin:round}.pa-stroke-accent{fill:none;stroke:var(--color-accent-on-dark);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.pa-muted{fill:var(--color-ink-inverse-muted)}.pa-ring{fill:none;stroke:var(--color-accent-on-dark);stroke-width:1.5px}.pa-icon rect,.pa-icon path,.pa-icon circle{fill:none;stroke:var(--pa-ink);stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.pa-button{fill:var(--color-accent-on-dark)}.pa-cell{fill:#e8edf542}@supports (color:color-mix(in lab, red, red)){.pa-cell{fill:color-mix(in srgb,var(--color-ink-inverse)26%,transparent)}}.pa-cell--head{fill:#e8edf580}@supports (color:color-mix(in lab, red, red)){.pa-cell--head{fill:color-mix(in srgb,var(--color-ink-inverse)50%,transparent)}}.pa-pill{fill:none;stroke:var(--pa-line)}.pa-pill--on{fill:#60a5fa4d}@supports (color:color-mix(in lab, red, red)){.pa-pill--on{fill:color-mix(in srgb,var(--color-accent-on-dark)30%,transparent)}}.pa-pill--on{stroke:var(--color-accent-on-dark)}.pa-land{fill:#e8edf517}@supports (color:color-mix(in lab, red, red)){.pa-land{fill:color-mix(in srgb,var(--color-ink-inverse)9%,transparent)}}.pa-road{fill:none;stroke:#e8edf542}@supports (color:color-mix(in lab, red, red)){.pa-road{stroke:color-mix(in srgb,var(--color-ink-inverse)26%,transparent)}}.pa-road{stroke-width:5px;stroke-linecap:round}.pa-border{fill:none;stroke:#e8edf573}@supports (color:color-mix(in lab, red, red)){.pa-border{stroke:color-mix(in srgb,var(--color-ink-inverse)45%,transparent)}}.pa-border{stroke-width:1px;stroke-dasharray:3 3}.pa-pin{fill:var(--color-panel);stroke:var(--pa-ink);stroke-width:1.5px}.pa-pin-eye{fill:var(--color-panel)}.pa-bubble{fill:var(--color-panel);stroke:var(--color-accent-on-dark);stroke-width:1.25px}.pa-toggle.pa-toggle--off{fill:#e8edf54d}@supports (color:color-mix(in lab, red, red)){.pa-toggle.pa-toggle--off{fill:color-mix(in srgb,var(--color-ink-inverse)30%,transparent)}}.pa-knob{fill:var(--color-ink-inverse)}.pa-show{opacity:var(--pa-v)}.pa-slide{transform:translateX(calc((1 - var(--pa-v))*-14px))}.pa-drop{transform:translateY(calc((1 - var(--pa-v))*-12px))}.pa-draw{stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--pa-v))}.pa-pin--chosen{fill:#60a5fa}@supports (color:color-mix(in lab, red, red)){.pa-pin--chosen{fill:color-mix(in srgb,var(--color-accent-on-dark)calc(var(--pa-v)*100%),var(--color-panel))}}.pa-pin--chosen{stroke:var(--color-accent-on-dark)}.pa-toggle{fill:#60a5fa}@supports (color:color-mix(in lab, red, red)){.pa-toggle{fill:color-mix(in srgb,var(--color-accent-on-dark)calc(var(--pa-v)*100%),color-mix(in srgb,var(--color-ink-inverse)30%,transparent))}}.pa-switch .pa-knob{transform:translateX(calc(var(--pa-v)*14px))}.pa-knob--off{fill:var(--color-ink-inverse-muted)}.pa-flash{fill:#60a5fa}@supports (color:color-mix(in lab, red, red)){.pa-flash{fill:color-mix(in srgb,var(--color-accent-on-dark)calc(var(--pa-h)*60%),color-mix(in srgb,var(--color-ink-inverse)26%,transparent))}}.pa-seg{fill:#60a5fa}@supports (color:color-mix(in lab, red, red)){.pa-seg{fill:color-mix(in srgb,var(--color-accent-on-dark)calc(var(--pa-h)*100%),color-mix(in srgb,var(--color-ink-inverse)25%,transparent))}}.pa-step-out{opacity:calc(1 - var(--pa-h));transform:translateX(calc(var(--pa-h)*-8px))}.pa-step-in{opacity:var(--pa-h);transform:translateX(calc((1 - var(--pa-h))*8px))}.pa-estimate{fill:#60a5fa29}@supports (color:color-mix(in lab, red, red)){.pa-estimate{fill:color-mix(in srgb,var(--color-accent-on-dark)16%,transparent)}}.pa-estimate{stroke:var(--color-accent-on-dark);stroke-width:1.25px}.pa-gear{fill:none;stroke:var(--pa-ink);stroke-width:1.5px;stroke-linejoin:round}.pa-hub{fill:none;stroke:var(--pa-ink);stroke-width:1.5px}.pa-port{fill:#60a5fa}@supports (color:color-mix(in lab, red, red)){.pa-port{fill:color-mix(in srgb,var(--color-accent-on-dark)calc(var(--pa-h)*100%),var(--color-panel))}}.pa-port{stroke-width:1.5px}.pa-dot-dash{fill:none;stroke-width:1.5px;stroke-linecap:round}.pa-spin{--pa-turn:calc(1 - var(--pa-on) + var(--pa-on)*clamp(0,(var(--pa-e) - var(--s,0))/.5,1)*var(--pa-fade));transform-box:fill-box;transform-origin:50%;transform:rotate(calc(var(--pa-turn)*45deg))}.pa-gutter{fill:#e8edf538}@supports (color:color-mix(in lab, red, red)){.pa-gutter{fill:color-mix(in srgb,var(--color-ink-inverse)22%,transparent)}}.pa-press{transform-box:fill-box;transform-origin:50%;transform:scale(calc(1 - var(--pa-h)*.04))}.pa-glow{stroke:#60a5fa}@supports (color:color-mix(in lab, red, red)){.pa-glow{stroke:color-mix(in srgb,var(--color-accent-on-dark)calc(var(--pa-h)*100%),var(--pa-base,var(--pa-line)))}}@keyframes states-in{0%{opacity:0;filter:blur(2px)}to{opacity:1;filter:blur()}}::view-transition-group(.project-morph){animation-duration:.42s;animation-timing-function:var(--ease-standard)}::view-transition-image-pair(.project-morph){animation-name:project-morph-blur;animation-duration:.42s}::view-transition-old(root){animation-duration:.2s}::view-transition-new(root){animation-duration:.2s}::view-transition{pointer-events:none}@keyframes project-morph-blur{35%{filter:blur(3px)}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-pan-x{syntax:"*";inherits:false}@property --tw-pan-y{syntax:"*";inherits:false}@property --tw-pinch-zoom{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}
