/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight: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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}@layer theme{:host,:root{--font-sans:var(--font-geist),ui-sans-serif,system-ui,sans-serif;--font-mono:var(--font-geist-mono),ui-monospace,monospace;--spacing:.25rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--radius-xs:.375rem;--radius-sm:.625rem;--radius-md:1rem;--radius-lg:1.5rem;--shadow-xs:0 1px 2px #131a1b0d;--shadow-sm:0 1px 2px #131a1b0f,0 2px .5rem -1px #131a1b14;--shadow-md:0 1px 2px #131a1b0a,0 .5rem 1.5rem -.5rem #131a1b1f;--shadow-lg:0 2px .25rem #131a1b0a,0 1.5rem 3.5rem -1.25rem #131a1b38;--ease-out:cubic-bezier(.16,1,.3,1);--ease-in-out:cubic-bezier(.65,0,.35,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-geist),ui-sans-serif,system-ui,sans-serif;--default-mono-font-family:var(--font-geist-mono),ui-monospace,monospace;--color-bg:#fff;--color-surface:#fff;--color-subtle:#efeeea;--color-tint:#e9f0f6;--color-text:#131a1b;--color-text-muted:#464f50;--color-text-faint:#545e60;--color-border:#dcdad4;--color-border-strong:#767e7f;--color-primary:#045a8f;--color-primary-hover:#054570;--color-primary-soft:#e1edf4;--color-primary-tint:#b0cee0;--color-on-primary:#fff;--color-signal:#73a2c4;--color-focus:#045a8f;--color-transparent:transparent;--color-cyan:#66aeb7;--color-cyan-ink:#216469;--color-cyan-soft:#e0f1f2;--color-coral:#c26a3a;--color-coral-ink:#934417;--color-coral-soft:#f5e4d9;--color-underline:#f25a24;--color-brand-mid:#1e70a7;--color-deep-mid:#093a5e;--color-night:#0c1a26;--color-night-surface:#142534;--color-night-border:#283d51;--color-on-night:#f0f4f6;--color-on-night-muted:#b1bfcc;--color-on-night-faint:#92a2b1;--color-primary-on-night:#8bc3e4;--color-cyan-on-night:#8cd6dc;--color-on-gradient-muted:#d8e8f2;--color-term-bg:#17181c;--color-term-bar-top:#323338;--color-term-text:#e8e8ea;--color-term-user:#6ee7a0;--color-traffic-red:#ff5f57;--color-traffic-red-rim:#e0443e;--color-traffic-yellow:#febc2e;--color-traffic-green:#28c840;--color-dock-tip:#1e1e20eb;--color-dock-glass:#ffffff8c;--color-dock-rim:#fff9;--color-accent-blue:#045a8f;--color-accent-indigo:#4b4a6b;--color-accent-teal:#2b6a55;--color-accent-slate:#464f50;--text-display:clamp(2.5rem,1.5rem + 4.2vw,4.75rem);--text-display--line-height:1;--text-display--letter-spacing:-.04em;--text-display--font-weight:600;--text-hero:clamp(2.5rem,1.6rem + 2.8vw,4rem);--text-hero--line-height:1.02;--text-hero--letter-spacing:-.04em;--text-hero--font-weight:600;--text-h1:clamp(2.125rem,1.6rem + 2.4vw,3.5rem);--text-h1--line-height:1.05;--text-h1--letter-spacing:-.035em;--text-h1--font-weight:600;--text-h2:clamp(1.75rem,1.4rem + 1.5vw,2.5rem);--text-h2--line-height:1.1;--text-h2--letter-spacing:-.03em;--text-h2--font-weight:600;--text-h3:clamp(1.1875rem,1.1rem + .4vw,1.375rem);--text-h3--line-height:1.25;--text-h3--letter-spacing:-.015em;--text-h3--font-weight:600;--text-metric:clamp(2rem,1.6rem + 1.6vw,3rem);--text-metric--line-height:1;--text-metric--letter-spacing:-.04em;--text-metric--font-weight:500;--text-fact:clamp(2.5rem,1.9rem + 2.4vw,3.75rem);--text-fact--line-height:1;--text-fact--letter-spacing:-.045em;--text-fact--font-weight:600;--text-lead:clamp(1.125rem,1.05rem + .35vw,1.3125rem);--text-lead--line-height:1.5;--text-lead--letter-spacing:-.01em;--text-result:clamp(1.1875rem,1.05rem + .55vw,1.5rem);--text-result--line-height:1.45;--text-result--letter-spacing:-.015em;--text-result--font-weight:400;--text-body:max(1.0625rem,15px);--text-body--line-height:1.65;--text-body--letter-spacing:-.005em;--text-ui:max(.9375rem,12.5px);--text-ui--line-height:1.4;--text-ui--letter-spacing:-.005em;--text-ui--font-weight:500;--text-small:max(.875rem,12.5px);--text-small--line-height:1.5;--text-micro:max(.8125rem,12.5px);--text-micro--line-height:1.4;--text-micro--letter-spacing:.01em;--text-micro--font-weight:500;--text-term-title:max(.8125rem,12.5px);--text-term-title--line-height:1;--text-term-title--font-weight:500;--spacing-section:6rem;--spacing-block:clamp(2rem,1.5rem + 2vw,3.5rem);--spacing-card:clamp(1.25rem,1rem + 1vw,1.75rem);--spacing-stack:1rem;--spacing-inline:.5rem;--spacing-grid:clamp(1rem,.75rem + 1vw,1.5rem);--spacing-gutter:clamp(1rem,-2.25rem + 10.833vw,7.5rem);--spacing-header:4rem;--spacing-header-sm:3.5rem;--spacing-band-title:clamp(1.75rem,1.2rem + 1.65vw,2.5rem);--spacing-avatar:1.5rem;--spacing-dock-icon:3rem;--container-content:90rem;--container-reading:42rem;--container-measure:66ch;--radius-full:9999px;--radius-window:.75rem;--radius-window-sm:.625rem;--radius-photo:1.5rem;--radius-photo-sm:1rem;--radius-shot:.5rem;--radius-dock:1.125rem;--radius-dock-icon:.6875rem;--shadow-inset:inset 0 0 0 1px var(--color-border);--shadow-focus:0 0 0 2px var(--color-bg),0 0 0 4px var(--color-focus);--shadow-window:0 0 0 1px var(--color-border),0 2px .375rem #131a1b0f,0 1.5rem 3.5rem -1.25rem #0c1a2638;--shadow-photo:0 1px 2px #131a1b0f,0 1.5rem 3rem -1rem #045a8f52;--shadow-shot:0 1px 2px #131a1b14,0 .75rem 1.75rem -.625rem #131a1b47;--shadow-shot-hover:0 1px 2px #131a1b14,0 1.125rem 2.5rem -.75rem #131a1b57;--shadow-dock:0 0 0 .5px #131a1b1f,0 .5rem 1.5rem -.5rem #0c1a2647;--shadow-dock-icon:0 1px 2px #0000004d,0 .25rem .625rem -2px #00000059;--ease-spring:linear(0,.35 8%,.8 20%,1.02 35%,1 50%,1);--ease-emphasis:cubic-bezier(.22,1,.36,1);--font-accent:var(--font-instrument-serif),Georgia,serif}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{background-color:var(--color-bg);color:var(--color-text);-webkit-text-size-adjust:100%;scroll-padding-top:5.5rem}@media (min-width:48rem){html{font-size:80%}}body{font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--text-body--line-height);letter-spacing:var(--text-body--letter-spacing);background-color:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}[tabindex="-1"]:focus{outline:none}.is-targeted{border-radius:var(--radius-xs);background-color:var(--color-primary-soft);box-shadow:0 0 0 .375rem var(--color-primary-soft)}@media (prefers-reduced-motion:no-preference){.is-targeted{animation:target-fade 1.4s var(--ease-out) forwards}@keyframes target-fade{0%,40%{background-color:var(--color-primary-soft);box-shadow:0 0 0 .375rem var(--color-primary-soft)}to{background-color:var(--color-transparent);box-shadow:0 0 0 .375rem var(--color-transparent)}}}::selection{background-color:var(--color-primary-soft);color:var(--color-text)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}}@layer components{.js .nojs-only,.no-js .js-only{display:none!important}.tabular{font-variant-numeric:tabular-nums}[data-surface=night]{--focus-gap:var(--color-night);--color-focus:var(--color-primary-on-night);--shadow-focus:0 0 0 2px var(--focus-gap),0 0 0 4px var(--color-primary-on-night)}.accent{font-family:var(--font-accent);letter-spacing:-.01em;font-size:1.08em;font-style:italic;font-weight:400}.accent-u{white-space:nowrap;position:relative}html.lang-pending body,html.lang-restoring body{visibility:hidden}.accent-before-punct{margin-inline-end:.1em}.accent-stroke{pointer-events:none;width:calc(100% + .06em);height:.34em;position:absolute;bottom:-.14em;left:-.02em;right:-.04em;overflow:visible}.accent-stroke path{fill:none;stroke:var(--color-underline);stroke-width:var(--stroke-accent);stroke-linecap:round;vector-effect:non-scaling-stroke}.text-hero .accent-stroke path{stroke-width:var(--stroke-accent-lg)}@media (forced-colors:active){.accent-stroke{display:none}}.words .w{display:inline-block}@media (prefers-reduced-motion:no-preference){.js .words-intro .w{animation:word-blur .6s var(--ease-emphasis) both;animation-delay:calc(min(var(--w,0), 13) * var(--stagger-word) + 80ms)}.js .words-intro .accent-stroke{animation:draw-underline var(--duration-draw-accent) var(--ease-draw-accent) backwards;animation-delay:calc(min(var(--wn,0), 14) * var(--stagger-word) + .6s)}[data-reveal=hidden] .words-reveal .w{opacity:.001;filter:blur(.375rem);transform:translateY(.35em)}[data-reveal=shown] .words-reveal .w{transition:opacity var(--duration-reveal) var(--ease-emphasis),transform var(--duration-reveal) var(--ease-emphasis),filter var(--duration-reveal) var(--ease-emphasis);transition-delay:calc(min(var(--w,0), 13) * var(--stagger-word))}[data-reveal=hidden] .words-reveal .accent-stroke{clip-path:var(--clip-accent-hidden)}[data-reveal=shown] .words-reveal .accent-stroke{animation:draw-underline var(--duration-draw-accent) var(--ease-draw-accent) backwards;animation-delay:calc(min(var(--wn,0), 14) * var(--stagger-word) + var(--duration-reveal))}}@keyframes word-blur{0%{filter:blur(.5rem);transform:translateY(.25em)}}@keyframes draw-underline{0%{clip-path:var(--clip-accent-hidden)}to{clip-path:var(--clip-accent-shown)}}@keyframes draw-accent{0%{stroke-dasharray:1;stroke-dashoffset:1px}to{stroke-dasharray:1;stroke-dashoffset:0}}@keyframes draw{0%{stroke-dashoffset:1px}}.ring-focus:focus-visible{box-shadow:var(--shadow-focus);outline:none}.link{color:var(--color-primary);text-underline-offset:.22em;transition-property:color,text-decoration-thickness;transition-duration:var(--duration-fast);border-radius:.25rem;text-decoration-line:underline;text-decoration-thickness:1px}.link:hover{color:var(--color-primary-hover);text-decoration-thickness:2px}.btn{border-radius:var(--radius-sm);min-height:2.75rem;font-size:var(--text-ui);line-height:var(--text-ui--line-height);white-space:nowrap;transition-property:background-color,color,border-color,box-shadow,transform;transition-duration:var(--duration-fast);transition-timing-function:var(--ease-out);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding-inline:1.125rem;font-weight:500;display:inline-flex}.btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.btn-lg{min-height:3rem;padding-inline:1.375rem}.btn-sm{min-height:2.25rem;padding-inline:.875rem;position:relative}.btn-sm:before{content:"";position:absolute;inset:-.25rem 0}.btn-label{align-items:center;gap:.5rem;display:inline-flex}.btn-inverse,.btn-primary{background-image:linear-gradient(105deg,transparent 40%,var(--sheen,var(--white-a28)) 50%,transparent 60%);background-position:130% 0;background-repeat:no-repeat;background-size:250% 100%}.btn-primary{background-color:var(--color-primary-fill);color:var(--color-on-primary);box-shadow:var(--shadow-xs),inset 0 1px 0 var(--white-a18)}.btn-primary:hover{background-color:var(--color-primary-fill-hover)}.btn-inverse{--sheen:#045a8f29}@supports (color:color-mix(in lab,red,red)){.btn-inverse{--sheen:color-mix(in oklab,var(--color-primary) 16%,transparent)}}.btn-inverse{background-color:var(--color-on-primary);color:var(--color-primary-fill-hover);box-shadow:var(--shadow-sm)}.btn-inverse:hover{background-color:var(--color-inverse-hover)}.btn-secondary{background-color:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-strong);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background-color:var(--color-subtle);border-color:var(--color-text)}.btn-icon{width:2.75rem;height:2.75rem;min-height:0;color:var(--color-text-muted);padding:0}.btn-icon:hover{background-color:var(--color-subtle);color:var(--color-text)}.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.btn .arrow{display:inline-block}@media (prefers-reduced-motion:no-preference){.btn-inverse:hover,.btn-primary:hover{transition:background-color var(--duration-fast) var(--ease-out),background-position .7s var(--ease-out);background-position:-30% 0}.btn:active{transition-duration:var(--duration-instant);transform:scale(.97)}.btn-icon:active{transform:scale(.94)}.btn .arrow{transition:transform var(--duration-base) var(--ease-out)}.btn:hover .arrow{transform:translate(.1875rem)}}.text-action{min-height:2.75rem;color:var(--color-primary);font-size:var(--text-ui);text-underline-offset:.22em;border-radius:.25rem;align-items:center;gap:.375rem;font-weight:500;text-decoration-line:underline;text-decoration-thickness:1px;display:inline-flex}.text-action:hover{color:var(--color-primary-hover);text-decoration-thickness:2px}.pill{border-radius:var(--radius-full);background-color:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-xs);letter-spacing:var(--text-micro--letter-spacing);color:var(--color-text);white-space:nowrap;gap:.5rem}.pill,.tag{font-size:var(--text-micro);line-height:var(--text-micro--line-height);align-items:center;font-weight:500;display:inline-flex}.tag{border-radius:var(--radius-xs);background-color:var(--color-subtle);color:var(--color-text-muted);padding-inline:.5rem}.kind-badge,.tag{min-height:1.5rem}.kind-badge{border-radius:var(--radius-full);font-size:var(--text-micro);line-height:var(--text-micro--line-height);letter-spacing:var(--text-micro--letter-spacing);white-space:nowrap;align-items:center;padding-inline:.625rem;font-weight:600;display:inline-flex}.kind-badge--pro{background-color:var(--color-primary-soft);color:var(--color-primary-hover)}.kind-badge--perso{background-color:var(--color-coral-soft);color:var(--color-coral-ink)}@media (forced-colors:active){.kind-badge{border:1px solid canvastext}}.surface-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.site-header :is(a,button,[tabindex]){scroll-margin-top:-5.5rem}.site-header{view-transition-name:header;transition-property:background-color,border-color,box-shadow;transition-duration:var(--duration-base);transition-timing-function:var(--ease-out);border-bottom:1px solid #0000}.site-header[data-scrolled=true]{background-color:#fffffff5}@supports (color:color-mix(in lab,red,red)){.site-header[data-scrolled=true]{background-color:color-mix(in oklab,var(--color-bg) 96%,transparent)}}.site-header[data-scrolled=true]{border-bottom-color:var(--color-border);box-shadow:var(--shadow-xs)}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.site-header[data-scrolled=true]{background-color:#ffffffd9}@supports (color:color-mix(in lab,red,red)){.site-header[data-scrolled=true]{background-color:color-mix(in oklab,var(--color-bg) 85%,transparent)}}.site-header[data-scrolled=true]{-webkit-backdrop-filter:blur(.75rem)saturate(1.5);backdrop-filter:blur(.75rem)saturate(1.5)}}.site-header[data-tone=dark]{--color-text:var(--color-on-night);--color-text-muted:var(--color-on-night-muted);--color-text-faint:var(--color-on-night-faint);--color-subtle:var(--color-night-surface);--color-surface:var(--color-night-surface);--color-border:var(--color-night-border);--color-focus:var(--color-primary-on-night);--focus-gap:var(--color-night);--shadow-focus:0 0 0 2px var(--focus-gap),0 0 0 4px var(--color-primary-on-night);color:var(--color-text)}.site-header[data-tone=dark][data-scrolled=true]{background-color:#0c1a26eb}@supports (color:color-mix(in lab,red,red)){.site-header[data-tone=dark][data-scrolled=true]{background-color:color-mix(in oklab,var(--color-night) 92%,transparent)}}.site-header[data-tone=dark][data-scrolled=true]{border-bottom-color:var(--color-night-border)}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.site-header[data-tone=dark][data-scrolled=true]{background-color:#0c1a26d9}@supports (color:color-mix(in lab,red,red)){.site-header[data-tone=dark][data-scrolled=true]{background-color:color-mix(in oklab,var(--color-night) 85%,transparent)}}}.site-header[data-tone=dark] .btn-secondary{border-color:var(--color-on-night-muted);background-color:#0000}@media (prefers-reduced-motion:reduce){.site-header{transition:none}}.nav-indicator{border-radius:var(--radius-full);background-color:var(--color-subtle);height:2.25rem;transform:translate(var(--x,0),-50%);width:var(--w,0);opacity:var(--o,0);pointer-events:none;position:absolute;top:50%;left:0}.theme-toggle{border:1px solid var(--color-border);border-radius:var(--radius-full);width:2.25rem;height:2.25rem;color:var(--color-text-muted);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.theme-toggle:before{content:"";position:absolute;inset:-.25rem}.theme-toggle:hover{background-color:var(--color-subtle);color:var(--color-text)}.theme-icon{width:1rem;height:1rem;overflow:visible}.theme-icon-moon,.theme-icon-sun{transform-box:view-box;transform-origin:50%}.theme-icon-moon{opacity:0;transform:rotate(-60deg)scale(.6)}.theme-name-to-light{display:none}.theme-toggle:where([data-theme=dark],[data-theme=dark] *) .theme-icon-sun{opacity:0;transform:rotate(90deg)scale(.6)}.theme-toggle:where([data-theme=dark],[data-theme=dark] *) .theme-icon-moon{opacity:1;transform:none}.theme-toggle:where([data-theme=dark],[data-theme=dark] *) .theme-name-to-dark{display:none}.theme-toggle:where([data-theme=dark],[data-theme=dark] *) .theme-name-to-light{display:inline}@media (prefers-reduced-motion:no-preference){.theme-icon-moon,.theme-icon-sun{transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-slow) var(--ease-emphasis)}}@media (forced-colors:active){.theme-toggle{border-color:buttontext}}.lang{gap:.75rem;position:relative}.lang,.lang-switch{align-items:center;display:inline-flex}.lang-switch{border:1px solid var(--color-border);border-radius:var(--radius-full);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.02em;gap:2px;padding:2px;font-weight:500;line-height:1}.lang-sep{background-color:var(--color-border);width:1px;height:.75rem}.lang-opt{border-radius:var(--radius-full);min-width:2.25rem;min-height:1.75rem;color:var(--color-text-muted);justify-content:center;align-items:center;padding-inline:.5rem;display:inline-flex;position:relative}.lang-opt:before{content:"";position:absolute;inset:-.25rem 0}.lang-opt[aria-current]{font-weight:600}.lang-opt[aria-current],a.lang-opt:hover{background-color:var(--color-subtle);color:var(--color-text)}.lang-opt[aria-disabled=true]{color:var(--color-text-faint);cursor:not-allowed}.lang-tip{z-index:1;border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm);font-size:var(--text-micro);line-height:var(--text-micro--line-height);white-space:nowrap;opacity:0;visibility:hidden;padding:.375rem .625rem;font-weight:500;position:absolute;top:calc(100% + .625rem);right:0}.lang-tip:before{content:"";position:absolute;inset:-.75rem 0 100%}.lang:not([data-dismissed]) .lang-tip:hover,.lang:not([data-dismissed]):has(.lang-opt[aria-disabled=true]:focus-visible) .lang-tip,.lang:not([data-dismissed]):has(.lang-opt[aria-disabled=true]:hover) .lang-tip,.lang[data-pinned=true] .lang-tip{opacity:1;visibility:visible}@media (prefers-reduced-motion:no-preference){.lang-opt{transition-property:background-color,color;transition-timing-function:var(--ease-out)}.lang-opt,.lang-tip{transition-duration:var(--duration-fast)}.lang-tip{transition-property:opacity,visibility,translate;transition-timing-function:var(--ease-out);translate:0 -2px}.lang:not([data-dismissed]) .lang-tip:hover,.lang:not([data-dismissed]):has(.lang-opt[aria-disabled=true]:focus-visible) .lang-tip,.lang:not([data-dismissed]):has(.lang-opt[aria-disabled=true]:hover) .lang-tip,.lang[data-pinned=true] .lang-tip{translate:0}}@media (forced-colors:active){.lang-opt[aria-current]{outline:1px solid canvastext}.lang-opt[aria-disabled=true]{color:graytext}}.menu-toggle-lines,.menu-toggle-lines:after,.menu-toggle-lines:before{border-radius:var(--radius-full);background-color:currentColor;width:1.125rem;height:1.5px;display:block}.menu-toggle-lines{background-color:var(--color-transparent);position:relative}.menu-toggle-lines:after,.menu-toggle-lines:before{content:"";position:absolute;left:0}.menu-toggle-lines:before{top:-.25rem}.menu-toggle-lines:after{top:.25rem}[aria-expanded=true]>.menu-toggle-lines:before{top:0;rotate:45deg}[aria-expanded=true]>.menu-toggle-lines:after{top:0;rotate:-45deg}@media (prefers-reduced-motion:no-preference){.menu-toggle-lines:after,.menu-toggle-lines:before{transition:top var(--duration-fast) var(--ease-out),rotate var(--duration-base) var(--ease-out)}}@media (max-width:63.99rem){.header-cta{padding-inline:.75rem}@media (max-width:47.99rem){.header-cta{padding-inline:.625rem}}.header-cta:before{inset:calc((100% - max(var(--touch-target), 44px)) / 2) 0}.menu-toggle{width:max(var(--touch-target),44px);height:max(var(--touch-target),44px)}.header-lang .lang-opt{min-width:1.875rem;padding-inline:.25rem}.header-lang .lang-opt:before{inset:calc((100% - max(var(--touch-target), 44px)) / 2) 0}.site-header[data-menu=open] .header-cta{display:none}}.menu-panel{height:calc(100dvh - var(--spacing-header-sm));overscroll-behavior:contain;padding-bottom:calc(1.5rem + env(safe-area-inset-bottom));background-color:var(--color-bg);inset-inline:0;flex-direction:column;display:flex;position:absolute;top:100%;overflow-y:auto}@media (min-width:48rem){.menu-panel{height:calc(100dvh - var(--spacing-header))}}.js .menu-closed{display:none}.menu-links{padding-top:.5rem}.menu-links>li{border-bottom:1px solid var(--color-border)}.menu-link{border-radius:var(--radius-sm);min-height:4.5rem;font-size:var(--text-h2);line-height:var(--text-h2--line-height);letter-spacing:var(--text-h2--letter-spacing);font-weight:var(--text-h2--font-weight);color:var(--color-text);outline:none;justify-content:space-between;align-items:center;gap:1rem;display:flex}.menu-link:focus-visible{box-shadow:var(--shadow-focus)}.menu-link-arrow{color:var(--color-text-faint);flex-shrink:0}.menu-link[aria-current=page] .menu-link-label{text-decoration-line:underline;text-decoration-thickness:2px;-webkit-text-decoration-color:var(--color-primary);text-decoration-color:var(--color-primary);text-underline-offset:.22em}.menu-link:hover .menu-link-arrow,.menu-link[aria-current=page] .menu-link-arrow{color:var(--color-primary)}.menu-foot{flex-direction:column;align-items:flex-start;gap:.75rem;margin-top:auto;padding-top:2rem;display:flex}.menu-social{min-height:max(var(--touch-target),44px);font-size:var(--text-ui);color:var(--color-text-muted);text-underline-offset:.22em}.menu-social:hover{color:var(--color-text);text-decoration-line:underline}@media (prefers-reduced-motion:no-preference){.js .menu-panel:not(.menu-closed){animation:fade-in var(--duration-fast) var(--ease-out) both}.js .menu-panel:not(.menu-closed) :is(.menu-links>li,.menu-foot){animation:menu-item .18s var(--ease-out) both;animation-delay:calc(var(--i,0) * 30ms)}}@keyframes menu-item{0%{opacity:0;translate:0 .5rem}}@media (max-width:63.99rem){.no-js .site-header{position:relative!important}.no-js .menu-panel{height:auto;position:static}}.to-top{z-index:40;right:calc(1rem + env(safe-area-inset-right));bottom:calc(1rem + env(safe-area-inset-bottom));width:max(var(--touch-target),44px);height:max(var(--touch-target),44px);border-radius:var(--radius-full);min-height:0;box-shadow:var(--shadow-md);translate:0 calc(-1 * var(--lift,0px));padding:0;position:fixed}.to-top[data-shown=false]{opacity:0;visibility:hidden;pointer-events:none}@media (prefers-reduced-motion:no-preference){.to-top{transition:opacity var(--duration-base) var(--ease-out),visibility var(--duration-base),background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}}.theme-float{z-index:40;left:calc(1rem + env(safe-area-inset-left));bottom:calc(1rem + env(safe-area-inset-bottom));translate:0 calc(-1 * var(--lift,0px));position:fixed}.theme-float .theme-toggle{width:max(var(--touch-target),44px);height:max(var(--touch-target),44px);border-color:var(--color-border-strong);background-color:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-md)}.theme-float .theme-toggle:hover{background-color:var(--color-subtle)}.theme-float .theme-toggle:before{content:none}.theme-float[data-shown=false],body:has(.site-header[data-menu=open]) .theme-float{opacity:0;visibility:hidden;pointer-events:none}@media (prefers-reduced-motion:no-preference){.theme-float{transition:opacity var(--duration-base) var(--ease-out),visibility var(--duration-base)}}.hero{isolation:isolate;position:relative}.hero-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"text""photo""term";row-gap:2.5rem;display:grid}.hero-text{grid-area:text}.hero-copy,.hero-text{min-width:0}.hero-photo-slot{grid-area:photo;justify-self:center}.hero-term{grid-area:term;min-width:0}@media (max-width:47.99rem){.hero-grid{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"photo ident""copy copy""term term";gap:0 .875rem}.hero-text{display:contents}.hero-ident{grid-area:ident;align-self:end}.hero-copy{grid-area:copy;margin-top:1rem}.hero-photo-slot{place-self:end start}.hero-photo.portrait{width:var(--photo-avatar);aspect-ratio:1;border-radius:var(--radius-avatar)}.hero-photo .portrait-img{transform-origin:50% 40%;translate:0 10%;scale:1.3}.hero-term{margin-top:2.5rem}}@media (min-width:48rem){.hero-grid{--hero-gap:2.5rem;column-gap:var(--hero-gap);row-gap:var(--spacing-block);grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"text photo""term term"}.hero-photo-slot{place-self:center end}}@media (min-width:64rem){.hero-grid{--hero-gap:3rem;row-gap:calc(var(--spacing-block) + 1rem)}}.hero-eyebrow{flex-direction:column;gap:2px;display:flex}.eyebrow-sep{display:none}@media (min-width:48rem){.hero-eyebrow{flex-flow:wrap;align-items:center;gap:.625rem}.eyebrow-sep{border-radius:var(--radius-full);background-color:var(--color-border-strong);width:.25rem;height:.25rem;display:block}}@media (prefers-reduced-motion:no-preference){.js .hero-in{animation:hero-in var(--duration-slow) var(--ease-out) both;animation-delay:var(--d,0s)}.js .hero-in-photo{animation:photo-in var(--duration-slow) var(--ease-out) .15s both}.js .hero-in-term{animation:term-in var(--duration-slow) var(--ease-out) .25s both}}@keyframes hero-in{0%{opacity:0;transform:translateY(.5rem)}}@keyframes photo-in{0%{opacity:0;transform:scale(.96)}}@keyframes term-in{0%{opacity:0;transform:translateY(1rem)}}.hero-aurora{z-index:-1;pointer-events:none;opacity:.6;width:100%;height:32rem;-webkit-mask-image:linear-gradient(to bottom,var(--color-text) calc(100% - 7.5rem),transparent);mask-image:linear-gradient(to bottom,var(--color-text) calc(100% - 7.5rem),transparent);position:absolute;top:-4rem;right:0;overflow:hidden}@media (min-width:64rem){.hero-aurora{width:60%;height:120%;top:-10%}}.aurora-track{position:absolute;inset:0}.aurora-blob{border-radius:var(--radius-full);position:absolute}.aurora-blob--1{background:radial-gradient(closest-side,var(--aurora-1),transparent);width:72%;height:62%;top:4%;left:18%}.aurora-blob--2{background:radial-gradient(closest-side,var(--aurora-2),transparent);width:64%;height:56%;top:34%;left:40%}.aurora-blob--3{background:radial-gradient(closest-side,var(--aurora-3),transparent);width:52%;height:48%;top:46%;left:0}@media (prefers-reduced-motion:no-preference){.js .page-aurora .aurora-blob--1{animation:drift-1 var(--intro-max) var(--ease-in-out) both}.js .page-aurora .aurora-blob--2{animation:drift-2 var(--intro-max) var(--ease-in-out) both}.js .page-aurora .aurora-blob--3{animation:drift-3 var(--intro-max) var(--ease-in-out) both}}@keyframes drift-1{0%{transform:translate(-6%,4%)scale(.94)}}@keyframes drift-2{0%{transform:translate(6%,-5%)}}@keyframes drift-3{0%{transform:translate(5%,6%)scale(1.06)}}.page-aurora{z-index:-1;pointer-events:none;opacity:.5;width:min(100%,44rem);height:30rem;-webkit-mask-image:linear-gradient(to bottom,var(--color-text) 50%,transparent);mask-image:linear-gradient(to bottom,var(--color-text) 50%,transparent);position:absolute;top:-6rem;right:0;overflow:hidden}.portrait{aspect-ratio:4/5;border-radius:var(--radius-photo-sm);background-color:var(--color-subtle);box-shadow:var(--shadow-photo);margin:0;position:relative;overflow:hidden}.portrait-img{object-fit:cover;object-position:48% 50%;filter:saturate(1.05)contrast(1.02)}@media (min-width:48rem){.portrait{border-radius:var(--radius-photo)}}.hero-photo{width:var(--photo-w)}.signal-field{pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 15%,var(--color-text) 10%,transparent 80%);mask-image:radial-gradient(ellipse 70% 60% at 50% 15%,var(--color-text) 10%,transparent 80%);position:absolute;inset:0;overflow:hidden}@media (min-width:64rem){.signal-field{-webkit-mask-image:radial-gradient(ellipse 55% 80% at 72% 50%,var(--color-text) 30%,transparent 88%);mask-image:radial-gradient(ellipse 55% 80% at 72% 50%,var(--color-text) 30%,transparent 88%)}}.signal-dots{background-image:radial-gradient(circle,var(--dot) 1.1px,transparent 1.35px);background-position:0 0;background-size:32px 32px;position:absolute;inset:0}@media (min-width:48rem){.signal-dots{background-position:0 0;background-size:28px 28px}}.signal-field canvas{width:100%;height:100%;position:absolute;inset:0}.signal-field[data-live=true] .signal-static{opacity:0}.crumbs{padding-top:calc(var(--spacing) * 6)}@media (min-width:48rem){.crumbs{padding-top:calc(var(--spacing) * 8)}}.crumbs-list{font-size:var(--text-small);line-height:var(--text-small--line-height);flex-wrap:wrap;align-items:center;row-gap:.25rem;display:flex}.crumbs-list>li{align-items:center;display:inline-flex}.crumbs-list>li+li:before{content:"/";content:"/"/"";margin-inline:var(--spacing-inline);color:var(--color-text-faint)}.crumbs-link{min-height:max(1.5rem,24px);color:var(--color-text-muted);text-underline-offset:.22em;transition:color var(--duration-fast);border-radius:.25rem;align-items:center;text-decoration-line:none;text-decoration-thickness:1px;display:inline-flex}.crumbs-link:focus-visible,.crumbs-link:hover{color:var(--color-text);text-decoration-line:underline}.crumbs-current{color:var(--color-text);font-weight:var(--text-ui--font-weight)}[data-surface=night] .crumbs-link{color:var(--color-on-night-muted)}[data-surface=night] .crumbs-current,[data-surface=night] .crumbs-link:focus-visible,[data-surface=night] .crumbs-link:hover{color:var(--color-on-night)}[data-surface=night] .crumbs-list>li+li:before{color:var(--color-on-night-faint)}@media (forced-colors:active){.crumbs-link{color:linktext;text-decoration-line:underline}.crumbs-current{color:canvastext}}.eyebrow{font-size:var(--text-small);line-height:var(--text-small--line-height);color:var(--color-primary);font-weight:600}[data-surface=night] .eyebrow{color:var(--color-primary-on-night)}.contact-card .eyebrow{color:var(--color-on-gradient-muted)}.fact{--fact-hit:-.75rem;isolation:isolate;min-width:0;position:relative}.fact-icon{width:var(--fact-mark,2.25rem);height:var(--fact-mark,2.25rem);color:var(--color-primary);transition:color .2s var(--ease-out)}.fact-kicker{font-size:var(--text-small);line-height:var(--text-small--line-height);color:var(--color-text-muted);font-weight:500}.fact-main{flex-direction:column;align-items:flex-start;display:flex}.fact-link{outline:none}.fact-link:after{content:"";inset:var(--fact-hit,0);z-index:2;border-radius:var(--radius-sm);position:absolute}.fact-link:focus-visible:after{box-shadow:var(--shadow-focus)}.fact-label{font-size:var(--text-ui);line-height:var(--text-ui--line-height);letter-spacing:var(--text-ui--letter-spacing);color:var(--color-text-muted);margin-top:.5rem;display:block}.fact-detail{font-size:var(--text-micro);line-height:var(--text-micro--line-height);color:var(--color-text-faint);margin-top:2px;display:block}.fact-proof{max-width:46ch;color:var(--color-text-muted);margin-top:.75rem}.fact-cta,.fact-proof{font-size:var(--text-small);line-height:var(--text-small--line-height)}.fact-cta{color:var(--color-primary);align-items:center;gap:.375rem;margin-top:1rem;font-weight:500;display:inline-flex}.fact-arrow{transition:translate var(--duration-base) var(--ease-out),opacity var(--duration-base) var(--ease-out);display:inline-flex}.fact-polaroid{--polaroid-pad:.375rem}.fact-polaroid .polaroid-frame{rotate:var(--fact-polaroid-tilt);transition:rotate var(--duration-straighten) var(--ease-out),translate var(--duration-straighten) var(--ease-out)}.fact .metric-value{white-space:nowrap}.facts-hero:has(.fact-link:focus-visible) .fact-icon{color:var(--color-primary)}@media (pointer:fine){.facts-hero:hover .fact-icon{color:var(--color-primary)}}@media (prefers-reduced-motion:no-preference){.facts-hero:has(.fact-link:focus-visible) .fact-arrow{translate:.25rem}.facts-hero:has(.fact-link:focus-visible) .fact-polaroid .polaroid-frame{translate:0 -.25rem;rotate:0deg}.facts-hero:has(.fact-link:focus-visible) .line-icon>[data-accent]{animation:fact-redraw var(--duration-redraw) var(--ease-emphasis)}}@media (prefers-reduced-motion:no-preference) and (pointer:fine){.facts-hero:hover .fact-arrow{translate:.25rem}.facts-hero:hover .fact-polaroid .polaroid-frame{translate:0 -.25rem;rotate:0deg}.facts-hero:hover .line-icon>[data-accent]{animation:fact-redraw var(--duration-redraw) var(--ease-emphasis)}}.facts{--facts-gap:2.5rem;background-color:var(--color-tint);position:relative}.facts-more{margin-top:var(--spacing-block)}.facts-grid{grid-template-columns:minmax(0,1fr);display:grid}.facts-hero{padding-bottom:var(--facts-gap);border-bottom:1px solid var(--color-circuit);flex-direction:column;align-items:flex-start;display:flex}.facts-polaroid{--polaroid-pad:.5rem;width:9.5rem}.facts-hero-body{flex-direction:column;align-items:flex-start;margin-top:1.75rem;display:flex}.facts-head{--fact-mark:1.75rem;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.facts-hero .fact-label{max-width:40ch}.fact-rank{border-top:1px solid var(--color-circuit);flex-wrap:wrap;align-items:baseline;gap:.25rem .625rem;margin-top:1.25rem;padding-top:1.25rem;display:flex}.fact-rank .metric-value{white-space:nowrap;font-variant-numeric:proportional-nums}.fact-rank-label{max-width:32ch;font-size:var(--text-lead);letter-spacing:var(--text-lead--letter-spacing);color:var(--color-text);font-weight:500;line-height:1.35}.facts-item{--fact-mark:2rem;margin-top:var(--facts-gap);flex-direction:column;align-items:flex-start;display:flex}.facts-item-top{height:var(--fact-mark);align-items:center;margin-bottom:1rem;display:flex}@media (min-width:48rem){.facts{--facts-gap:3.5rem}.facts-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:2.5rem}.facts-hero{grid-column:1/-1;grid-template-columns:13rem minmax(0,1fr);align-items:start;column-gap:3rem;display:grid}.facts-polaroid{--polaroid-pad:.625rem;width:13rem}.facts-hero-body{margin-top:3rem}.facts-hero .metric--l .metric-value{font-size:var(--text-display);line-height:var(--text-display--line-height);letter-spacing:var(--text-display--letter-spacing)}.facts-item .metric-value{white-space:normal}}@media (min-width:64rem){.facts-grid{column-gap:3.5rem}.facts-hero{grid-template-columns:16rem minmax(0,1fr);column-gap:4rem}.facts-polaroid{width:16rem}.facts{margin-inline:min(2.5%,calc(max((100% - var(--container-content)) / 2, 0px) + var(--spacing-gutter) - 2.5rem))}}@media (max-width:47.99rem){.facts{--facts-gap:1.75rem}.facts-more{margin-top:1.75rem}.facts-polaroid{--polaroid-pad:.375rem;width:7rem}.facts-hero-body{margin-top:1.25rem}.facts-head{margin-bottom:.75rem}.facts-hero .metric--l .metric-value{font-size:var(--text-metric)}.fact-rank{margin-top:1rem;padding-top:1rem}.fact-rank .metric--m .metric-value,.facts-item .metric--m .metric-value{font-size:var(--text-h2)}.fact-rank-label{font-size:var(--text-body)}.facts-item{--fact-mark:1.75rem;grid-template-columns:var(--fact-mark) minmax(0,1fr);align-items:start;column-gap:.875rem;display:grid}.facts-item-top{margin-bottom:0}.facts-item>:not(.facts-item-top){grid-column:2}.fact-proof{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:.5rem;display:-webkit-box;overflow:hidden}.fact-cta{margin-top:.75rem}}@keyframes fact-redraw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.line-icon{flex-shrink:0;overflow:visible}.line-icon>*{fill:none;stroke:currentColor;stroke-width:var(--stroke-hair);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:0}.line-icon>[data-dash]{stroke-dasharray:.035 .045}@media (prefers-reduced-motion:no-preference){[data-reveal=hidden] .line-icon>:not([data-dash]){stroke-dashoffset:1px}[data-reveal=hidden] .line-icon>[data-dash]{opacity:0}[data-reveal=shown] .line-icon>*{transition:stroke-dashoffset calc(var(--duration-draw-icon) * .6) var(--ease-emphasis),opacity var(--duration-slow) var(--ease-out);transition-delay:calc(var(--i,0) * var(--stagger-fact) + var(--s,0) * 80ms)}}@media (forced-colors:active){.line-icon>*{stroke:canvastext}}.circuit-host{position:relative}.circuit{z-index:0;pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.circuit-line{fill:none;stroke:var(--color-circuit);stroke-width:var(--stroke-hair);stroke-linecap:round;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke .2s var(--ease-out)}.circuit-line[data-on]{stroke:var(--color-circuit-on)}.circuit-join,.circuit-node{stroke-width:var(--stroke-hair);vector-effect:non-scaling-stroke;opacity:0;transform-box:fill-box;transform-origin:50%;transform:scale(0)}.circuit-node{r:var(--circuit-node);fill:var(--color-surface);stroke:var(--color-circuit-on)}.circuit-join{fill:var(--color-circuit-on)}[data-drawn]>.circuit-line{stroke-dashoffset:0}[data-drawn]>.circuit-join,[data-drawn]>.circuit-node{opacity:1;transform:none}@media (prefers-reduced-motion:no-preference){[data-drawn]>.circuit-line{transition:stroke-dashoffset var(--duration-draw) var(--ease-emphasis),stroke .2s var(--ease-out)}[data-drawn]>.circuit-join,[data-drawn]>.circuit-node{transition:opacity .16s var(--ease-out),transform .16s var(--ease-out);transition-delay:calc(var(--duration-draw) * .85)}[data-link=l0][data-drawn]>.circuit-line{transition-delay:var(--duration-slow),0s}[data-link=l0][data-drawn]>.circuit-node{transition-delay:calc(var(--duration-slow) + var(--duration-draw) * .85)}}@media (forced-colors:active){.circuit{display:none}}@media print{.circuit{display:none}}.marquee{background-color:var(--color-surface);border-block:1px solid var(--color-border);margin-block:var(--spacing-section);padding-block:var(--spacing-section);overflow:clip}.mq-head{margin-bottom:var(--spacing-band-title);padding-inline:var(--spacing-gutter);grid-template-columns:1fr auto 1fr;align-items:center;column-gap:.75rem;display:grid}.mq-title{text-align:center;grid-column:2}.mq-toggle{border:1px solid var(--color-border);border-radius:var(--radius-full);width:2rem;height:2rem;color:var(--color-text-faint);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);grid-column:3;justify-content:center;justify-self:end;align-items:center;display:inline-flex;position:relative}.mq-toggle:before{content:"";position:absolute;inset:-.25rem}.mq-toggle:hover{background-color:var(--color-subtle);color:var(--color-text)}.mq-toggle-icon{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}@media (max-width:47.99rem){.marquee{padding-block:2.5rem}.mq-head{margin-bottom:1.25rem}.mq-toggle:before{inset:calc((var(--touch-target) - 2rem) / -2)}}.mq-row{-webkit-mask-image:linear-gradient(90deg,transparent,var(--color-text) 10%,var(--color-text) 90%,transparent);mask-image:linear-gradient(90deg,transparent,var(--color-text) 10%,var(--color-text) 90%,transparent);overflow:clip}.mq-track{width:max-content;display:flex}.mq-list{flex-shrink:0}.mq-item,.mq-list{align-items:center;display:flex}.mq-item{padding-inline:var(--logo-gap)}.mq-logo{max-width:100%;display:block;position:relative}.mq-logo[data-knockout]{--logo-rest-filter:var(--logo-knockout-filter)}.mq-logo-img{object-fit:contain;width:auto;max-width:100%;height:calc(clamp(var(--logo-h-min), calc(sqrt(var(--logo-area) / var(--r,3)) * .0625rem), var(--logo-h-max)) * var(--k,1));filter:var(--logo-rest-filter);opacity:var(--logo-rest-opacity);transition:filter var(--duration-base) var(--ease-out),opacity var(--duration-base) var(--ease-out);display:block}.mq-logo-img--rest{filter:var(--logo-mono-filter);opacity:1;position:absolute;inset:0}.mq-logo[data-rest] .mq-logo-img:not(.mq-logo-img--rest){filter:var(--logo-hover-filter);opacity:0}@media (hover:hover){.mq-logo:hover .mq-logo-img{filter:var(--logo-hover-filter);opacity:1}.mq-logo[data-rest]:hover .mq-logo-img:not(.mq-logo-img--rest){opacity:1}.mq-logo[data-rest]:hover .mq-logo-img--rest{opacity:0}}@media (forced-colors:active){.mq-logo .mq-logo-img,.mq-logo[data-rest] .mq-logo-img:not(.mq-logo-img--rest){filter:none;opacity:1}.mq-logo .mq-logo-img--rest{display:none}}.mq-logo-name{font-size:var(--text-h3);letter-spacing:-.02em;color:var(--color-text-faint);white-space:nowrap;font-weight:600}@media (prefers-reduced-motion:no-preference){.js .mq-track{animation:mq-loop calc(var(--mq-w,1600) / var(--marquee-speed) * 1s) linear infinite}.marquee[data-paused] .mq-track,.mq-row:focus-within .mq-track{animation-play-state:paused}}@keyframes mq-loop{0%{transform:translate(0)}to{transform:translateX(calc(-100% / var(--mq-n,4)))}}.no-js .mq-copy,.no-js .mq-toggle{display:none}.no-js .mq-list,.no-js .mq-track{flex-wrap:wrap;justify-content:center;row-gap:1.25rem;width:auto}.no-js .mq-list{flex:100%;min-width:0}.no-js .mq-row{padding-inline:var(--spacing-gutter);-webkit-mask-image:none;mask-image:none}.no-js .mq-item{padding-inline:calc(var(--logo-gap) * .75)}@media (prefers-reduced-motion:reduce){.mq-logo-img{transition:none}.mq-copy,.mq-toggle{display:none}.mq-list,.mq-track{flex-wrap:wrap;justify-content:center;row-gap:1.25rem;width:auto}.mq-list{flex:100%;min-width:0}.mq-row{padding-inline:var(--spacing-gutter);-webkit-mask-image:none;mask-image:none}.mq-item{padding-inline:calc(var(--logo-gap) * .75)}}.pcard{isolation:isolate;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition-property:box-shadow,border-color,transform;transition-duration:var(--duration-fast);transition-timing-function:var(--ease-out);flex-direction:column;padding:.5rem;display:flex;position:relative}.pcard:has(.pcard-link:focus-visible),.pcard:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-tint)}.pcard:has(.pcard-link:focus-visible){box-shadow:var(--shadow-md),var(--shadow-focus)}.pcard-link{text-wrap:balance;text-underline-offset:.2em;transition:text-decoration-color var(--duration-fast);outline:none;text-decoration-line:underline;text-decoration-color:#0000;text-decoration-thickness:1px}.pcard-link:after{content:"";z-index:2;border-radius:var(--radius-md);position:absolute;inset:0}.pcard-link:focus-visible,.pcard:hover .pcard-link{text-decoration-color:currentColor}.pcard .arrow{color:var(--color-text-faint);transition:transform var(--duration-base) var(--ease-out),color var(--duration-fast);display:inline-block}.pcard:has(.pcard-link:focus-visible) .arrow,.pcard:hover .arrow{color:var(--color-primary)}.pcard:after,.pcard:before{content:"";pointer-events:none;border-radius:inherit;opacity:0;transition:opacity .2s var(--ease-out);position:absolute}.pcard:before{z-index:-1;background:radial-gradient(20rem circle at var(--mx,50%) var(--my,50%),var(--spotlight),transparent 70%);inset:0}.pcard:after{z-index:3;background:radial-gradient(15rem circle at var(--mx,50%) var(--my,50%),var(--spotlight-edge),transparent 70%);-webkit-mask:linear-gradient(var(--color-text) 0 0) content-box,linear-gradient(var(--color-text) 0 0);-webkit-mask-composite:xor;-webkit-mask:linear-gradient(var(--color-text) 0 0) content-box exclude,linear-gradient(var(--color-text) 0 0);mask:linear-gradient(var(--color-text) 0 0) content-box exclude,linear-gradient(var(--color-text) 0 0);padding:1px;inset:-1px}@media (prefers-reduced-motion:no-preference) and (pointer:fine){.pcard:hover:after,.pcard:hover:before{opacity:1}}@media (prefers-reduced-motion:no-preference){.pcard:has(.pcard-link:focus-visible),.pcard:hover{transform:translateY(-.1875rem)}.pcard:active{transition-duration:var(--duration-instant);transform:translateY(0)scale(.995)}.pcard:has(.pcard-link:focus-visible) .arrow,.pcard:hover .arrow{transform:translate(.25rem)}.pcard:has(.pcard-link:focus-visible):before{opacity:1;--mx:50%;--my:40%}}.pcard-visual{isolation:isolate;border-radius:var(--radius-sm);aspect-ratio:16/10;position:relative;overflow:hidden}.pcard-body{padding:var(--spacing-card) calc(var(--spacing-card) - .5rem) calc(var(--spacing-card) - .5rem);flex-direction:column;flex:auto;gap:.75rem;display:flex}.pcard-foot{border-top:1px solid var(--color-border);margin-top:auto;padding-top:1rem}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.featured-grid{gap:var(--spacing-grid);grid-template-columns:minmax(0,1fr);display:grid}.pcard--featured .pcard-visual{aspect-ratio:4/3}.pcard--featured .metric--s>.metric-label{flex-basis:100%;margin-top:.25rem}@media (min-width:48rem){.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:0}.featured-grid>.pcard--featured{grid-row:span 6;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;row-gap:0;display:grid}.featured-grid>.pcard--featured:nth-child(n+3){margin-top:var(--spacing-grid)}.pcard--featured .pcard-body{grid-row:span 5;grid-template-rows:subgrid;row-gap:.75rem;display:grid}.pcard--featured .pcard-body>*{align-self:start}.pcard--featured .pcard-foot{align-self:end;margin-top:0}}@media (min-width:64rem){.pcard--featured .pcard-body{padding-inline:var(--spacing-card)}}@media (max-width:47.99rem){.featured-grid>.pcard--featured:nth-child(n+4){display:none}.pcard--featured .pcard-visual{aspect-ratio:16/10}.pcard--featured .pcard-body{gap:.5rem}.pcard--featured .pcard-summary{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.pcard--featured .pcard-tags{padding-top:.25rem}.pcard--featured .pcard-tags ul{max-height:1.5rem;overflow:hidden}.pcard--featured .pcard-tags li{display:flex}.pcard--featured .pcard-tags li:nth-child(n+4){display:none}}@media (min-width:48rem){.pcard--horizontal{flex-direction:row}.pcard--horizontal .pcard-visual{aspect-ratio:4/3;flex-shrink:0;width:40%}.pcard--horizontal .pcard-body{padding-inline:var(--spacing-card);justify-content:center}}.pm{isolation:isolate;border-radius:inherit;background-color:var(--pm-accent);position:absolute;inset:0;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.pm{background-color:color-mix(in oklab,var(--pm-accent) 20%,var(--color-night))}}.pm:after{content:"";z-index:3;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--white-a8);pointer-events:none;position:absolute;inset:0}.pm-img{object-fit:cover;object-position:var(--pm-pos,50% 40%);transition:transform var(--duration-media) var(--ease-emphasis),filter var(--duration-media) var(--ease-emphasis),opacity .32s var(--ease-out);transform:scale(1.02)}.pm-tint{z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 50%,var(--pm-accent));position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.pm-tint{background:linear-gradient(180deg,transparent 50%,color-mix(in oklab,var(--pm-accent) 26%,transparent))}}.pm-tint{mix-blend-mode:multiply;transition:opacity var(--duration-media) var(--ease-emphasis)}.pm-glare{z-index:2;pointer-events:none;opacity:0;background:radial-gradient(16.25rem circle at var(--mx,50%) var(--my,50%),var(--white-a22),transparent 60%);mix-blend-mode:soft-light;transition:opacity .2s var(--ease-out);position:absolute;inset:0}.pm-glare:after{content:"";mix-blend-mode:normal;background:radial-gradient(20rem circle at var(--mx,50%) var(--my,50%),var(--spotlight),transparent 70%);position:absolute;inset:0}.pm--stage{background-color:var(--pm-accent)}@supports (color:color-mix(in lab,red,red)){.pm--stage{background-color:color-mix(in oklab,var(--pm-accent) 8%,var(--color-surface))}}.pm--stage{background-image:radial-gradient(70% 90% at 15% 0,var(--pm-accent),transparent),radial-gradient(60% 70% at 100% 100%,#66aeb733,transparent)}@supports (color:color-mix(in lab,red,red)){.pm--stage{background-image:radial-gradient(70% 90% at 15% 0,color-mix(in oklab,var(--pm-accent) 32%,transparent),transparent),radial-gradient(60% 70% at 100% 100%,color-mix(in oklab,var(--color-cyan) 20%,transparent),transparent)}}.pm--stage:after{box-shadow:var(--shadow-inset)}.pm-dots{background-image:radial-gradient(circle,#131a1b14 1px,#0000 1.25px);position:absolute;inset:-1rem}@supports (color:color-mix(in lab,red,red)){.pm-dots{background-image:radial-gradient(circle,color-mix(in oklab,var(--color-text) 8%,transparent) 1px,transparent 1.25px)}}.pm-dots{transition:transform var(--duration-media) var(--ease-emphasis);background-size:.75rem .75rem}.pm-shot{border-radius:var(--radius-shot) var(--radius-shot) 0 0;box-shadow:var(--shadow-shot),0 0 0 1px #131a1b14;position:absolute;inset:9% 8% -6%;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.pm-shot{box-shadow:var(--shadow-shot),0 0 0 1px color-mix(in oklab,var(--color-text) 8%,transparent)}}.pm-shot{background-color:var(--color-surface);transition:transform var(--duration-media) var(--ease-emphasis),box-shadow var(--duration-media) var(--ease-emphasis),filter var(--duration-media) var(--ease-emphasis),opacity .32s var(--ease-out)}.pm-shot .pm-img{object-position:var(--pm-pos,50% 0);transform:none}@media (prefers-reduced-motion:no-preference){.js .pm-img[data-loaded=false],.js .pm-shot[data-loaded=false]{opacity:0}.js .pm-shot[data-loaded=false]{transform:translateY(.5rem)}}@media (prefers-reduced-motion:no-preference) and (pointer:fine){.pcard:hover .pm-glare{opacity:1}.pcard:hover .pm--cover .pm-img{transform:translate3d(calc(var(--px,0) * -.625rem),calc(var(--py,0) * -.5rem),0) scale(1.07);filter:saturate(1.1)brightness(1.04)}.pcard:hover .pm-tint{opacity:.4}.pcard:hover .pm-shot{transform:translate3d(calc(var(--px,0) * -.5rem),calc(-.625rem + var(--py,0) * -.375rem),0) scale(1.035);box-shadow:var(--shadow-shot-hover),0 0 0 1px #131a1b14}@supports (color:color-mix(in lab,red,red)){.pcard:hover .pm-shot{box-shadow:var(--shadow-shot-hover),0 0 0 1px color-mix(in oklab,var(--color-text) 8%,transparent)}}.pcard:hover .pm-shot{filter:saturate(1.08)}.pcard:hover .pm-dots{transform:translate3d(calc(var(--px,0) * .75rem),calc(var(--py,0) * .5rem),0)}.pcard[data-track] .pm-dots,.pcard[data-track] .pm-img,.pcard[data-track] .pm-shot{transition-duration:.14s;transition-timing-function:linear}}@media (prefers-reduced-motion:no-preference){.pcard:has(.pcard-link:focus-visible) .pm--cover .pm-img{filter:saturate(1.1)brightness(1.04);transform:scale(1.07)}.pcard:has(.pcard-link:focus-visible) .pm-tint{opacity:.4}.pcard:has(.pcard-link:focus-visible) .pm-shot{transform:translateY(-.625rem)scale(1.035)}}.project-hero{grid-template-columns:minmax(0,1fr);grid-template-areas:"intro""visual""details";row-gap:2rem;display:grid}.project-hero-intro{grid-area:intro}.project-hero-visual{grid-area:visual}.project-hero-details{grid-area:details}@media (min-width:64rem){.project-hero{column-gap:var(--spacing-grid);grid-template-rows:auto 1fr;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"intro visual""details visual";align-items:start;row-gap:0}.project-hero-details{margin-top:1.5rem}.project-hero h1{max-width:22ch}}.project-hero h1{text-wrap:balance}.project-visual{isolation:isolate;aspect-ratio:4/3;border-radius:var(--radius-lg);box-shadow:var(--shadow-shot);position:relative;overflow:clip}@media (min-width:48rem) and (max-width:63.99rem){.project-visual{aspect-ratio:16/10}}.project-visual .pm-tint{opacity:.5}@media (prefers-reduced-motion:no-preference) and (pointer:fine){.project-visual[data-tracking] .pm-glare{opacity:.5}}.project-meta{border-block:1px solid var(--color-border)}.project-meta,.project-meta>div{padding-block:.5rem;display:grid}.project-meta>div{grid-template-columns:6.5rem minmax(0,1fr);align-items:baseline;gap:.75rem}.project-meta dt{font-size:var(--text-small);line-height:var(--text-small--line-height);color:var(--color-text-faint)}.project-meta dd{font-size:var(--text-ui);line-height:var(--text-ui--line-height);color:var(--color-text)}@media (min-width:48rem) and (max-width:63.99rem){.project-meta{column-gap:var(--spacing-grid);grid-template-columns:repeat(2,minmax(0,1fr))}}.project-num{font-family:var(--font-mono);font-size:var(--text-small);line-height:var(--text-small--line-height);letter-spacing:0;font-variant-numeric:tabular-nums;color:var(--color-text-faint);font-weight:400}.toc-num{margin-right:.625rem}.project-result{padding:var(--spacing-card);scroll-margin-top:5.5rem}@media (min-width:64rem){.project-result{padding:2.25rem 2.5rem 2.5rem}}.project-result-title{font-size:var(--text-ui);line-height:var(--text-ui--line-height);color:var(--color-primary);outline:none;align-items:center;gap:.5rem;font-weight:500;display:flex}.project-result-text{font-size:var(--text-result);line-height:var(--text-result--line-height);letter-spacing:var(--text-result--letter-spacing);font-weight:var(--text-result--font-weight);color:var(--color-text);text-wrap:pretty;margin-top:.875rem}@media (min-width:64rem){.project-body{column-gap:var(--spacing-grid);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.project-body>aside{grid-column:1/4}.project-flow{grid-column:4/-1}.project-body[data-toc=false] .project-flow{grid-column:1/-1}}.project-flow{gap:var(--spacing-block);flex-direction:column;min-width:0;display:flex}.project-block{max-width:var(--container-reading);scroll-margin-top:5.5rem}.project-block h3{font-size:var(--text-h3);line-height:var(--text-h3--line-height);letter-spacing:var(--text-h3--letter-spacing);font-weight:var(--text-h3--font-weight);outline:none;align-items:baseline}.project-block h3,.project-text{color:var(--color-text);gap:.75rem;display:flex}.project-text{max-width:var(--container-measure);flex-direction:column;margin-top:.75rem}.project-callout{padding:var(--spacing-card);border-radius:var(--radius-md)}.project-callout--decision{background-color:var(--color-surface);border:1px solid var(--color-border);border-left:var(--stroke-accent-lg) solid var(--color-primary)}.project-callout--decision .project-text,.project-callout--learnings .project-text{font-size:var(--text-lead);line-height:var(--text-lead--line-height);letter-spacing:var(--text-lead--letter-spacing)}.project-callout--proves{background-color:var(--color-primary-soft);border:1px solid var(--color-primary-tint)}.project-callout--proves .project-check{color:var(--color-primary);align-self:center}.project-callout--learnings{border-left:var(--stroke-accent) solid var(--color-coral);border-radius:0;padding:0 0 0 1.25rem}.project-callout--learnings .project-text{font-weight:500}.project-missing{border-style:dashed;border-color:var(--color-border-strong);color:var(--color-text-muted)}@media (forced-colors:active){.project-callout,.project-result{border:1px solid canvastext}}.pgallery{gap:var(--spacing-grid);grid-template-columns:minmax(0,1fr);display:grid}.pgallery[data-width=reading]{max-width:var(--container-reading)}@media (min-width:48rem){.pgallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gfig--portrait,.gfig--wide{grid-column:1/-1}}.gfig-frame{aspect-ratio:4/3;background-color:var(--color-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);position:relative;overflow:hidden}@media (min-width:48rem){.gfig--wide .gfig-frame{aspect-ratio:16/9}}.gfig--portrait .gfig-frame{aspect-ratio:4/5}.gfig-img{object-fit:cover;width:100%;height:100%;display:block}.gfig-caption{max-width:60ch;font-size:var(--text-small);line-height:var(--text-small--line-height);color:var(--color-text-muted);margin-top:.75rem}.gfig-open{width:100%;font:inherit;color:inherit;text-align:inherit;cursor:zoom-in;padding:0;display:block}.gfig-open:focus-visible{box-shadow:var(--shadow-focus);outline:none}.gfig-chip{z-index:2;border-radius:var(--radius-full);background-color:var(--color-chip);min-height:2rem;color:var(--color-on-night);font-size:var(--text-small);pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);align-items:center;gap:.375rem;padding-inline:.75rem;font-weight:500;line-height:1;display:inline-flex;position:absolute;bottom:.75rem;right:.75rem}@media (hover:hover){.gfig:not(.gfig--diagram) .gfig-chip{opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.gfig-open:focus-visible .gfig-chip,.gfig-open:hover .gfig-chip{opacity:1}}.gfig--diagram .gfig-frame{background-color:var(--color-diagram)}.gfig--diagram .gfig-img{object-fit:contain}.gfig--stage .gfig-frame{justify-content:center;align-items:center;display:flex}.gfig--stage .gfig-img{object-fit:contain;border-radius:var(--radius-md);width:auto;max-width:80%;height:58%;box-shadow:var(--shadow-shot)}.gfig--pano{grid-column:1/-1}.gfig-frame--pano{aspect-ratio:auto;background-color:var(--color-diagram);height:clamp(13rem,30vw,22rem)}.gfig-scroll{overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--color-border-strong) var(--color-transparent);cursor:zoom-in;height:100%;overflow:auto hidden}.gfig-scroll:focus-visible{box-shadow:inset 0 0 0 2px var(--color-focus);outline:none}.gfig-pano-img{width:auto;max-width:none;height:calc(100% - .75rem);display:block}.gfig-frame--pano:after{content:"";background-image:linear-gradient(90deg,var(--color-transparent),var(--color-diagram));pointer-events:none;width:5rem;transition:opacity var(--duration-fast) var(--ease-out);position:absolute;top:0;bottom:.75rem;right:0}.gfig-frame--pano[data-edge=end]:after{opacity:0}.gfig-scroll-hint{z-index:2;border-radius:var(--radius-full);background-color:var(--color-chip);min-height:2rem;color:var(--color-on-night);font-size:var(--text-small);pointer-events:none;transition:opacity var(--duration-base) var(--ease-out);align-items:center;gap:.375rem;padding-inline:.75rem;font-weight:500;line-height:1;display:inline-flex;position:absolute;bottom:1.5rem;left:.75rem}.gfig-frame--pano:not([data-edge=start]) .gfig-scroll-hint{opacity:0}.gfig-pano-open{z-index:2;border-radius:var(--radius-full);cursor:zoom-in;background:0 0;width:9rem;height:3.5rem;padding:0;position:absolute;bottom:.75rem;right:0}.gfig-pano-open .gfig-chip{bottom:.75rem}.gfig-pano-open:focus-visible{outline:none}.gfig-pano-open:focus-visible .gfig-chip{box-shadow:var(--shadow-focus)}@media (prefers-reduced-motion:no-preference){@keyframes pano-nudge{0%,to{translate:0}50%{translate:.25rem}}.gfig-frame--pano[data-edge=start] .gfig-scroll-hint svg{animation:pano-nudge 1.6s var(--ease-in-out) 3}[data-reveal=hidden] .gfig{opacity:0;transform:scale(.98)}[data-reveal=shown] .gfig{transition:opacity var(--duration-reveal) var(--ease-out),transform var(--duration-reveal) var(--ease-out);transition-delay:calc(var(--i,0) * var(--stagger))}}.pv{background-color:var(--pv-accent);position:absolute;inset:0}@supports (color:color-mix(in lab,red,red)){.pv{background-color:color-mix(in oklab,var(--pv-accent) 8%,var(--color-surface))}}.pv{background-image:radial-gradient(circle,var(--dot-faint) 1px,transparent 1.25px),radial-gradient(70% 90% at 15% 0,var(--pv-accent),transparent),radial-gradient(60% 70% at 100% 100%,#66aeb729,transparent)}@supports (color:color-mix(in lab,red,red)){.pv{background-image:radial-gradient(circle,var(--dot-faint) 1px,transparent 1.25px),radial-gradient(70% 90% at 15% 0,color-mix(in oklab,var(--pv-accent) 24%,transparent),transparent),radial-gradient(60% 70% at 100% 100%,color-mix(in oklab,var(--color-cyan) 16%,transparent),transparent)}}.pv{box-shadow:var(--shadow-inset);border-radius:inherit;background-size:.75rem .75rem,100% 100%,100% 100%;justify-content:center;align-items:center;display:flex}.pv svg{width:100%;height:100%;overflow:visible}.pv-ink{fill:var(--color-surface);stroke:var(--pv-accent)}@supports (color:color-mix(in lab,red,red)){.pv-ink{stroke:color-mix(in oklab,var(--pv-accent) 35%,var(--color-border))}}.pv-ink{stroke-width:1px}.pv-block{fill:var(--pv-accent)}@supports (color:color-mix(in lab,red,red)){.pv-block{fill:color-mix(in oklab,var(--pv-accent) 16%,var(--color-surface))}}.pv-strong{fill:var(--pv-accent)}.pv-line{fill:none;stroke:var(--pv-accent);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.pv-dash{fill:none;stroke:var(--pv-accent);stroke-width:1.25px;stroke-dasharray:4 3}.pv-faint{fill:var(--pv-accent)}@supports (color:color-mix(in lab,red,red)){.pv-faint{fill:color-mix(in oklab,var(--pv-accent) 10%,var(--color-subtle))}}.pv-fade,.pv-light,.pv-move,.pv-show{transform-box:fill-box;transform-origin:50%}.pv-show{opacity:0}.project-visual .pv-dash,.project-visual .pv-ink,.project-visual .pv-line{vector-effect:non-scaling-stroke;stroke-width:1.5px}.pv-caption{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--color-text-faint);display:none;position:absolute;bottom:.75rem;right:1rem}@media (min-width:40rem){.pv-caption{display:block}}@media (prefers-reduced-motion:no-preference){.pv-fade,.pv-light,.pv-move,.pv-show{transition-property:transform,opacity,fill;transition-duration:var(--duration-base);transition-timing-function:var(--ease-out)}.pv-play:focus-within .pv-move,.pv-play:hover .pv-move{transform:translate(var(--tx,0),var(--ty,0)) rotate(var(--rot,0deg));transition-duration:var(--duration-slow)}.pv-play:focus-within .pv-fade,.pv-play:hover .pv-fade{opacity:0;transform:scale(.6)}.pv-play:focus-within .pv-show,.pv-play:hover .pv-show{opacity:1;transition-delay:calc(var(--d,0) * .12s + .12s)}.pv-play:focus-within .pv-light,.pv-play:hover .pv-light{fill:var(--color-cyan);transition-delay:calc(var(--d,0) * .12s)}.pv-play:focus-within .pv-rotate,.pv-play:hover .pv-rotate{transition-duration:var(--duration-slow);transform:rotate(0)}}.pv-rotate{transform-box:view-box;transform-origin:10rem 6.25rem;transition:transform var(--duration-base) var(--ease-out);transform:rotate(6deg)}@media (prefers-reduced-motion:reduce){.pv-rotate{transform:none}.pv-fade{opacity:0}.pv-show{opacity:1}.pv-move{transform:translate(var(--tx,0),var(--ty,0)) rotate(var(--rot,0deg))}.pv-light{fill:var(--color-cyan)}}.term-slot{width:100%;display:grid}.term-slot>.dock,.term-slot>.term{grid-area:1/1}.term-slot[data-win=closing],.term-slot[data-win=opening]{min-height:var(--term-h)}.term-slot[data-win=closed]{min-height:0}@media (prefers-reduced-motion:no-preference){.term-slot{transition:min-height var(--duration-base) var(--ease-out)}.term-slot[data-win=opening]{transition-duration:.2s}}.term{--focus-gap:var(--color-surface);--shadow-focus:0 0 0 2px var(--focus-gap),0 0 0 4px var(--color-focus);border-radius:var(--radius-window-sm);box-shadow:var(--shadow-window);background-color:var(--color-surface);color:var(--color-text);font-family:var(--font-sans);flex-direction:column;align-self:start;display:flex;position:relative;overflow:hidden}@media (min-width:40rem){.term{border-radius:var(--radius-window)}}.term ::selection{background-color:var(--color-primary-soft);color:var(--color-text)}@media (prefers-reduced-motion:no-preference){.term[data-state=closing]{transform-origin:bottom;animation:win-close var(--duration-window-close) var(--ease-window-close) both;pointer-events:none}.term[data-state=opening]{transform-origin:bottom;animation:win-close var(--duration-window-open) var(--ease-window-open) .2s reverse both;pointer-events:none}}@media (prefers-reduced-motion:reduce){.term[data-state=closing]{animation:fade-out .12s linear both}.term[data-state=opening]{animation:fade-in .12s linear both}}@keyframes win-close{0%{opacity:1;transform:none}50%{transform:translate(calc(var(--dx) * .5),calc(var(--dy) * .8)) scale(min(1,calc(var(--sx) * 4)),min(1,calc(var(--sy) * 2)));opacity:1}60%{opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(var(--sx),var(--sy));opacity:0}}@keyframes fade-out{to{opacity:0}}.term-titlebar{--focus-gap:var(--color-subtle);--shadow-focus:0 0 0 2px var(--focus-gap),0 0 0 4px var(--color-focus);background-image:linear-gradient(var(--color-surface),var(--color-subtle));border-bottom:1px solid var(--color-border);-webkit-user-select:none;user-select:none;flex-shrink:0;height:1.75rem}.term-titlebar,.traffic{align-items:center;display:flex;position:relative}.traffic{z-index:1;gap:.5rem;margin-left:.75rem}.traffic-btn,.traffic-dot{border-radius:var(--radius-full);place-items:center;width:.75rem;height:.75rem;display:grid;position:relative;box-shadow:inset 0 0 0 .5px #131a1b1f}@supports (color:color-mix(in lab,red,red)){.traffic-btn,.traffic-dot{box-shadow:inset 0 0 0 .5px color-mix(in oklab,var(--color-text) 12%,transparent)}}.traffic-btn,.traffic-dot{color:#131a1b8c}@supports (color:color-mix(in lab,red,red)){.traffic-btn,.traffic-dot{color:color-mix(in oklab,var(--color-text) 55%,transparent)}}.traffic-btn{cursor:pointer}.traffic-btn:before{content:"";position:absolute;inset:-.5rem}.traffic-btn:focus-visible{box-shadow:inset 0 0 0 1px var(--color-traffic-red-rim),var(--shadow-focus);outline:none}.traffic--close{background-color:var(--color-traffic-red);box-shadow:inset 0 0 0 1px var(--color-traffic-red-rim)}.traffic--min{background-color:var(--color-traffic-yellow)}.traffic--max{background-color:var(--color-traffic-green)}.traffic svg{opacity:0;width:.5rem;height:.5rem}.term-titlebar:hover .traffic svg,.traffic-btn:focus-visible svg{opacity:1}@media (max-width:47.99rem),(pointer:coarse){.term-titlebar{height:var(--touch-target)}.traffic{gap:.625rem;margin-left:1rem}.traffic-btn,.traffic-dot{width:.875rem;height:.875rem}.traffic-btn:before{inset:calc((var(--touch-target) - .875rem) / -2)}.traffic svg{width:.5625rem;height:.5625rem}.traffic-btn svg{opacity:1}}.term-title{font-size:var(--text-term-title);line-height:var(--text-term-title--line-height);color:var(--color-text-muted);pointer-events:none;white-space:nowrap;justify-content:center;align-items:center;font-weight:500;display:flex;position:absolute;inset:0}.term-body{min-height:var(--term-body-min);max-height:var(--term-body-max);overscroll-behavior:contain;overflow-wrap:anywhere;scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent;padding:1rem;position:relative;overflow-y:auto}@media (min-width:48rem){.term-body{padding:1.25rem 1.5rem}}.term-body[data-scrolled=true]{-webkit-mask-image:linear-gradient(transparent,var(--color-text) 1rem);mask-image:linear-gradient(transparent,var(--color-text) 1rem)}:where(.term-body) :is(p,li){margin:0}.ask-msg{grid-template-columns:var(--spacing-avatar) minmax(0,1fr);align-items:start;column-gap:.75rem;display:grid}.ask-msg,.ask-you{margin-top:1.25rem}.term-body>.ask-msg:first-child{margin-top:0}.ask-avatar{width:var(--spacing-avatar);height:var(--spacing-avatar);border-radius:var(--radius-full);object-fit:cover;object-position:48% 30%;box-shadow:0 0 0 1px var(--color-border)}.ask-col{min-width:0}.ask-name{font-size:var(--text-small);line-height:var(--spacing-avatar);color:var(--color-text);font-weight:600}.ask-text{max-width:var(--container-measure);letter-spacing:var(--text-body--letter-spacing)}.ask-text,.ask-you{font-size:var(--text-body);line-height:var(--text-body--line-height);color:var(--color-text);text-wrap:pretty}.ask-you{border-radius:var(--radius-md) var(--radius-md) var(--radius-xs) var(--radius-md);background-color:var(--color-primary-soft);width:fit-content;max-width:85%;margin-left:auto;padding:.5rem .875rem}@media (min-width:48rem){.ask-you{max-width:min(70%,32rem)}}.ask-typing .ask-col{min-height:var(--spacing-avatar);font-size:var(--text-small);color:var(--color-text-muted);align-items:center;gap:.5rem;display:flex}.ask-dots{gap:.25rem;display:inline-flex}.ask-dot{border-radius:var(--radius-full);background-color:var(--color-text-faint);opacity:.6;width:.3125rem;height:.3125rem}@media (prefers-reduced-motion:no-preference){.ask-dot{animation:ask-dot var(--typing-cycle) var(--ease-in-out) infinite}.ask-dot:nth-child(2){animation-delay:.15s}.ask-dot:nth-child(3){animation-delay:.3s}}@keyframes ask-dot{0%,to{opacity:.3}50%{opacity:1}}.ask-chips{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.ask-chip{border-radius:var(--radius-full);white-space:normal;text-align:left;list-style:none}@media (max-width:47.99rem){.ask-chips{scroll-snap-type:x proximity;scrollbar-width:none;padding:.25rem var(--chips-fade) .25rem .25rem;-webkit-mask-image:linear-gradient(90deg,var(--color-text) calc(100% - var(--chips-fade)),transparent);mask-image:linear-gradient(90deg,var(--color-text) calc(100% - var(--chips-fade)),transparent);flex-wrap:nowrap;margin-inline:-.25rem -1rem;scroll-padding-inline:.25rem;overflow-x:auto}.ask-chips::-webkit-scrollbar{display:none}.ask-chips>li{scroll-snap-align:start;flex-shrink:0}.ask-chip{min-height:var(--touch-target);white-space:nowrap}.ask-chip:before{inset:0}}.ask-chip::-webkit-details-marker{display:none}.ask-chip[aria-disabled=true]{cursor:default}.ask-chip[aria-disabled=true]:hover{background-color:var(--color-surface);border-color:var(--color-border-strong)}details[open]>.ask-chip{background-color:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-hover)}.ask-faq{flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:.75rem;display:flex}.ask-faq details>.ask-text{margin-top:.5rem}.ask-label{font-size:var(--text-small);line-height:var(--text-small--line-height);color:var(--color-text-muted)}.ask-related{margin-top:.75rem}.ask-related ul{flex-wrap:wrap;gap:.25rem 1.25rem;display:flex}@media (prefers-reduced-motion:no-preference){.ask-related .arrow{transition:transform var(--duration-base) var(--ease-out)}.ask-related .text-action:hover .arrow{transform:translate(.1875rem)}}.ask-actions{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.ask-composer{border-top:1px solid var(--color-border);background-color:var(--color-surface);flex-shrink:0;padding:.75rem 1rem .625rem}@media (min-width:48rem){.ask-composer{padding:.875rem 1.5rem .75rem}}.ask-field{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background-color:var(--color-surface);height:3rem;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);align-items:center;gap:.5rem;padding:.25rem .25rem .25rem 1rem;display:flex}.ask-field:hover{border-color:var(--color-text)}.ask-field:focus-within{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.ask-field:has(.ask-send:focus-visible){border-color:var(--color-border-strong);box-shadow:none}.ask-input{min-width:0;height:100%;font:inherit;color:var(--color-text);caret-color:var(--color-primary);text-overflow:ellipsis;background:0 0;border:0;flex:auto;padding:0;font-size:max(1rem,15px)}@media (pointer:coarse){.ask-input{font-size:max(1rem,16px)}}@media (min-width:40rem){.ask-input{font-size:var(--text-ui);letter-spacing:var(--text-ui--letter-spacing)}}.ask-input:focus,.ask-input:focus-visible{outline:none}.ask-input::placeholder{color:var(--color-text-faint);opacity:1}.ask-send{border-radius:var(--radius-xs);flex-shrink:0;width:2.5rem;height:2.5rem;min-height:0;padding:0;position:relative}.ask-send:before{content:"";position:absolute;inset:-2px}.ask-note{font-size:var(--text-micro);line-height:var(--text-micro--line-height);letter-spacing:var(--text-micro--letter-spacing);color:var(--color-text-faint);align-items:flex-start;gap:.375rem;font-weight:400;display:flex}.ask-note svg{margin-top:.125em}.js .ask-note{margin-top:.5rem}@media (forced-colors:active){.ask-field,.ask-you{border:1px solid canvastext}.ask-dots{display:none}}.dock{border-radius:var(--radius-dock);background-color:var(--color-surface);box-shadow:var(--shadow-dock),inset 0 0 0 1px var(--color-dock-rim);place-self:start center;padding:.375rem .375rem .625rem}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.dock{background-color:var(--color-dock-glass);-webkit-backdrop-filter:blur(1rem)saturate(1.6);backdrop-filter:blur(1rem)saturate(1.6)}}@media (min-width:48rem){.hero .dock{justify-self:end;margin-inline-end:calc((100% - var(--hero-gap)) * 5 / 24 - (var(--spacing-dock-icon) + .75rem) / 2)}}.dock[data-state=closing]{visibility:hidden}.dock-app{border-radius:var(--radius-dock-icon);cursor:pointer;flex-direction:column;align-items:center;gap:.375rem;display:flex;position:relative}.dock-app:focus-visible{outline:none}.dock-icon{width:var(--spacing-dock-icon);height:var(--spacing-dock-icon);border-radius:var(--radius-dock-icon);box-shadow:var(--shadow-dock-icon);transition:transform var(--duration-fast) var(--ease-out);display:block}.dock-app:focus-visible .dock-icon{box-shadow:var(--shadow-dock-icon),var(--shadow-focus)}.dock-glyph{font-family:var(--font-mono);font-size:1.125rem;font-weight:500}.dock-dot{border-radius:var(--radius-full);background-color:var(--color-text-muted);width:.25rem;height:.25rem}.dock-tip{border-radius:var(--radius-full);background-color:var(--color-dock-tip);color:var(--color-on-primary);font-size:var(--text-micro);line-height:var(--text-micro--line-height);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out);padding:.1875rem .5rem;font-weight:500;bottom:calc(100% + .5rem)}.dock-tip,.dock-tip:after{position:absolute;left:50%;translate:-50%}.dock-tip:after{content:"";border-left:.375rem solid #0000;border-right:.375rem solid #0000;border-top:.375rem solid #0000;border-top-color:var(--color-dock-tip);border-bottom:0 solid #0000;top:100%}.dock-app:focus-visible .dock-tip,.dock-app:hover .dock-tip,.dock[data-state=closed] .dock-tip{opacity:1}@media (pointer:coarse){.dock-tip{opacity:1}}@media (prefers-reduced-motion:no-preference){.dock-app:focus-visible .dock-icon,.dock-app:hover .dock-icon{transform:translateY(-.25rem)scale(1.1)}.dock[data-state=closed] .dock-icon{animation:dock-pop var(--duration-fast) var(--ease-out)}.dock[data-state=closed] .dock-dot{animation:fade-in var(--duration-fast) var(--ease-out) both}.dock[data-state=opening] .dock-icon{animation:dock-bounce var(--dock-bounce) var(--ease-out)}}@media (prefers-reduced-motion:reduce){.dock[data-state=closed]{animation:fade-in .12s linear both}.dock[data-state=opening]{animation:fade-out .12s linear both}}@keyframes dock-pop{0%{transform:scale(.9)}}@keyframes dock-bounce{0%,50%,to{transform:translateY(0)}25%{transform:translateY(-.875rem)}75%{transform:translateY(-.3125rem)}}.seg{flex-wrap:wrap;gap:.5rem;display:flex}.seg,.seg-btn{position:relative}.seg-btn{z-index:1;border-radius:var(--radius-full);border:1px solid var(--color-border-strong);background-color:var(--color-surface);min-height:2.75rem;color:var(--color-text);font-size:var(--text-ui);cursor:pointer;transition-property:background-color,color,border-color,transform;transition-duration:var(--duration-fast);align-items:center;gap:.375rem;padding-inline:.875rem;font-weight:500;display:inline-flex}.seg-btn[aria-pressed=true]{background-color:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary-hover)}.seg-btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.seg-count{color:var(--color-text-faint);font-variant-numeric:tabular-nums}.seg-btn[aria-pressed=true] .seg-count{color:var(--color-primary-hover)}.seg-pill{display:none}@media (min-width:48rem){.seg{border-radius:var(--radius-full);background-color:var(--color-subtle);flex-wrap:nowrap;gap:0;width:fit-content;padding:.25rem}.seg-btn{min-height:2.5rem;color:var(--color-text-muted);background-color:#0000;border-color:#0000}.seg-btn:hover{color:var(--color-text)}.seg-btn[aria-pressed=true]{color:var(--color-text);background-color:#0000;border-color:#0000;font-weight:600}.seg-btn[aria-pressed=true] .seg-count{color:var(--color-text-faint)}.seg-check{color:var(--color-primary);display:inline-flex}.seg-pill{border-radius:var(--radius-full);background-color:var(--color-surface);border:1px solid var(--color-border-strong);box-shadow:var(--shadow-xs);transform:translateX(var(--x,.25rem));width:var(--w,0);display:block;position:absolute;top:.25rem;bottom:.25rem;left:0}}@media (prefers-reduced-motion:no-preference){.nav-indicator,.seg-pill,.toc-bar{transition-property:transform,width,height,opacity;transition-duration:var(--duration-base);transition-timing-function:var(--ease-in-out)}.seg-btn:active{transform:scale(.97)}}.night-band{isolation:isolate;background-color:var(--color-night);color:var(--color-on-night);box-shadow:inset 0 1px 0 var(--night-edge),inset 0 -1px 0 var(--night-edge);position:relative;overflow:hidden}@media (min-width:64rem){.night-band{margin-inline:min(2.5%,calc(max((100% - var(--container-content)) / 2, 0px) + var(--spacing-gutter) - 2.5rem))}}.night-band:before{background:radial-gradient(60% 50% at 50% 0,var(--night-glow),transparent)}.night-band:after,.night-band:before{content:"";z-index:-1;position:absolute;inset:0}.night-band:after{background-image:radial-gradient(circle,var(--night-dot) 1px,transparent 1.25px);-webkit-mask-image:linear-gradient(to bottom,var(--color-text),transparent 85%);mask-image:linear-gradient(to bottom,var(--color-text),transparent 85%);background-size:1.5rem 1.5rem}.night-band .text-action{color:var(--color-primary-on-night)}.night-band .text-action:hover{color:var(--color-on-night)}.method{--method-r:1.875rem;--method-h:8.5rem;padding-left:.875rem;position:relative}.method-arc-v,.method-trace{display:none}.method-arc path{fill:none;stroke:var(--color-cyan-on-night);stroke-width:1.5px;stroke-dasharray:4 5;stroke-linecap:round;vector-effect:non-scaling-stroke}.method-arrow{z-index:2;left:0;top:var(--method-r);border-top:1.5px solid var(--color-cyan-on-night);border-right:1.5px solid var(--color-cyan-on-night);width:.4375rem;height:.4375rem;position:absolute;translate:-70% -50%;rotate:45deg}.method-steps{grid-template-columns:minmax(0,1fr);display:grid}.method-step{padding:0 0 2.75rem calc(2 * var(--method-r) + 1.25rem);position:relative}.method-step:last-child{padding-bottom:0}.method-disc{z-index:1;width:calc(2 * var(--method-r));height:calc(2 * var(--method-r));border-radius:var(--radius-full);border:1px solid var(--method-disc-rim);background-color:var(--color-night);transition:border-color var(--duration-base) var(--ease-out);place-items:center;display:grid;position:absolute;top:0;left:0}.method-step:focus-within .method-disc,.method-step:hover .method-disc{border-color:var(--color-cyan-on-night)}.method-icon{width:2.25rem;height:2.25rem;color:var(--color-on-night)}.method-icon .method-detail{transform-box:fill-box;transform-origin:50%}@media (prefers-reduced-motion:no-preference){.method-icon .method-detail{transition:transform .3s var(--ease-out)}.method-step:focus-within .method-detail,.method-step:hover .method-detail{transform:translate(var(--tx,0),var(--ty,0)) scale(var(--s,1.15))}}.method-step:not(:last-child):before{content:"";left:calc(var(--method-r) - .75px);top:calc(2 * var(--method-r));border-left:1.5px solid var(--color-primary-on-night);position:absolute;bottom:0}.method-arc-v{left:0;top:var(--method-r);width:calc(2 * var(--method-r));height:100%;display:block;position:absolute;overflow:visible}.method-body{padding-top:.875rem}.method-how{--method-sep:var(--color-on-night-faint);font-size:var(--text-small);line-height:var(--text-small--line-height);color:var(--color-on-night-muted);gap:.375rem;margin-top:1rem;display:grid}.method-how li{align-items:baseline;gap:.625rem;display:flex}.method-how li:before{content:"";border-top:1px solid var(--method-sep);flex-shrink:0;width:.625rem;transform:translateY(-.3em)}.method-principle{border-top:1px dashed var(--color-night-border);margin-top:1.5rem;padding-top:1rem}.method-principle-title{font-size:var(--text-ui);line-height:var(--text-ui--line-height);color:var(--color-on-night);font-weight:600}@media (max-width:47.99rem){.method{--method-r:1.375rem;padding-left:.75rem}.method-step{padding:0 0 2rem calc(2 * var(--method-r) + 1rem)}.method-icon{width:1.75rem;height:1.75rem}.method-body{padding-top:.5rem}.method-how{flex-wrap:wrap;gap:0 .5rem;margin-top:.625rem;display:flex}.method-how li:before{content:none}.method-how li:not(:last-child):after{content:"·";content:"·"/"";color:var(--method-sep)}.method-how li{gap:.5rem}.method-principle{margin-top:.875rem;padding-top:.625rem}}@media (min-width:64rem){.method{padding-left:0}.method-arc-v{display:none}.method-trace{height:var(--method-h);top:0;left:var(--method-r);width:100%;display:block;position:absolute;overflow:visible}.method-trace:not(.method-arc) path{fill:none;stroke:var(--color-primary-on-night);stroke-width:var(--stroke-accent);stroke-linecap:round;vector-effect:non-scaling-stroke}.method-arrow{left:var(--method-r);top:calc(var(--method-h) / -2 - var(--method-r) - .0625rem);translate:-50% -70%;rotate:135deg}.method-steps{padding-top:var(--method-h);grid-template-columns:repeat(4,minmax(0,1fr))}.method-step,.method-step:last-child{padding:0 2rem 0 0}.method-step:not(:last-child):before{display:none}.method-disc{top:calc(var(--method-h) / -2 - var(--method-r))}.method-body{padding-top:.5rem}@media (prefers-reduced-motion:no-preference){[data-reveal=hidden] .method-trace:not(.method-arc){clip-path:inset(-2rem 100% -2rem -4rem)}[data-reveal=shown] .method-trace:not(.method-arc){clip-path:inset(-2rem -4rem);transition:clip-path 1.5s var(--ease-in-out)}[data-reveal=hidden] .method-arc,[data-reveal=hidden] .method-arrow{opacity:0}[data-reveal=shown] .method-arc,[data-reveal=shown] .method-arrow{transition:opacity .6s var(--ease-out) 1.3s}[data-reveal=hidden] .method-disc{opacity:0;scale:.6}[data-reveal=shown] .method-disc{transition:opacity var(--duration-slow) var(--ease-out),scale var(--duration-base) var(--ease-spring),border-color var(--duration-base) var(--ease-out);transition-delay:calc(var(--i) * .3s + .15s),calc(var(--i) * .3s + .15s),0s}}}@media (forced-colors:active){.method-arc path,.method-trace path{stroke:canvastext}.method-arrow,.method-disc{border-color:canvastext}}.contact-card{--focus-gap:var(--color-primary-fill);--color-focus:var(--color-on-primary);--shadow-focus:0 0 0 2px var(--focus-gap),0 0 0 4px var(--color-on-primary);isolation:isolate;border-radius:var(--radius-lg);background-image:var(--gradient-deep);background-color:var(--color-primary-fill);color:var(--color-on-primary);box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.contact-card:before{content:"";z-index:-1;background:radial-gradient(25rem circle at var(--mx,78%) var(--my,18%),var(--white-a10),transparent 70%);pointer-events:none;position:absolute;inset:0}.btn-on-dark{color:var(--color-on-primary);text-underline-offset:.22em;text-decoration-line:underline;text-decoration-color:#0000}.btn-on-dark:hover{background-color:var(--white-a10);text-decoration-color:currentColor}@media (prefers-reduced-motion:no-preference){[data-reveal=hidden] .reveal-item{opacity:0;transform:translateY(1rem)}[data-reveal=shown] .reveal-item{transition:opacity var(--duration-reveal) var(--ease-out),transform var(--duration-reveal) var(--ease-out);transition-delay:calc(var(--i,0) * var(--stagger))}}.logo-mark{align-items:center;gap:var(--logo-gap-name);display:inline-flex}.logo-sig{height:var(--logo-sig-h);width:auto;display:block;overflow:visible}.logo-ink{stroke:currentColor;stroke-width:var(--logo-sig-stroke);stroke-linejoin:round;vector-effect:non-scaling-stroke}.logo-name{font-weight:600;font-size:var(--text-small);letter-spacing:-.01em;white-space:nowrap;display:none}@media (min-width:40rem){.logo-name{display:inline}}.logo-sig-mask{mask-type:alpha}.logo-pen{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 2;stroke-dashoffset:0}.logo-pen-end{fill:currentColor}@media (prefers-reduced-motion:no-preference){.js .logo-pen{animation:logo-pen calc(var(--duration-logo) * var(--pen-dur)) linear calc(var(--delay-logo) + var(--duration-logo) * var(--pen-at) + var(--logo-pen-turn) * var(--pen-turns) + var(--logo-pen-lift) * var(--pen-lift)) backwards}.js .logo-pen-first{animation-timing-function:var(--ease-pen-in)}.js .logo-pen-last{animation-timing-function:var(--ease-pen-out)}.js .logo-pen-end{animation:logo-pen-end calc(var(--delay-logo) + var(--duration-logo) + var(--logo-pen-turn) * 5 + var(--logo-pen-lift)) linear}.js .logo-name{animation:logo-name-in var(--duration-slow) var(--ease-out) calc(var(--delay-logo) + var(--duration-logo) * .5 + var(--logo-pen-lift)) backwards}}@keyframes logo-pen{0%{stroke-dashoffset:1px;opacity:0}.01%{opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes logo-pen-end{0%,to{opacity:0}}@keyframes logo-name-in{0%{opacity:0}}.about-hero{isolation:isolate;position:relative}.about-hero:before{content:"";z-index:-1;pointer-events:none;background-image:radial-gradient(circle,var(--dot) 1.1px,transparent 1.35px);-webkit-mask-image:radial-gradient(ellipse 70% 45% at 20% 22%,var(--color-text) 10%,transparent 75%);mask-image:radial-gradient(ellipse 70% 45% at 20% 22%,var(--color-text) 10%,transparent 75%);background-position:0 0;background-size:32px 32px;position:absolute;inset:0}@media (min-width:48rem){.about-hero:before{background-size:28px 28px}}.about-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"photo""copy""today";justify-items:start;row-gap:1.5rem;display:grid;position:relative}.about-copy{grid-area:copy;min-width:0}.about-photo{z-index:1;width:var(--photo-about-w);grid-area:photo}.today-card{z-index:1;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;max-width:36rem;box-shadow:var(--shadow-xs);grid-area:today;padding:1.25rem 1.5rem;position:relative}.today-item{align-items:flex-start;gap:.75rem;display:flex}.today-dot{width:calc(var(--timeline-node) * 2);height:calc(var(--timeline-node) * 2);margin-top:calc(var(--text-body--line-height) * .5em - var(--timeline-node));border-radius:var(--radius-full);background-color:var(--color-primary);flex-shrink:0}@media (min-width:48rem){.about-grid{grid-template-columns:minmax(0,1fr) var(--photo-about-w);grid-template-areas:"copy photo""today today";column-gap:2.5rem}.about-copy,.about-photo{align-self:start}}@media (min-width:64rem){.about-hero:before{-webkit-mask-image:radial-gradient(ellipse 45% 70% at 78% 40%,var(--color-text) 15%,transparent 78%);mask-image:radial-gradient(ellipse 45% 70% at 78% 40%,var(--color-text) 15%,transparent 78%)}.about-grid{column-gap:var(--spacing-grid);grid-template:auto 1fr auto/repeat(12,minmax(0,1fr));row-gap:0}.about-copy{grid-area:1/1/3/8;align-self:center;padding-block:1.5rem}.about-photo{grid-area:1/8/3/13;justify-self:center}.today-card{grid-area:3/1/4/7;margin-top:2.5rem}}.about-link{z-index:0}@media (prefers-reduced-motion:no-preference){.js .about-photo{animation:about-photo-in var(--duration-slow) var(--ease-out) .28s both}}@keyframes about-photo-in{0%{opacity:0;transform:rotate(-2deg)translateY(.5rem)}}.tl-wrap{--tl-line-x:calc(var(--timeline-x) + var(--timeline-node));--tl-y:calc(var(--text-small) * .75);position:relative}.tl-item{padding-bottom:2rem;padding-left:2rem;position:relative}.tl-item:last-child{padding-bottom:0}.tl-item:not(:last-child):before{content:"";left:calc(var(--tl-line-x) - var(--stroke-hair) / 2);top:var(--tl-y);bottom:calc(-1 * var(--tl-y));border-left:var(--stroke-hair) solid var(--color-circuit);position:absolute}.tl-period{margin-bottom:.375rem}.tl-icon{width:1.5rem;height:1.5rem;margin-top:calc((var(--text-h3) * 1.25 - 1.5rem) / 2);color:var(--color-text-muted)}.tl-node{z-index:2;left:calc(var(--tl-line-x) - var(--timeline-node));top:calc(var(--tl-y) - var(--timeline-node));width:calc(var(--timeline-node) * 2);height:calc(var(--timeline-node) * 2);border-radius:var(--radius-full);border:var(--stroke-hair) solid var(--color-primary);background-color:var(--color-primary);position:absolute}.tl-item[data-now] .tl-node{left:calc(var(--tl-line-x) - var(--timeline-node-now));top:calc(var(--tl-y) - var(--timeline-node-now));width:calc(var(--timeline-node-now) * 2);height:calc(var(--timeline-node-now) * 2);border-width:var(--stroke-progress);box-shadow:inset 0 0 0 2px var(--color-surface)}.tl-track{z-index:1;left:calc(var(--tl-line-x) - var(--stroke-progress) / 2);top:var(--tl-a,0);height:var(--tl-h,0);width:var(--stroke-progress);pointer-events:none;view-timeline:--tl block;display:none;position:absolute}.tl-wrap[data-measured] .tl-track{display:block}.tl-fill{border-radius:var(--radius-full);transform-origin:top;position:absolute;inset:0}.no-js .tl-item:not(:last-child):before,.tl-fill{border-left:var(--stroke-progress) solid var(--color-primary)}.no-js .tl-item:not(:last-child):before{left:calc(var(--tl-line-x) - var(--stroke-progress) / 2)}@media (prefers-reduced-motion:no-preference){.tl-wrap[data-live] .tl-fill{transform:scaleY(var(--progress,0))}@supports (animation-timeline:view()){.tl-wrap[data-live] .tl-fill{animation:tl-fill linear both;animation-timeline:--tl;animation-range:cover 20vh cover calc(100% - 80vh)}}.tl-wrap[data-live] .tl-item:not([data-reached]) .tl-node{background-color:var(--color-surface);border-color:var(--color-circuit);box-shadow:none}.tl-wrap[data-live] .tl-item[data-reached] .tl-node{animation:tl-node var(--duration-node) var(--ease-spring) both}.tl-wrap[data-live] .tl-card,.tl-wrap[data-live] .tl-period{transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.tl-wrap[data-live] .tl-item:not([data-reached]) .tl-card,.tl-wrap[data-live] .tl-item:not([data-reached]) .tl-period{opacity:0;transform:translateY(1rem)}.tl-wrap[data-live] .tl-icon>*{transition:stroke-dashoffset .6s var(--ease-emphasis);transition-delay:calc(var(--s,0) * 80ms + .12s)}.tl-wrap[data-live] .tl-item:not([data-reached]) .tl-icon>*{stroke-dashoffset:1px}}@keyframes tl-fill{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes tl-node{0%{transform:scale(.6)}}@media (min-width:48rem){.tl-wrap{--tl-y:calc(1.3125rem + var(--text-small) * .75)}.tl-item{padding-bottom:2.5rem}.tl-body{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:1.25rem}.tl-period{margin-bottom:.5rem}}@media (min-width:64rem){.tl-wrap{--tl-date:11rem;--tl-gap:3.5rem;--tl-line-x:calc(var(--tl-date) + var(--tl-gap) / 2);--tl-y:calc(1.5625rem + var(--text-h3) * .625)}.tl-item{grid-template-columns:var(--tl-date) var(--tl-gap) minmax(0,44rem);padding-left:0;padding-bottom:var(--spacing-block);display:grid}.tl-body{display:contents}.tl-period{padding-top:calc(var(--tl-y) - var(--text-small) * .75);text-align:right;grid-column:1;margin:0}.tl-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);cursor:default;grid-column:3;padding:1.5rem 1.75rem}}@media (forced-colors:active){.tl-fill,.tl-item:not(:last-child):before{border-color:canvastext}.tl-node,.tl-wrap[data-live] .tl-item .tl-node{forced-color-adjust:none;box-shadow:none!important;background-color:canvas!important;border-color:canvastext!important}.no-js .tl-node,.tl-item[data-reached] .tl-node{background-color:highlight!important}.tl-body,.tl-card{border-color:canvastext}}@media print{.tl-track{display:none!important}}.moment-events{--tilt-k:.6;gap:var(--moment-row-gap);flex-direction:column;display:flex}.moment-event{--stagger:var(--stagger-moment);grid-template-columns:minmax(0,1fr);display:grid;overflow-x:clip}.moment-head{padding-left:var(--moment-node-col)}.moment-meta{max-width:100%;display:inline-block;position:relative}.moment-node{top:50%;left:calc(-1 * var(--moment-node-col));width:calc(2 * var(--timeline-node));height:calc(2 * var(--timeline-node));margin-top:calc(-1 * var(--timeline-node));border:var(--stroke-hair) solid var(--color-circuit);border-radius:var(--radius-full);background-color:var(--color-bg);position:absolute}.moment-node[data-lit]{border-color:var(--color-circuit-on)}.moment-role{border-radius:var(--radius-full);background-color:var(--color-primary-soft);min-height:1.5rem;color:var(--color-primary);font-size:var(--text-micro);line-height:var(--text-micro--line-height);align-items:center;padding-inline:.625rem;font-weight:500;display:inline-flex}.moment-summary{max-width:60ch;margin-top:1.25rem}.moment-highlights{font-size:var(--text-ui);line-height:var(--text-ui--line-height);color:var(--color-text);gap:.625rem;margin-top:1.25rem;display:grid}.moment-highlights li{align-items:flex-start;gap:.625rem;display:flex}.moment-check{color:var(--color-primary);margin-top:.15em}.moment-media{z-index:1;isolation:isolate;padding-block:1.5rem;position:relative}.moment-media:before{content:"";z-index:-1;pointer-events:none;background-image:radial-gradient(circle,var(--dot) 1.1px,transparent 1.35px);-webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,var(--color-text) 20%,transparent 75%);mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,var(--color-text) 20%,transparent 75%);background-position:.75rem .75rem;background-size:1.5rem 1.5rem;position:absolute;inset:-10%}.moment-body{margin-top:.5rem}.polaroid{--tilt-eff:clamp(calc(-1 * var(--polaroid-tilt-max)),calc(var(--tilt,0deg) * var(--tilt-k,1)),var(--polaroid-tilt-max));position:relative}.polaroid-frame{padding:var(--polaroid-pad) var(--polaroid-pad) calc(var(--polaroid-pad) * 1.5);background-color:var(--color-paper);border:1px solid var(--color-border);border-radius:var(--radius-xs);box-shadow:var(--shadow-shot);rotate:var(--tilt-eff);margin:0}.polaroid-photo{aspect-ratio:1;background-color:var(--color-subtle);border-radius:2px;display:block;position:relative;overflow:hidden}.polaroid-caption{padding-top:var(--polaroid-pad)}.polaroid-zoom{width:100%;color:inherit;font:inherit;background:0 0;border:0;border-radius:2px;padding:0;display:block}button.polaroid-zoom{cursor:zoom-in}button.polaroid-zoom:focus-visible{box-shadow:var(--shadow-focus);outline:none}.moment-stack .polaroid-card:has(:focus-visible){z-index:4}.polaroid-num{width:var(--moment-num-h);height:var(--moment-num-h);border:1px solid var(--color-border);border-radius:var(--radius-full);font-family:var(--font-mono);font-size:var(--text-micro);color:var(--color-text-faint);flex-shrink:0;justify-content:center;align-items:center;line-height:1;display:inline-flex}.polaroid-lg{width:100%;max-width:var(--moment-single-max);margin-inline:auto}.polaroid-lg .polaroid-photo{aspect-ratio:4/3}.polaroid-tape{top:calc(var(--tape-h) * -.5);z-index:1;width:var(--tape-w);height:var(--tape-h);margin-left:calc(var(--tape-w) * -.5 + var(--tape-x,0px));rotate:var(--tape-rot,-4deg);background-color:var(--color-tape);clip-path:polygon(0 0,100% 0,96% 20%,100% 40%,96% 60%,100% 80%,96% 100%,0 100%,4% 80%,0 60%,4% 40%,0 20%);position:absolute;left:50%}.moment-stack-col{width:100%;max-width:var(--moment-stack-max);flex-direction:column;align-items:flex-start;margin-inline:auto;display:flex}.moment-figure{width:100%;margin:0}.moment-stack-box{container-type:inline-size}.moment-stack{--k:var(--moment-num-h);--h1:calc(62cqw + var(--k));--h2:calc(44cqw + var(--k));height:calc(.75rem + var(--h1) - .1 * var(--h2) + var(--h2) + 1rem);position:relative}.moment-stack[data-count="2"]{height:calc(.75rem + .45 * var(--h1) + var(--h2) + 1rem)}.polaroid-card{width:62%;position:absolute;top:.75rem;left:0}.polaroid-card .polaroid-frame{padding-bottom:calc(var(--polaroid-pad) * .5)}.polaroid-card .polaroid-num{margin-top:calc(var(--polaroid-pad) * .5)}.polaroid-card[data-n="1"]{z-index:3}.polaroid-card[data-n="2"]{z-index:2;left:6%;top:calc(.75rem + var(--h1) - .1 * var(--h2));width:44%}.moment-stack[data-count="2"] .polaroid-card[data-n="2"],.polaroid-card[data-n="3"]{z-index:1;left:56%;top:calc(.75rem + .45 * var(--h1));width:44%}.moment-captions{margin-top:1rem}.moment-captions ol{gap:.375rem;display:grid}.moment-caption{border-radius:var(--radius-xs);width:100%;font-family:inherit;font-size:var(--text-small);line-height:var(--text-small--line-height);text-align:left;color:var(--color-text-muted);background:0 0;border:0;align-items:flex-start;gap:.5rem;padding:2px 0;display:flex}button.moment-caption{cursor:zoom-in;transition:color var(--duration-base) var(--ease-out)}button.moment-caption:hover{color:var(--color-text)}button.moment-caption:hover .polaroid-num{border-color:var(--color-text-faint);color:var(--color-text)}button.moment-caption:focus-visible{box-shadow:var(--shadow-focus);outline:none}.moment-captions .polaroid-num{margin-top:.05rem}.moment-stack-toggle{margin-top:1rem;display:none}.polaroid-card:is([data-n="4"],[data-n="5"],[data-n="6"]){z-index:0}.moment-stack[data-layout=grid]{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem .875rem;height:auto;padding-top:.75rem;display:grid}.moment-stack[data-layout=grid] .polaroid-card[data-n]{width:auto;position:relative;top:auto;left:auto}.moment-stack[data-layout=grid][data-count="5"] .polaroid-card[data-n="1"]{grid-column:1/-1;justify-self:center;width:72%}@media (min-width:48rem){.moment-stack[data-layout=grid][data-count="5"]{grid-template-columns:repeat(6,minmax(0,1fr))}.moment-stack[data-layout=grid][data-count="5"] .polaroid-card[data-n]{grid-column:span 2}.moment-stack[data-layout=grid][data-count="5"] .polaroid-card:is([data-n="1"],[data-n="2"]){grid-column:span 3;justify-self:stretch;width:auto}.moment-stack[data-layout=grid][data-count="6"]{grid-template-columns:repeat(3,minmax(0,1fr))}.moment-stack[data-layout=grid][data-count="5"] .polaroid-card:is([data-n="3"],[data-n="4"],[data-n="5"]),.moment-stack[data-layout=grid][data-count="6"] .polaroid-card[data-n]{--tape-w:var(--tape-w-sm);--tape-h:var(--tape-h-sm)}}@media (max-width:22.49rem){.moment-stack,.moment-stack[data-count="2"]{flex-direction:column;align-items:center;gap:1rem;height:auto;padding-top:.75rem;display:flex}.moment-stack[data-count="2"] .polaroid-card[data-n="2"],.polaroid-card,.polaroid-card[data-n]{width:100%;max-width:17.5rem;position:relative;top:auto;left:auto}}@media (min-width:48rem){.moment-events{--tilt-k:1}.moment-event{column-gap:var(--spacing-grid);grid-template-rows:auto auto;grid-template-columns:repeat(12,minmax(0,1fr))}.moment-head{grid-row:1;align-self:end;padding-left:0}.moment-body{grid-row:2;align-self:start;margin-top:0}.moment-media{grid-row:1/3;align-self:center}.moment-events>li:last-child .moment-media{padding-bottom:0}.moment-event[data-side=start] .moment-media{grid-column:1/7}.moment-event[data-side=start] :is(.moment-head,.moment-body){grid-column:7/13;padding-left:2rem}.moment-event[data-side=end] :is(.moment-head,.moment-body){grid-column:1/7;padding-right:2rem}.moment-event[data-side=end] .moment-media{grid-column:7/13}.moment-event[data-side=end] .moment-node{left:auto;right:calc(-1 * var(--moment-node-col))}.polaroid{--tape-w:var(--tape-w-md);--tape-h:var(--tape-h-md)}}@media (min-width:64rem){.moment-event[data-side=start] :is(.moment-head,.moment-body){grid-column:8/13;padding-left:0}.moment-event[data-side=end] :is(.moment-head,.moment-body){grid-column:1/6;padding-right:0}}@media (hover:hover) and (pointer:fine) and (min-width:48rem) and (prefers-reduced-motion:no-preference){.moment-stack[data-stack=ready],.moment-stack[data-stack=ready][data-count="2"]{height:calc(46cqw + var(--k) + 3rem)}.moment-stack[data-stack=ready] .polaroid-card[data-n]{top:1.5rem;left:calc((100% - var(--moment-stack-card)) / 2);width:var(--moment-stack-card);transition:translate var(--duration-fan) var(--ease-out);--pile-l:calc((100% - var(--moment-stack-card) - var(--moment-pile-spread)) / 2);z-index:var(--fan-z);left:calc(var(--pile-l) + var(--fan-u) * var(--moment-pile-spread));translate:0 calc(var(--fan-u) * 3%);transition:translate var(--duration-fan) var(--ease-out),left var(--duration-fan) var(--ease-out)}.moment-stack[data-stack=ready]:is(:hover,[data-open]) .polaroid-card[data-n]{left:calc(var(--pile-l) + var(--fan-u) * (100% - var(--moment-stack-card) - var(--pile-l)));translate:0 calc(var(--fan-u) * 4% - 3%)}.moment-stack[data-stack=ready]:is(:hover,[data-open]) .polaroid-card[data-n] .polaroid-frame{rotate:calc(var(--fan-u) * var(--moment-fan-rot))}.moment-stack[data-stack=ready][data-layout=grid]{height:calc(46cqw + var(--k) + 3rem);transition:height var(--duration-fan) var(--ease-out);padding-top:0;display:block}.moment-stack[data-stack=ready][data-layout=grid] .polaroid-card[data-n]{width:var(--moment-stack-card);transition:translate var(--duration-fan) var(--ease-out),top var(--duration-fan) var(--ease-out),left var(--duration-fan) var(--ease-out),width var(--duration-fan) var(--ease-out),transform var(--duration-slow) var(--ease-spring) calc(var(--stagger-moment) + var(--pose-i,0) * var(--stagger-pose));position:absolute;top:1.5rem}.moment-stack[data-stack=ready][data-layout=grid][data-open]{--row1:calc(var(--moment-grid-wide) * 1cqw);--row2-top:calc(1.5rem + var(--row1) + var(--k) + 1.25rem);height:calc(var(--row2-top) + var(--row2-h) + var(--k) + 1.5rem)}.moment-stack[data-stack=ready][data-layout=grid][data-open] .polaroid-card[data-n]{translate:0}.moment-stack[data-stack=ready][data-layout=grid][data-open] .polaroid-card[data-n] .polaroid-frame{rotate:var(--tilt-eff)}.moment-stack[data-stack=ready][data-layout=grid][data-open] .polaroid-card:is([data-n="1"],[data-n="2"]){width:calc(var(--moment-grid-wide) * 1%)}.moment-stack[data-stack=ready][data-layout=grid][data-open] .polaroid-card[data-n="1"]{left:1%}.moment-stack[data-stack=ready][data-layout=grid][data-open] .polaroid-card[data-n="2"]{left:calc(99% - var(--moment-grid-wide) * 1%)}.moment-stack[data-stack=ready][data-layout=grid][data-open] .polaroid-card:is([data-n="3"],[data-n="4"],[data-n="5"]){top:var(--row2-top)}.moment-stack[data-stack=ready][data-layout=grid][data-count="5"][data-open]{--row2-h:calc(var(--moment-grid-narrow) * 1cqw)}.moment-stack[data-stack=ready][data-layout=grid][data-count="5"][data-open] .polaroid-card:is([data-n="3"],[data-n="4"],[data-n="5"]){width:calc(var(--moment-grid-narrow) * 1%)}.moment-stack[data-stack=ready][data-layout=grid][data-count="5"][data-open] .polaroid-card[data-n="3"]{left:0}.moment-stack[data-stack=ready][data-layout=grid][data-count="5"][data-open] .polaroid-card[data-n="4"]{left:calc(50% - var(--moment-grid-narrow) * .5%)}.moment-stack[data-stack=ready][data-layout=grid][data-count="5"][data-open] .polaroid-card[data-n="5"]{left:calc(100% - var(--moment-grid-narrow) * 1%)}.moment-stack[data-stack=ready][data-layout=grid][data-count="4"][data-open]{--row2-h:var(--row1)}.moment-stack[data-stack=ready][data-layout=grid][data-count="4"][data-open] .polaroid-card:is([data-n="3"],[data-n="4"]){width:calc(var(--moment-grid-wide) * 1%)}.moment-stack[data-stack=ready][data-layout=grid][data-count="4"][data-open] .polaroid-card[data-n="3"]{left:1%}.moment-stack[data-stack=ready][data-layout=grid][data-count="4"][data-open] .polaroid-card[data-n="4"]{left:calc(99% - var(--moment-grid-wide) * 1%)}.moment-stack[data-stack=ready][data-layout=grid][data-count="6"][data-open]{--row1:calc(var(--moment-grid-narrow) * 1cqw);--row2-h:var(--row1)}.moment-stack[data-stack=ready][data-layout=grid][data-count="6"][data-open] .polaroid-card[data-n]{width:calc(var(--moment-grid-narrow) * 1%)}.moment-stack[data-stack=ready][data-layout=grid][data-count="6"][data-open] .polaroid-card:is([data-n="1"],[data-n="4"]){left:0}.moment-stack[data-stack=ready][data-layout=grid][data-count="6"][data-open] .polaroid-card:is([data-n="2"],[data-n="5"]){left:calc(50% - var(--moment-grid-narrow) * .5%)}.moment-stack[data-stack=ready][data-layout=grid][data-count="6"][data-open] .polaroid-card:is([data-n="3"],[data-n="6"]){left:calc(100% - var(--moment-grid-narrow) * 1%)}.moment-stack[data-stack=ready][data-layout=grid][data-count="6"][data-open] .polaroid-card[data-n="3"]{top:1.5rem}.moment-stack[data-stack=ready][data-layout=grid][data-count="6"][data-open] .polaroid-card[data-n="6"]{top:var(--row2-top)}.moment-stack[data-stack=ready][data-layout=grid] .polaroid-card[data-n]{--tape-w:var(--tape-w-md);--tape-h:var(--tape-h-md)}.moment-stack[data-stack=ready][data-layout=grid][data-count="5"][data-open] .polaroid-card:is([data-n="3"],[data-n="4"],[data-n="5"]),.moment-stack[data-stack=ready][data-layout=grid][data-count="6"][data-open] .polaroid-card[data-n]{--tape-w:var(--tape-w-sm);--tape-h:var(--tape-h-sm)}.moment-stack[data-stack=ready] .polaroid-tape:not([data-tape]){transition:scale var(--duration-base) var(--ease-spring) var(--tape-pose-delay),opacity var(--duration-base) var(--ease-out) var(--tape-pose-delay),width var(--duration-fan) var(--ease-out),height var(--duration-fan) var(--ease-out),top var(--duration-fan) var(--ease-out),margin-left var(--duration-fan) var(--ease-out)}.moment-stack[data-stack=ready] .polaroid-tape[data-tape=extra]{opacity:0;translate:0 var(--tape-peel-lift);rotate:calc(var(--tape-rot) + var(--tape-peel-turn));transition:opacity var(--duration-peel) var(--ease-out),translate var(--duration-peel) var(--ease-out),rotate var(--duration-peel) var(--ease-out),scale var(--duration-peel) var(--ease-out),width var(--duration-fan) var(--ease-out),height var(--duration-fan) var(--ease-out),top var(--duration-fan) var(--ease-out),margin-left var(--duration-fan) var(--ease-out);scale:.92}.moment-stack[data-stack=ready][data-open]:not([data-peel]) .polaroid-tape[data-tape=extra]{opacity:1;translate:0;rotate:var(--tape-rot);transition:opacity var(--duration-base) var(--ease-out),translate var(--duration-base) var(--ease-out),rotate var(--duration-base) var(--ease-out),scale var(--duration-base) var(--ease-spring),width var(--duration-fan) var(--ease-out),height var(--duration-fan) var(--ease-out),top var(--duration-fan) var(--ease-out),margin-left var(--duration-fan) var(--ease-out);transition-delay:calc(var(--duration-fan) + var(--tape-i,0) * var(--stagger-tape)),calc(var(--duration-fan) + var(--tape-i,0) * var(--stagger-tape)),calc(var(--duration-fan) + var(--tape-i,0) * var(--stagger-tape)),calc(var(--duration-fan) + var(--tape-i,0) * var(--stagger-tape)),0s,0s,0s,0s;scale:1}.moment-stack-toggle{display:inline-flex}}@media (prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){.polaroid-card .polaroid-frame,.polaroid-lg .polaroid-frame{transition:rotate var(--duration-straighten) var(--ease-out),translate var(--duration-straighten) var(--ease-out),scale var(--duration-straighten) var(--ease-out),box-shadow var(--duration-straighten) var(--ease-out)}.polaroid-lg:hover .polaroid-frame{rotate:0deg;translate:0 calc(-1 * var(--polaroid-lift));box-shadow:var(--shadow-shot-hover);scale:1.02}.moment-stack.moment-stack .polaroid-card[data-n]:hover{z-index:7}.moment-stack.moment-stack .polaroid-card[data-n]:hover .polaroid-frame{rotate:0deg;translate:0 calc(-1 * var(--polaroid-lift));box-shadow:var(--shadow-shot-hover);scale:1.03}}@media (prefers-reduced-motion:no-preference){.polaroid-card[data-n="1"]{--pose-i:2}.polaroid-card[data-n="2"]{--pose-i:1}[data-reveal=hidden] .moment-event .polaroid{transform:translateY(-.5rem) rotate(calc(-1 * var(--tilt-eff)))}[data-reveal=hidden] .moment-event .polaroid-tape{opacity:0;scale:.6 1}[data-reveal=shown] .moment-event .polaroid-lg{transition:transform var(--duration-slow) var(--ease-spring) var(--stagger-moment)}[data-reveal=shown] .moment-event .polaroid-card[data-n]{transition:translate var(--duration-fan) var(--ease-out),transform var(--duration-slow) var(--ease-spring) calc(var(--stagger-moment) + var(--pose-i,0) * var(--stagger-pose))}[data-reveal=shown] .moment-event .polaroid-tape{transition:scale var(--duration-base) var(--ease-spring),opacity var(--duration-base) var(--ease-out);transition-delay:var(--tape-pose-delay)}[data-link^=moment-][data-drawn]>.circuit-line{transition-delay:calc(var(--duration-slow) + var(--duration-base)),0s}.moment-node{transition:border-color .16s var(--ease-out) calc(var(--duration-slow) + var(--duration-base) + var(--duration-draw) * .85)}}@media (forced-colors:active){.polaroid-frame{box-shadow:none;border-color:canvastext}.polaroid-tape{display:none}.moment-role{border:1px solid canvastext}.moment-node{border-color:canvastext}.moment-media:before{display:none}}:root:has(.lightbox[open]){overflow:hidden}.lightbox{background:var(--color-transparent);width:100%;max-width:none;height:100%;max-height:none;color:var(--color-on-night);border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.lightbox::backdrop{background-color:var(--color-lightbox-backdrop)}.lightbox-stage{justify-content:center;align-items:center;width:100%;height:100%;padding:4.5rem 1rem 5.5rem;display:flex;position:relative}.lightbox-figure{flex-direction:column;align-items:center;gap:.75rem;max-width:90vw;margin:0;display:flex}.lightbox-img{object-fit:contain;border-radius:var(--radius-xs);background-color:var(--color-night-surface);width:auto;max-width:90vw;height:auto;max-height:min(85vh,100vh - 14rem);display:block}.lightbox-caption{text-align:center;max-width:60ch;font-size:var(--text-small);line-height:var(--text-small--line-height);color:var(--color-on-night-muted);flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.25rem .75rem;display:flex}.lightbox-count{color:var(--color-on-night-faint)}.lightbox-btn{border:1px solid var(--white-a22);border-radius:var(--radius-full);background-color:var(--white-a10);width:2.75rem;height:2.75rem;color:var(--color-on-night);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out);justify-content:center;align-items:center;display:inline-flex;position:absolute}.lightbox-btn:hover{background-color:var(--white-a22)}.lightbox-btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.lightbox-close{top:1rem;right:1rem}.lightbox-next,.lightbox-prev{bottom:1.5rem}.lightbox-prev{right:calc(50% + .5rem)}.lightbox-next{left:calc(50% + .5rem)}.lightbox-flip{scale:-1 1}@media (min-width:48rem){.lightbox-stage{padding:4.5rem 5rem}.lightbox-next,.lightbox-prev{margin-top:-1.375rem;top:50%;bottom:auto}.lightbox-prev{left:1.5rem;right:auto}.lightbox-next{left:auto;right:1.5rem}.lightbox-img{max-width:min(90vw,100vw - 10rem);max-height:min(85vh,100vh - 10rem)}}@media (prefers-reduced-motion:no-preference){.lightbox[open]::backdrop{animation:lightbox-fade var(--duration-base) var(--ease-out)}.lightbox[open] .lightbox-figure{animation:lightbox-in var(--duration-base) var(--ease-out)}}@keyframes lightbox-fade{0%{opacity:0}}@keyframes lightbox-in{0%{opacity:0;scale:.96}}@media (forced-colors:active){.lightbox-btn{border-color:buttontext}}.viewer{background-color:var(--color-night)}.viewer-shell{flex-direction:column;width:100%;height:100%;display:flex;position:relative}.viewer-top{justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1rem .75rem;display:flex}.viewer-count{font-size:var(--text-small);color:var(--color-on-night-faint)}.viewer-canvas{touch-action:none;cursor:zoom-in;-webkit-user-select:none;user-select:none;flex:1;min-height:0;margin-inline:1rem;position:relative;overflow:hidden}.viewer-canvas[data-zoomed=true]{cursor:grab}.viewer-canvas[data-zoomed=true]:active{cursor:grabbing}.viewer-layer{position:absolute;top:50%;left:50%}.viewer-img{border-radius:var(--radius-xs);background-color:var(--color-diagram);pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.viewer-img[data-loaded=false]{opacity:0}.viewer-loading{border-radius:var(--radius-full);background-color:var(--color-chip);padding:.5rem;display:inline-flex;position:absolute;top:.75rem;left:50%;translate:-50%}.viewer-spinner{border:2px solid var(--white-a22);border-top-color:var(--color-on-night);border-radius:var(--radius-full);width:1rem;height:1rem}.viewer-bottom{flex-direction:column;align-items:center;gap:.625rem;padding:.75rem 1rem 1rem;display:flex}.viewer-caption{text-align:center;max-width:60ch;font-size:var(--text-small);line-height:var(--text-small--line-height);color:var(--color-on-night-muted)}.viewer-tools{align-items:center;gap:.5rem;display:flex}.viewer-level{text-align:center;min-width:4.5rem;color:var(--color-on-night-muted)}.viewer-hint,.viewer-level{font-size:var(--text-small)}.viewer-hint{color:var(--color-on-night-faint);display:none}.viewer-btn{border:1px solid var(--white-a22);border-radius:var(--radius-full);background-color:var(--white-a10);width:2.75rem;height:2.75rem;color:var(--color-on-night);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.viewer-btn:hover{background-color:var(--white-a22)}.viewer-btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.viewer-btn[aria-disabled=true]{opacity:.45;cursor:default}.viewer-nav{z-index:2;margin-top:-1.375rem;position:absolute;top:50%}.viewer-prev{left:1.5rem}.viewer-next{right:1.5rem}@media (max-width:47.99rem){.viewer-nav{margin-top:0;top:1rem}.viewer-prev{left:auto;right:7rem}.viewer-next{right:4.25rem}}@media (min-width:48rem){.viewer-canvas{margin-inline:5.5rem}.viewer-hint{display:block}}@media (prefers-reduced-motion:no-preference){.viewer-layer[data-animate=true]{transition-property:transform,width,height;transition-duration:var(--duration-base);transition-timing-function:var(--ease-out)}.viewer-spinner{animation:viewer-spin .8s linear infinite}.viewer[open] .viewer-shell{animation:lightbox-in var(--duration-base) var(--ease-out)}}@keyframes viewer-spin{to{rotate:1turn}}@media (forced-colors:active){.gfig-chip,.gfig-scroll-hint,.viewer-btn{border:1px solid buttontext}}.res-share{margin-top:var(--spacing-block);font-size:var(--text-ui);flex-wrap:wrap;column-gap:.75rem}.res-share,.toc-link{color:var(--color-text-muted);align-items:center;display:flex}.toc-link{min-height:2.25rem;font-size:var(--text-small);line-height:var(--text-small--line-height);border-radius:.25rem;padding:.375rem 0 .375rem 1rem}.toc-link:hover{color:var(--color-text)}.toc-link[aria-current]{color:var(--color-text);font-weight:500}.toc-bar{background-image:linear-gradient(180deg,var(--color-primary),var(--color-cyan));width:2px;transform:translateY(var(--y,0));height:var(--h,0);position:absolute;top:0;left:0}.reading-progress{top:var(--spacing-header-sm);z-index:49;background-image:var(--gradient-brand);transform-origin:0;height:2px;transform:scaleX(var(--progress,0));pointer-events:none;position:fixed;left:0;right:0}@media (min-width:48rem){.reading-progress{top:var(--spacing-header)}}@supports (animation-timeline:scroll()){.reading-progress{animation:grow-x linear both;animation-timeline:scroll(root);transform:none}}@keyframes grow-x{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.metric,.metric>span{display:block}.metric-value{font-family:var(--font-sans);font-variant-numeric:tabular-nums;color:var(--color-text)}.metric--s .metric-value{font-size:var(--text-h3);line-height:var(--text-h3--line-height);letter-spacing:-.02em;font-weight:600}.metric--m .metric-value{font-size:var(--text-metric);line-height:var(--text-metric--line-height);letter-spacing:var(--text-metric--letter-spacing);font-weight:var(--text-metric--font-weight)}.metric--l .metric-value{font-size:var(--text-fact);line-height:var(--text-fact--line-height);letter-spacing:var(--text-fact--letter-spacing);font-weight:var(--text-fact--font-weight)}.metric-unit{font-size:calc(var(--metric-unit-scale) * 1em);letter-spacing:-.01em;color:var(--color-text-muted);margin-left:.18em;font-weight:400}.metric-unit--of{margin-inline:.18em}.metric-ord{vertical-align:top;letter-spacing:-.01em;margin-left:.04em;padding-top:.12em;font-size:.46em;line-height:1;display:inline-block}.metric-label{max-width:28ch;font-size:var(--text-small);line-height:var(--text-small--line-height);color:var(--color-text-muted);margin-top:.5rem}.metric-note{font-size:var(--text-micro);line-height:var(--text-micro--line-height);color:var(--color-text-faint);margin-top:.25rem}.metric--s{flex-wrap:wrap;align-items:baseline;column-gap:.5rem;display:flex}.metric--s>.metric-label,.metric--s>.metric-note{max-width:none;font-size:var(--text-small);line-height:var(--text-small--line-height);margin-top:0;display:inline}.metric[data-tone=dark] .metric-value{color:var(--color-on-night)}.metric[data-tone=dark] .metric-label,.metric[data-tone=dark] .metric-unit{color:var(--color-on-night-muted)}.metric[data-tone=dark] .metric-note{color:var(--color-on-night-faint)}.contact-card .metric[data-tone=dark] .metric-note{color:var(--color-on-gradient-muted)}@media (forced-colors:active){.metric-label,.metric-unit,.metric-value{color:canvastext}}.toc-details summary{cursor:pointer;list-style:none}.toc-details summary::-webkit-details-marker{display:none}.toc-details[open] .chev{transform:rotate(180deg)}.shrug-dot{fill:var(--color-text);opacity:.16}.shrug-line{fill:none;stroke:var(--color-signal);stroke-opacity:.8;stroke-width:1.25px;stroke-linecap:round;stroke-linejoin:round}.shrug-node{fill:var(--color-signal)}.shrug-joint{fill:var(--color-text);opacity:.55}@media (prefers-reduced-motion:no-preference){.shrug-line{animation:draw-accent var(--duration-draw) var(--ease-emphasis) backwards;animation-delay:calc(var(--i,0) * var(--stagger-shrug) + .15s)}.shrug-joint,.shrug-node{animation:fade-in var(--duration-fast) var(--ease-out) backwards;animation-delay:calc(var(--i,0) * var(--stagger-shrug) + .15s + var(--duration-draw) * .4)}}@media (forced-colors:active){.shrug-line{stroke:canvastext}.shrug-dot,.shrug-joint,.shrug-node{fill:canvastext}}@media (prefers-reduced-motion:no-preference){.fade-in{animation:fade-in var(--duration-fast) var(--ease-out) both}}@keyframes fade-in{0%{opacity:0}}.tint-band{background-color:var(--color-tint);--color-paper:var(--color-surface);--focus-gap:var(--color-tint);--shadow-focus:0 0 0 2px var(--focus-gap),0 0 0 4px var(--color-focus);position:relative}.tint-band ::selection{background-color:var(--color-primary-tint)}@media (min-width:64rem){.tint-band{margin-inline:min(2.5%,calc(max((100% - var(--container-content)) / 2, 0px) + var(--spacing-gutter) - 2.5rem))}}.tint-band .moment-role{background-color:var(--color-surface);box-shadow:inset 0 0 0 1px var(--color-primary-tint)}.site-icon{width:var(--site-icon);height:var(--site-icon);border-radius:calc(var(--site-icon) * .24);flex-shrink:0;display:block;position:relative;overflow:hidden}.site-icon img{width:100%;height:100%;display:block}.site-icon:after{content:"";border-radius:inherit;box-shadow:inset 0 0 0 1px var(--icon-rim);position:absolute;inset:0}.site-icon--mono{color:var(--color-text-muted);font-size:calc(var(--site-icon) * .45);place-items:center;font-weight:600;line-height:1;display:grid}.hubC-bar,.site-icon--mono{background-color:var(--color-subtle)}.hubC-bar{align-items:flex-end;gap:.75rem;padding:.5rem .5rem 0 0;display:flex}.hubC-bar>.traffic{align-self:center;margin-bottom:.375rem}.hubC-tabs{scrollbar-width:none;flex:1;gap:2px;min-width:0;display:flex;overflow-x:auto}.hubC-tab{flex:0 1 var(--hubC-tab-max);border-radius:var(--radius-sm) var(--radius-sm) 0 0;min-width:2.75rem;height:2.25rem;color:var(--color-text-muted);font-size:var(--text-small);white-space:nowrap;cursor:pointer;transition:background-color var(--duration-fast),color var(--duration-fast);align-items:center;gap:.5rem;padding-inline:.75rem;font-weight:500;display:flex;position:relative}.hubC-tab:hover{background-color:#ffffff8c}@supports (color:color-mix(in lab,red,red)){.hubC-tab:hover{background-color:color-mix(in oklab,var(--color-surface) 55%,transparent)}}.hubC-tab:hover{color:var(--color-text)}.hubC-tab[aria-selected=true]{background-color:var(--color-surface);color:var(--color-text)}.hubC-tab:focus-visible{outline-offset:-2px}.hubC-fav{--site-icon:1rem;border-radius:.1875rem}.hubC-tab-name{text-overflow:ellipsis;min-width:0;overflow:hidden}.hubC-toolbar{background-color:var(--color-surface);border-bottom:1px solid var(--color-border);padding:.5rem .75rem}.hubC-address{background-color:var(--color-subtle);border-radius:var(--radius-full);max-width:36rem;height:2rem;font-family:var(--font-mono);font-size:var(--text-micro);color:var(--color-text-muted);align-items:center;gap:.5rem;padding-inline:.875rem;display:flex}.hubC-lock{color:var(--color-text-faint);flex-shrink:0}.hubC-panel{gap:1.5rem;padding:1.5rem 1.25rem;display:grid}.hubC-info{flex-direction:column;align-items:flex-start;gap:.375rem;display:flex}.hubC-icon{--site-icon:3.5rem;box-shadow:var(--shadow-sm);margin-bottom:.625rem}.hubC-name{font-size:var(--text-h3);line-height:var(--text-h3--line-height);letter-spacing:var(--text-h3--letter-spacing);font-weight:600}.hubC-meta{font-size:var(--text-micro);line-height:var(--text-micro--line-height);color:var(--color-text-faint)}.hubC-why{max-width:40ch;font-size:var(--text-lead);line-height:var(--text-lead--line-height);letter-spacing:var(--text-lead--letter-spacing);color:var(--color-text-muted)}.hubC-visit,.hubC-why{margin-top:.5rem}.hubC-shot{aspect-ratio:var(--hubC-shot-ratio);border-radius:var(--radius-md);background-color:var(--color-subtle);box-shadow:var(--shadow-shot);position:relative;overflow:hidden}.hubC-shot:after{content:"";border-radius:inherit;box-shadow:inset 0 0 0 1px var(--icon-rim);pointer-events:none;position:absolute;inset:0}.hubC-shot-img{object-fit:cover;object-position:top;opacity:0}.hubC-shot-img[data-on]{opacity:1}@media (prefers-reduced-motion:no-preference){.hubC-shot-img{transition:opacity var(--duration-base) var(--ease-out)}.hubC-shot{transition:box-shadow var(--duration-base) var(--ease-out)}}@media (pointer:fine){.hubC-shot:hover{box-shadow:var(--shadow-shot-hover)}}.hubC-shot:focus-visible{box-shadow:var(--shadow-focus),var(--shadow-shot);outline:2px solid #0000}@media (hover:hover){.hubC-shot .gfig-chip{opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}}@media (max-width:39.99rem){.hubC-tab{flex:none;justify-content:center;width:2.75rem;padding-inline:0}.hubC-tab-name{clip-path:inset(50%);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}}@media (min-width:48rem){.hubC-panel{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:2.5rem;padding:2.5rem}}@media (forced-colors:active){.hubC-address,.hubC-shot{border:1px solid canvastext}.hubC-tab[aria-selected=true]{outline:2px solid highlight}.hubC-shot:focus-visible{outline-offset:2px;outline:2px solid highlight}}.ask-greet-box{position:relative}.ask-greet-typing{display:none}.ask-wave{transform-origin:70% 80%;display:inline-block}@media (prefers-reduced-motion:no-preference){.js .ask-greet .ask-greet-w:not([data-on]),.js .ask-greet .ask-wave:not([data-on]),.js .ask-greet[data-greet=pending] .ask-text{visibility:hidden}.js .ask-greet:not([data-instant]) .ask-greet-w[data-on]{animation:greet-word var(--duration-base) var(--ease-out)}.js .ask-greet[data-greet=typing] .ask-greet-typing{font-size:var(--text-small);color:var(--color-text-muted);align-items:center;gap:.5rem;display:flex;position:absolute;inset:0 auto auto 0}.js .ask-greet:not([data-greet=chips]) .ask-greet-after{visibility:hidden}.js .ask-greet[data-greet=chips]:not([data-instant]) .ask-chips>li{animation:greet-chip var(--duration-welcome-chip) var(--ease-out) backwards;animation-delay:calc(var(--chip-i,0) * var(--welcome-chip-stagger))}.ask-greet .ask-chips>li:nth-child(2){--chip-i:1}.ask-greet .ask-chips>li:nth-child(3){--chip-i:2}.ask-greet .ask-chips>li:nth-child(4){--chip-i:3}.ask-greet .ask-chips>li:nth-child(n+5){--chip-i:4}.js .ask-greet:not([data-instant]) .ask-wave[data-on]{animation:wave var(--duration-wave) var(--ease-in-out) 1}.js .hero-seq .hero-copy>p.hero-in{animation-delay:var(--seq-sub)}.js .hero-seq .hero-copy>div.hero-in{animation-delay:var(--seq-cta)}.js .hero-seq .hero-in-photo{animation-delay:var(--seq-photo)}.js .hero-seq .hero-in-term{animation-delay:var(--seq-term)}}@keyframes greet-word{0%{opacity:0}}@keyframes greet-chip{0%{opacity:0;translate:0 .375rem}}@keyframes greet-chip-row{0%{opacity:0}}@media (prefers-reduced-motion:no-preference) and (max-width:47.99rem){.js .ask-greet[data-greet=chips]:not([data-instant]) .ask-chips>li{animation-name:greet-chip-row}}@keyframes wave{0%,to{rotate:0deg}15%,45%{rotate:16deg}30%,60%{rotate:-8deg}75%{rotate:6deg}}}@layer utilities{.\!visible{visibility:visible!important}.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;overflow:hidden}.absolute,.sr-only{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.top-3{top:calc(var(--spacing) * 3)}.top-8{top:calc(var(--spacing) * 8)}.top-\[5\.5rem\]{top:5.5rem}.right-8{right:calc(var(--spacing) * 8)}.left-3{left:calc(var(--spacing) * 3)}.isolate{isolation:isolate}.z-50{z-index:50}.z-\[4\]{z-index:4}.mx-auto{margin-inline:auto}.my-section{margin-block:var(--spacing-section)}.-mt-header-sm{margin-top:calc(var(--spacing-header-sm) * -1)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-auto{margin-top:auto}.mt-block{margin-top:var(--spacing-block)}.mt-section{margin-top:var(--spacing-section)}.-mr-2{margin-right:calc(var(--spacing) * -2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-block{margin-bottom:var(--spacing-block)}.mb-section{margin-bottom:var(--spacing-section)}.-ml-2{margin-left:calc(var(--spacing) * -2)}.-ml-3{margin-left:calc(var(--spacing) * -3)}.-ml-px{margin-left:-1px}.ml-1{margin-left:var(--spacing)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-2,.line-clamp-4{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-4{-webkit-line-clamp:4}.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}.inline-grid{display:inline-grid}.table{display:table}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.h-full{height:100%}.h-header-sm{height:var(--spacing-header-sm)}.min-h-6{min-height:calc(var(--spacing) * 6)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-dvh{min-height:100dvh}.w-56{width:calc(var(--spacing) * 56)}.w-full{width:100%}.max-w-80{max-width:calc(var(--spacing) * 80)}.max-w-\[16ch\]{max-width:16ch}.max-w-\[22ch\]{max-width:22ch}.max-w-\[24ch\]{max-width:24ch}.max-w-\[40rem\]{max-width:40rem}.max-w-\[44ch\]{max-width:44ch}.max-w-\[48ch\]{max-width:48ch}.max-w-\[52ch\]{max-width:52ch}.max-w-\[56ch\]{max-width:56ch}.max-w-content{max-width:var(--container-content)}.max-w-measure{max-width:var(--container-measure)}.max-w-reading{max-width:var(--container-reading)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.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,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.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-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-block{gap:var(--spacing-block)}.gap-grid{gap:var(--spacing-grid)}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.rounded-full{border-radius:var(--radius-full)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-border{border-color:var(--color-border)}.bg-night{background-color:var(--color-night)}.bg-subtle{background-color:var(--color-subtle)}.bg-tint{background-color:var(--color-tint)}.object-cover{object-fit:cover}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-gutter{padding-inline:var(--spacing-gutter)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-section{padding-block:var(--spacing-section)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-10{padding-top:calc(var(--spacing) * 10)}.pt-12{padding-top:calc(var(--spacing) * 12)}.pt-\[calc\(var\(--spacing-header-sm\)\+2rem\)\]{padding-top:calc(var(--spacing-header-sm) + 2rem)}.pt-section{padding-top:var(--spacing-section)}.pb-section{padding-bottom:var(--spacing-section)}.text-center{text-align:center}.font-accent{font-family:var(--font-instrument-serif),Georgia,serif}.font-mono{font-family:var(--font-geist-mono),ui-monospace,monospace}.text-h1{font-size:var(--text-h1);line-height:var(--tw-leading,var(--text-h1--line-height));letter-spacing:var(--tw-tracking,var(--text-h1--letter-spacing));font-weight:var(--tw-font-weight,var(--text-h1--font-weight))}.text-h2{font-size:var(--text-h2);line-height:var(--tw-leading,var(--text-h2--line-height));letter-spacing:var(--tw-tracking,var(--text-h2--letter-spacing));font-weight:var(--tw-font-weight,var(--text-h2--font-weight))}.text-h3{font-size:var(--text-h3);line-height:var(--tw-leading,var(--text-h3--line-height));letter-spacing:var(--tw-tracking,var(--text-h3--letter-spacing));font-weight:var(--tw-font-weight,var(--text-h3--font-weight))}.text-hero{font-size:var(--text-hero);line-height:var(--tw-leading,var(--text-hero--line-height));letter-spacing:var(--tw-tracking,var(--text-hero--letter-spacing));font-weight:var(--tw-font-weight,var(--text-hero--font-weight))}.text-metric{font-size:var(--text-metric);line-height:var(--tw-leading,var(--text-metric--line-height));letter-spacing:var(--tw-tracking,var(--text-metric--letter-spacing));font-weight:var(--tw-font-weight,var(--text-metric--font-weight))}.text-micro{font-size:var(--text-micro);line-height:var(--tw-leading,var(--text-micro--line-height));letter-spacing:var(--tw-tracking,var(--text-micro--letter-spacing));font-weight:var(--tw-font-weight,var(--text-micro--font-weight))}.text-ui{font-size:var(--text-ui);line-height:var(--tw-leading,var(--text-ui--line-height));letter-spacing:var(--tw-tracking,var(--text-ui--letter-spacing));font-weight:var(--tw-font-weight,var(--text-ui--font-weight))}.text-body{font-size:var(--text-body);line-height:var(--tw-leading,var(--text-body--line-height));letter-spacing:var(--tw-tracking,var(--text-body--letter-spacing))}.text-lead{font-size:var(--text-lead);line-height:var(--tw-leading,var(--text-lead--line-height));letter-spacing:var(--tw-tracking,var(--text-lead--letter-spacing))}.text-small{font-size:var(--text-small);line-height:var(--tw-leading,var(--text-small--line-height))}.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)}.text-wrap{text-wrap:wrap}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.text-on-gradient-muted{color:var(--color-on-gradient-muted)}.text-on-night{color:var(--color-on-night)}.text-on-night-muted{color:var(--color-on-night-muted)}.text-primary{color:var(--color-primary)}.text-text{color:var(--color-text)}.text-text-faint{color:var(--color-text-faint)}.text-text-muted{color:var(--color-text-muted)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal}.ordinal,.tabular-nums{font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums}.underline{text-decoration-line:underline}.underline-offset-\[0\.22em\]{text-underline-offset:.22em}.shadow-shot{--tw-shadow:0 1px 2px var(--tw-shadow-color,#131a1b14),0 .75rem 1.75rem -.625rem var(--tw-shadow-color,#131a1b47)}.shadow-shot,.shadow-xs{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px var(--tw-shadow-color,#131a1b0d)}.ring-focus{--tw-ring-color:var(--color-focus)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px)}.blur,.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-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))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-\(--duration-base\){--tw-duration:var(--duration-base);transition-duration:var(--duration-base)}.duration-\(--duration-fast\){--tw-duration:var(--duration-fast);transition-duration:var(--duration-fast)}.duration-\(--duration-slow\){--tw-duration:var(--duration-slow);transition-duration:var(--duration-slow)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.inline-block{inline-size:var(--spacing-block)}.inline-grid{inline-size:var(--spacing-grid)}@media (hover:hover){.group-hover\:translate-x-\[3px\]:is(:where(.group):hover *){--tw-translate-x:3px;translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:text-text:hover{color:var(--color-text)}.hover\:underline:hover{text-decoration-line:underline}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:absolute:focus{position:absolute}.focus\:top-3:focus{top:calc(var(--spacing) * 3)}.focus\:left-3:focus{left:calc(var(--spacing) * 3)}.focus\:z-\[60\]:focus{z-index:60}.focus\:inline-flex:focus{display:inline-flex}.focus\:min-h-11:focus{min-height:calc(var(--spacing) * 11)}.focus\:items-center:focus{align-items:center}.focus\:px-4:focus{padding-inline:calc(var(--spacing) * 4)}.focus\:py-2\.5:focus{padding-block:calc(var(--spacing) * 2.5)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}@media (prefers-reduced-motion:reduce){.motion-reduce\:transition-none{transition-property:none}@media (hover:hover){.motion-reduce\:group-hover\:translate-x-0:is(:where(.group):hover *){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}}}@media not all and (min-width:48rem){.max-md\:ml-0{margin-left:0}.max-md\:gap-1{gap:var(--spacing)}.max-md\:gap-1\.5{gap:calc(var(--spacing) * 1.5)}}@media (min-width:40rem){.sm\:w-auto{width:auto}.sm\:flex-row{flex-direction:row}}@media (min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:-mt-header{margin-top:calc(var(--spacing-header) * -1)}.md\:mt-6{margin-top:calc(var(--spacing) * 6)}.md\:mt-10{margin-top:calc(var(--spacing) * 10)}.md\:block{display:block}.md\:hidden{display:none}.md\:h-header{height:var(--spacing-header)}.md\:max-w-96{max-width:calc(var(--spacing) * 96)}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:items-end{align-items:flex-end}.md\:justify-between{justify-content:space-between}.md\:gap-8{gap:calc(var(--spacing) * 8)}.md\:p-10{padding:calc(var(--spacing) * 10)}.md\:pt-10{padding-top:calc(var(--spacing) * 10)}.md\:pt-16{padding-top:calc(var(--spacing) * 16)}.md\:pt-\[calc\(var\(--spacing-header\)\+3rem\)\]{padding-top:calc(var(--spacing-header) + 3rem)}}@media (min-width:64rem){.lg\:block{display:block}.lg\:hidden{display:none}.lg\:inline-flex{display:inline-flex}.lg\:min-h-\[44rem\]{min-height:44rem}.lg\:w-72{width:calc(var(--spacing) * 72)}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-rows-2{grid-template-rows:repeat(2,minmax(0,1fr))}.lg\:gap-6{gap:calc(var(--spacing) * 6)}.lg\:p-14{padding:calc(var(--spacing) * 14)}.lg\:pt-20{padding-top:calc(var(--spacing) * 20)}.lg\:pt-\[calc\(var\(--spacing-header\)\+3\.5rem\)\]{padding-top:calc(var(--spacing-header) + 3.5rem)}}}:root{--duration-instant:.1s;--duration-fast:.16s;--duration-base:.24s;--duration-slow:.48s;--duration-reveal:.64s;--duration-media:.52s;--stagger:60ms;--stagger-word:35ms;--stream-word:24ms;--stream-pause:.12s;--typing-cycle:.9s;--intro-max:4.5s;--think-min:.45s;--duration-window-close:.42s;--duration-window-open:.38s;--ease-window-close:cubic-bezier(.55,0,.75,.25);--ease-window-open:cubic-bezier(.2,.9,.3,1.05);--dock-bounce:.46s;--term-body-min:11rem;--term-body-max:60vh;--stroke-hair:1.25px;--stroke-accent:2px;--stroke-accent-lg:2.5px;--circuit-node:.2188rem;--duration-draw:.9s;--stagger-shrug:.11s;--duration-draw-icon:1s;--duration-draw-accent:.62s;--ease-draw-accent:cubic-bezier(.25,.1,.15,1);--clip-accent-hidden:inset(-1em calc(100% + .25rem) -1em -.25rem);--clip-accent-shown:inset(-1em -.25rem -1em -.25rem);--stagger-fact:.12s;--color-circuit:#9bb4bf}@supports (color:color-mix(in lab,red,red)){:root{--color-circuit:color-mix(in oklab,var(--color-primary) 30%,var(--color-border))}}:root{--color-circuit-on:var(--color-primary);--photo-w:11rem;--photo-avatar:6rem;--touch-target:2.75rem;--radius-avatar:1.25rem;--logo-sig-h:1.875rem;--logo-sig-stroke:.75px;--logo-gap-name:.625rem;--duration-logo:1.3s;--delay-logo:.2s;--logo-pen-turn:24ms;--logo-pen-lift:.14s;--ease-pen-in:cubic-bezier(.5,0,.67,.67);--ease-pen-out:cubic-bezier(.33,.33,.5,1);--welcome-wait:1.5s;--welcome-typing:.9s;--welcome-word:70ms;--welcome-sentence-pause:.45s;--welcome-chips-pause:.3s;--welcome-chip-stagger:.11s;--duration-welcome-chip:.52s;--duration-wave:1.2s;--seq-sub:.5s;--seq-cta:.65s;--seq-photo:.8s;--seq-term:1s;--photo-about-w:10rem;--timeline-x:.625rem;--timeline-node:.3125rem;--timeline-node-now:.4375rem;--stroke-progress:2px;--duration-node:.24s;--polaroid-pad:.625rem;--polaroid-tilt-max:1.5deg;--polaroid-lift:.375rem;--duration-straighten:.32s;--moment-row-gap:clamp(4.5rem,3rem + 5vw,8rem);--moment-single-max:22.5rem;--moment-stack-max:22.5rem;--moment-stack-card:46%;--moment-fan-x:58%;--moment-pile-spread:20%;--moment-fan-rot:4deg;--moment-grid-wide:47;--moment-grid-narrow:31.5;--moment-num-h:1.25rem;--moment-node-col:1.375rem;--duration-fan:.36s;--stagger-moment:80ms;--stagger-pose:90ms;--stagger-tape:50ms;--duration-peel:.22s;--moment-peel-lead:.14s;--tape-w:4rem;--tape-h:1.25rem;--tape-w-md:5.5rem;--tape-h-md:1.625rem;--tape-w-sm:4.25rem;--tape-h-sm:1.25rem;--tape-peel-lift:-.375rem;--tape-peel-turn:8deg;--tape-pose-delay:calc(var(--stagger-moment) + 2 * var(--stagger-pose) + var(--duration-slow) + .12s);--color-tape:#c26a3a33}@supports (color:color-mix(in lab,red,red)){:root{--color-tape:color-mix(in oklab,var(--color-coral) 20%,transparent)}}:root{--color-lightbox-backdrop:#0c1a26eb}@supports (color:color-mix(in lab,red,red)){:root{--color-lightbox-backdrop:color-mix(in oklab,var(--color-night) 92%,transparent)}}:root{--color-diagram:#fff;--color-chip:#0c1a26c7}@supports (color:color-mix(in lab,red,red)){:root{--color-chip:color-mix(in oklab,var(--color-night) 78%,transparent)}}:root{--line-icon-lg:3rem;--fact-polaroid-tilt:-2.5deg;--metric-unit-scale:.6;--duration-redraw:.52s;--logo-area:2780;--logo-h-min:1.25rem;--logo-h-max:2.5rem;--logo-gap:1.5rem;--marquee-speed:100;--spotlight:#73a2c424}@supports (color:color-mix(in lab,red,red)){:root{--spotlight:color-mix(in oklab,var(--color-signal) 14%,transparent)}}:root{--spotlight-edge:#73a2c4b3}@supports (color:color-mix(in lab,red,red)){:root{--spotlight-edge:color-mix(in oklab,var(--color-signal) 70%,transparent)}}:root{--dot:#131a1b1f}@supports (color:color-mix(in lab,red,red)){:root{--dot:color-mix(in oklab,var(--color-text) 12%,transparent)}}:root{--dot-faint:#131a1b0f}@supports (color:color-mix(in lab,red,red)){:root{--dot-faint:color-mix(in oklab,var(--color-text) 6%,transparent)}}:root{--white-a8:#ffffff14}@supports (color:color-mix(in lab,red,red)){:root{--white-a8:color-mix(in oklab,var(--color-on-primary) 8%,transparent)}}:root{--white-a10:#ffffff1a}@supports (color:color-mix(in lab,red,red)){:root{--white-a10:color-mix(in oklab,var(--color-on-primary) 10%,transparent)}}:root{--white-a18:#ffffff2e}@supports (color:color-mix(in lab,red,red)){:root{--white-a18:color-mix(in oklab,var(--color-on-primary) 18%,transparent)}}:root{--white-a22:#ffffff38}@supports (color:color-mix(in lab,red,red)){:root{--white-a22:color-mix(in oklab,var(--color-on-primary) 22%,transparent)}}:root{--white-a28:#ffffff47}@supports (color:color-mix(in lab,red,red)){:root{--white-a28:color-mix(in oklab,var(--color-on-primary) 28%,transparent)}}:root{--gradient-brand:linear-gradient(120deg,var(--color-primary) 0%,var(--color-brand-mid) 45%,var(--color-cyan) 100%);--gradient-deep:linear-gradient(135deg,var(--color-primary-fill) 0%,var(--color-deep-mid) 45%,var(--color-night) 100%);--aurora-1:#045a8f2e}@supports (color:color-mix(in lab,red,red)){:root{--aurora-1:color-mix(in oklab,var(--color-primary) 18%,transparent)}}:root{--aurora-2:#66aeb729}@supports (color:color-mix(in lab,red,red)){:root{--aurora-2:color-mix(in oklab,var(--color-cyan) 16%,transparent)}}:root{--aurora-3:#c26a3a1a}@supports (color:color-mix(in lab,red,red)){:root{--aurora-3:color-mix(in oklab,var(--color-coral) 10%,transparent)}}:root{--night-glow:#045a8f4d}@supports (color:color-mix(in lab,red,red)){:root{--night-glow:color-mix(in oklab,var(--color-primary) 30%,transparent)}}:root{--night-dot:#f0f4f60d}@supports (color:color-mix(in lab,red,red)){:root{--night-dot:color-mix(in oklab,var(--color-on-night) 5%,transparent)}}:root{--method-disc-rim:#627586}@supports (color:color-mix(in lab,red,red)){:root{--method-disc-rim:color-mix(in oklab,var(--color-on-night-faint) 55%,var(--color-night-border))}}@media (min-width:48rem){:root{--photo-w:14rem;--logo-area:4360;--logo-h-min:1.375rem;--logo-h-max:3.25rem;--logo-gap:2.5rem;--term-body-min:13rem;--term-body-max:22rem;--spacing-avatar:1.75rem;--logo-sig-h:2.125rem;--photo-about-w:16rem;--polaroid-pad:.75rem;--polaroid-tilt-max:2.5deg;--moment-single-max:26.25rem;--moment-stack-max:27.5rem;--line-icon-lg:4rem}}@media (min-width:64rem){:root{--photo-w:clamp(17rem,9rem + 13vw,20.5rem);--photo-about-w:20rem;--timeline-x:0px;--moment-single-max:32.5rem;--moment-stack-max:35rem}}@media (max-width:47.99rem){:root{--spacing-section:4rem;--text-hero:2.25rem;--term-body-max:55svh;--chips-fade:2.5rem}}:root{--color-primary-fill:var(--color-primary);--color-primary-fill-hover:var(--color-primary-hover);--color-paper:var(--color-surface);--night-edge:transparent;--color-inverse-hover:var(--color-primary-soft);--logo-rest-filter:grayscale(1) contrast(.9);--logo-rest-opacity:.62;--logo-knockout-filter:grayscale(1) contrast(.9);--logo-mono-filter:none;--logo-hover-filter:none}:root,:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}:root:where([data-theme=dark],[data-theme=dark] *){--color-bg:#0d1314;--color-underline:#ff7448;--color-surface:#151c1e;--color-subtle:#1c2527;--color-tint:#0f1c27;--color-text:#ebefef;--color-text-muted:#c0cacb;--color-text-faint:#aab6b7;--color-border:#253032;--color-border-strong:#6a7778;--color-primary:#85bee1;--color-primary-hover:#abd4eb;--color-primary-soft:#15293a;--color-primary-tint:#274862;--color-primary-fill:#126ca0;--color-primary-fill-hover:#146293;--color-inverse-hover:#e1edf4;--color-on-gradient-muted:#e1edf7;--color-signal:#73a2c4;--color-focus:#85bee1;--color-cyan-ink:#8cd5db;--color-cyan-soft:#0f272e;--color-coral-ink:#e8a37c;--color-coral-soft:#33231a;--color-night:#060d15;--night-edge:var(--color-night-border);--color-paper:var(--color-subtle);--color-tape:#c26a3a52}@supports (color:color-mix(in lab,red,red)){:root:where([data-theme=dark],[data-theme=dark] *){--color-tape:color-mix(in oklab,var(--color-coral) 32%,transparent)}}:root:where([data-theme=dark],[data-theme=dark] *){--color-dock-glass:#1c252799;--color-dock-rim:#ffffff1a;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 2px #0000004d,0 2px .5rem -1px #0000004d;--aurora-1:#045a8f38}@supports (color:color-mix(in lab,red,red)){:root:where([data-theme=dark],[data-theme=dark] *){--aurora-1:color-mix(in oklab,var(--color-primary) 22%,transparent)}}:root:where([data-theme=dark],[data-theme=dark] *){--aurora-2:#66aeb72e}@supports (color:color-mix(in lab,red,red)){:root:where([data-theme=dark],[data-theme=dark] *){--aurora-2:color-mix(in oklab,var(--color-cyan) 18%,transparent)}}:root:where([data-theme=dark],[data-theme=dark] *){--aurora-3:#c26a3a1f}@supports (color:color-mix(in lab,red,red)){:root:where([data-theme=dark],[data-theme=dark] *){--aurora-3:color-mix(in oklab,var(--color-coral) 12%,transparent)}}:root:where([data-theme=dark],[data-theme=dark] *){--shadow-md:0 1px 2px #0000004d,0 .5rem 1.5rem -.5rem #00000080;--shadow-lg:0 2px .25rem #0000004d,0 1.5rem 3.5rem -1.25rem #0009;--shadow-window:0 0 0 1px var(--color-border),0 2px .375rem #0000004d,0 1.5rem 3.5rem -1.25rem #0009;--shadow-photo:0 1px 2px #0000004d,0 1.5rem 3rem -1rem #126ca059;--shadow-shot:0 1px 2px #0000004d,0 .75rem 1.75rem -.625rem #0000008c;--shadow-shot-hover:0 1px 2px #0000004d,0 1.125rem 2.5rem -.75rem #000000a6;--shadow-dock:0 0 0 .5px #ffffff1f,0 .5rem 1.5rem -.5rem #0009;--logo-rest-filter:grayscale(1) brightness(0) invert(1);--logo-rest-opacity:.66;--logo-knockout-filter:grayscale(1) invert(1) contrast(.9);--logo-mono-filter:invert(1);--logo-hover-filter:invert(1) hue-rotate(180deg)}.theme-switching :after,.theme-switching :before,.theme-switching :not(.theme-icon,.theme-icon *){transition:none!important}@media (prefers-reduced-motion:no-preference){::view-transition-old(root){animation:vt-out .2s var(--ease-out) both}::view-transition-new(root){animation:vt-in .24s var(--ease-out) both}::view-transition-group(*){animation-duration:.42s;animation-timing-function:var(--ease-in-out)}::view-transition-group(header){animation:none}::view-transition-old(header){animation:none}::view-transition-new(header){animation:none}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0;transform:translateY(.5rem)}}@media (forced-colors:active){:focus-visible{outline-offset:2px;outline:2px solid highlight!important}}main:has(>.page-404){flex-direction:column;display:flex}:root{--site-icon:2.5rem;--hubC-tab-max:11rem;--hubC-shot-ratio:16/9;--icon-rim:#131a1b1a}@supports (color:color-mix(in lab,red,red)){:root{--icon-rim:color-mix(in oklab,var(--color-text) 10%,transparent)}}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{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-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}