.klaro{--font-family: inherit;--title-font-family: inherit;--dark1: rgb(var(--color-background) / .9);--dark2: var(--wash-strong);--dark3: rgb(var(--color-ink-muted));--light1: rgb(var(--color-ink));--light2: var(--wash-strong);--light3: rgb(var(--color-ink-muted));--white2: var(--line-strong);--white3: rgb(var(--color-ink-strong));--green1: rgb(var(--color-primary));--green2: rgb(var(--color-primary-strong));--green3: rgb(var(--color-primary));--border-radius: var(--radius-control)}.klaro .cookie-notice:not(.cookie-modal-notice),.klaro .cookie-modal .cm-modal.cm-klaro{background-color:rgb(var(--color-background) / .9)!important;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border)!important;border-radius:var(--radius-card)!important;box-shadow:var(--shadow-panel)!important;color:rgb(var(--color-ink))}.klaro .cookie-modal .cm-modal.cm-klaro{border-radius:var(--radius-panel)!important}@keyframes klaro-rise{0%{opacity:0;translate:0 12px}}@keyframes klaro-fade{0%{opacity:0}}@media (prefers-reduced-motion: no-preference){.klaro .cookie-notice:not(.cookie-modal-notice),.klaro .cookie-modal .cm-modal.cm-klaro{animation:klaro-rise .45s var(--ease-out) both}.klaro .cookie-modal .cm-bg{animation:klaro-fade .3s ease-out both}}.klaro .cookie-notice{top:auto!important;bottom:24px!important;left:50%!important;transform:translate(-50%)!important;width:90%!important;max-width:var(--container-max)!important;z-index:5000!important}.klaro .cookie-notice:focus-visible{outline:none}@media (max-width: 640px){.klaro .cookie-notice{bottom:16px!important;width:calc(100% - 32px)!important}.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-buttons{display:flex!important;flex-direction:column;gap:8px;width:100%!important}.klaro .cookie-notice:not(.cookie-modal-notice) .cn-body .cn-buttons button.cm-btn{width:100%!important;margin:0!important;white-space:nowrap}}.klaro .cookie-modal{z-index:9999!important;display:flex;align-items:center;justify-content:center;padding:24px}.klaro .cookie-modal .cm-bg{background:var(--scrim)!important;backdrop-filter:blur(var(--scrim-blur));-webkit-backdrop-filter:blur(var(--scrim-blur))}.klaro .cookie-modal .cm-modal.cm-klaro{position:relative!important;top:auto!important;transform:none!important;margin:0!important;width:100%!important;max-width:560px!important;max-height:100%!important;overflow-y:auto!important}@media (max-width: 640px){.klaro .cookie-modal{align-items:flex-end;padding:16px;padding-bottom:max(16px,env(safe-area-inset-bottom))}}.klaro .cookie-modal .cm-modal .cm-header{padding:28px 64px 20px 28px!important;border-bottom:1px solid var(--line-subtle)!important}.klaro .cookie-modal .cm-modal .cm-header h1{font-size:1.5rem!important;font-weight:700;line-height:1.25;letter-spacing:-.01em}.klaro .cookie-modal .cm-modal .cm-header p{color:rgb(var(--color-ink-muted));font-size:.95rem;line-height:1.6;margin-top:.5rem}.klaro .cookie-modal .cm-modal .cm-body{padding:24px 28px!important}.klaro .cookie-modal .cm-modal .cm-footer{padding:20px 28px 28px!important;border-top:1px solid var(--line-subtle)!important}.klaro .cookie-modal .cm-modal .cm-footer-buttons{justify-content:flex-end!important;flex-wrap:wrap!important;gap:12px}.klaro .cookie-modal .cm-modal .cm-footer-buttons .cm-btn{margin:0!important;flex:1 1 auto;white-space:nowrap}.klaro .cookie-modal .cm-modal .cm-footer-buttons .cm-btn:only-child{flex:0 0 auto}@media (max-width: 640px){.klaro .cookie-modal .cm-modal .cm-header,.klaro .cookie-modal .cm-modal .cm-body,.klaro .cookie-modal .cm-modal .cm-footer{padding-left:20px!important;padding-right:20px!important}.klaro .cookie-modal .cm-modal .cm-header{padding-right:56px!important}.klaro .cookie-modal .cm-modal .cm-header h1{font-size:1.25rem!important;hyphens:auto}.klaro .cookie-modal .cm-modal .cm-footer-buttons .cm-btn{white-space:normal}.klaro .cookie-modal .cm-modal .cm-footer-buttons{flex-direction:column!important}}.klaro .cm-powered-by{display:none!important}.klaro .cookie-modal .cm-modal .hide{top:18px!important;right:18px!important;width:36px;height:36px;display:grid;place-items:center;border-radius:9999px;transition:background-color var(--dur-fast) var(--ease-out)}.klaro .cookie-modal .cm-modal .hide:hover{background-color:var(--wash-strong)}.klaro .cookie-modal .cm-modal .hide svg{stroke:rgb(var(--color-ink-muted))!important;transition:stroke var(--dur-fast) var(--ease-out)}.klaro .cookie-modal .cm-modal .hide:hover svg{stroke:rgb(var(--color-primary))!important}.klaro .cookie-modal .cm-list-label .slider{box-shadow:inset 0 0 0 1px var(--line)!important}.klaro .cookie-modal .cm-list-input:focus-visible+.cm-list-label .slider{box-shadow:0 0 0 3px rgb(var(--color-primary) / .4)!important}.klaro .cm-btn{border-radius:var(--btn-radius)!important;font-weight:var(--btn-weight)!important;font-family:inherit!important;text-transform:none!important;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)!important;padding:var(--btn-pad-y) var(--btn-pad-x)!important;font-size:.95rem!important;letter-spacing:.01em!important}.klaro .cm-btn.cm-btn-success{background-color:rgb(var(--color-primary))!important;color:rgb(var(--color-background))!important;border:none!important}.klaro .cm-btn.cm-btn-success:hover{background-color:rgb(var(--color-primary-strong))!important}.klaro .cm-btn.cm-btn-danger,.klaro .cm-btn.cm-btn-info{background-color:var(--wash)!important;color:rgb(var(--color-ink-muted))!important;border:1px solid var(--line)!important}.klaro .cm-btn.cm-btn-danger:hover,.klaro .cm-btn.cm-btn-info:hover{background-color:var(--line)!important;color:rgb(var(--color-ink))!important;border-color:var(--line-strong)!important}.klaro .cookie-modal .cm-btn.cm-btn-accept{background-color:var(--wash)!important;color:rgb(var(--color-ink))!important;border:1px solid rgb(var(--color-primary))!important}.klaro .cookie-modal .cm-btn.cm-btn-accept:hover{background-color:var(--line)!important}.klaro .cookie-modal .cm-btn.cm-btn-accept:only-child{background-color:rgb(var(--color-primary))!important;color:rgb(var(--color-background))!important;border:none!important}.klaro .cookie-modal .cm-btn.cm-btn-accept:only-child:hover{background-color:rgb(var(--color-primary-strong))!important}.klaro .cookie-notice a,.klaro .cookie-modal a{color:rgb(var(--color-info))!important;text-decoration:none!important}.klaro .cookie-modal .cm-caret a{color:rgb(var(--color-ink-muted))!important;font-size:.875rem;transition:color var(--dur-fast) var(--ease-out)}.klaro .cookie-modal .cm-caret a:hover{color:rgb(var(--color-primary))!important}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:var(--font-sans);font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--font-mono);font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--color-background: 11 18 32;--color-surface: 17 24 39;--color-surface-raised: 20 30 48;--color-contrast: 255 255 255;--color-ink-strong: 255 255 255;--color-ink: 243 244 246;--color-ink-muted: 156 163 175;--color-ink-faint: 128 135 148;--color-primary: 245 158 11;--color-primary-strong: 217 119 6;--color-primary-glow: 253 224 71;--color-info: 56 189 248;--color-info-glow: 103 232 249;--color-warn: 251 191 36;--line-subtle: rgb(var(--color-contrast) / .06);--line: rgb(var(--color-contrast) / .1);--line-strong: rgb(var(--color-contrast) / .18);--wash-subtle: rgb(var(--color-contrast) / .03);--wash: rgb(var(--color-contrast) / .05);--wash-strong: rgb(var(--color-contrast) / .08);--grid-dot: rgb(var(--color-contrast) / .12);--glass-bg: rgb(var(--color-background) / .7);--glass-blur: 20px;--glass-border: var(--line);--font-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--space-gutter: 2rem;--space-section: clamp(5rem, 3.6rem + 4vw, 7rem);--space-head: clamp(2.5rem, 2rem + 1.5vw, 3.5rem);--space-card: clamp(1.5rem, 1.25rem + .5vw, 1.75rem);--space-grid: clamp(1.25rem, 1rem + .5vw, 1.5rem);--space-nav: 8rem;--container-max: 1200px;--measure: 42rem;--shadow-panel: 0 8px 32px rgb(0 0 0 / .5);--shadow-sheet: 0 -12px 32px rgb(0 0 0 / .45);--scrim: rgb(0 0 0 / .6);--scrim-blur: 4px;--dur-fast: .18s;--dur-base: .3s;--dur-slow: .6s;--dur-enter: .42s;--dur-exit: .26s;--dur-tape: 23s;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--lift: -4px;--press: .97;--btn-pad-y: .75rem;--btn-pad-x: 1.75rem;--btn-sm-pad-y: .5rem;--btn-sm-pad-x: 1.125rem;--btn-lg-pad-y: 1rem;--btn-lg-pad-x: 2.25rem;--btn-radius: 9999px;--btn-weight: 500;--tone: var(--color-primary);--focus-width: 2px;--focus-offset: 3px;--focus-color: 56 189 248;--text-display: clamp(3rem, 2.38rem + 2.65vw, 4.5rem);--leading-display: 1.08;--tracking-display: -.025em;--weight-display: 700;--text-h1: clamp(3rem, 2.69rem + 1.33vw, 3.75rem);--leading-h1: 1.1;--tracking-h1: -.025em;--weight-h1: 700;--text-h2: clamp(1.875rem, 1.41rem + 1.99vw, 3rem);--leading-h2: 1.15;--tracking-h2: -.02em;--weight-h2: 700;--text-h3: clamp(1.25rem, 1.15rem + .44vw, 1.5rem);--leading-h3: 1.3;--tracking-h3: -.01em;--weight-h3: 700;--text-lead: clamp(1.25rem, 1.15rem + .44vw, 1.5rem);--leading-lead: 1.55;--tracking-lead: 0;--weight-lead: 400;--text-stat: clamp(1.75rem, 1.5rem + .6vw, 2rem);--leading-stat: 1.1;--tracking-stat: -.01em;--weight-stat: 700;--text-eyebrow: .75rem;--leading-eyebrow: 1.4;--tracking-eyebrow: .2em;--weight-eyebrow: 500;--radius-chip: .375rem;--radius-control: .75rem;--radius-card: 1rem;--radius-panel: 1.5rem;--radius-pill: 9999px;--seg-foundation: #EB635E;--seg-sources: #08A2AF;--seg-pages: #BB8D07;--seg-dataLayer: #5B89F6;--seg-extras: #42AF4D;--seg-uplift: #C165C7}@media (min-width: 640px){:root{--space-gutter: 3rem}}@media (min-width: 1024px){:root{--space-gutter: 4rem}}html{scroll-behavior:smooth;background-color:rgb(var(--color-background));color:rgb(var(--color-ink))}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-moz-selection{background-color:rgb(var(--color-primary) / .35);color:rgb(var(--color-ink-strong))}::selection{background-color:rgb(var(--color-primary) / .35);color:rgb(var(--color-ink-strong))}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:var(--focus-width) solid rgb(var(--focus-color));outline-offset:var(--focus-offset)}.page-container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-gutter)}.\!section{padding-block:var(--space-section)!important}.section{padding-block:var(--space-section)}.section-screen{min-height:100svh;display:flex;align-items:center}.section-intro{min-height:calc(100svh - var(--space-nav));display:flex;flex-direction:column}.section-intro>.scroll-cue{position:sticky;bottom:0;margin-top:auto;margin-inline:calc(var(--space-gutter) * -1);padding:2.5rem var(--space-gutter) 1.25rem;background:linear-gradient(to top,rgb(var(--color-background)) calc(100% - 2.5rem),rgb(var(--color-background) / 0))}@media (min-width: 768px){.section-intro>.scroll-cue{padding-bottom:2.5rem}}.tone-info{--tone: var(--color-info)}.tone-primary{--tone: var(--color-primary)}.tone-neutral{--tone: var(--color-ink-faint)}.glass{background-color:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border)}.card{position:relative;background-color:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-card);padding:var(--space-card)}.card-hover{transition:background-color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),translate var(--dur-base) var(--ease-out)}@media (hover: hover) and (pointer: fine){.card-hover:hover{background-color:var(--wash);border-color:var(--line-strong)}}@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference){.card-hover:hover{translate:0 var(--lift)}}.\!panel{background-color:var(--glass-bg)!important;backdrop-filter:blur(var(--glass-blur))!important;-webkit-backdrop-filter:blur(var(--glass-blur))!important;border:1px solid var(--glass-border)!important;border-radius:var(--radius-panel)!important}.panel{background-color:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-panel)}.eyebrow{display:flex;align-items:center;gap:.75rem;font-family:var(--font-mono);font-size:var(--text-eyebrow);line-height:var(--leading-eyebrow);letter-spacing:var(--tracking-eyebrow);font-weight:var(--weight-eyebrow);text-transform:uppercase;color:rgb(var(--color-ink-faint))}.eyebrow-num{color:rgb(var(--tone) / .9)}.eyebrow-rule{flex:none;width:1.5rem;height:1px;background:var(--line-strong)}.eyebrow-tone{color:rgb(var(--tone) / .85)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:var(--btn-pad-y) var(--btn-pad-x);border-radius:var(--btn-radius);border:1px solid var(--line);background-color:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));color:rgb(var(--color-ink-strong));font-size:1rem;font-weight:var(--btn-weight);line-height:1.5;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),scale var(--dur-fast) var(--ease-out)}.btn:hover{background-color:var(--wash-strong);border-color:var(--line-strong)}.btn:active{scale:var(--press)}.btn-primary,.btn-primary:hover{border-color:rgb(var(--color-primary))}.btn-primary:hover{background-color:rgb(var(--color-primary) / .12)}.btn-sm{--btn-pad-y: var(--btn-sm-pad-y);--btn-pad-x: var(--btn-sm-pad-x);font-size:.875rem}.btn-lg{--btn-pad-y: var(--btn-lg-pad-y);--btn-pad-x: var(--btn-lg-pad-x);font-weight:600}.btn svg{flex:none}.arrow-link{display:inline-flex;align-items:center;gap:.5rem;font-weight:500;color:rgb(var(--color-ink-muted));transition:color var(--dur-fast) var(--ease-out)}.arrow-link:hover{color:rgb(var(--tone))}.arrow-link svg,.arrow-link .arrow{flex:none;transition:translate var(--dur-base) var(--ease-out)}.arrow-link:hover svg,.arrow-link:hover .arrow{translate:3px 0}.text-link{color:rgb(var(--color-ink));text-decoration:underline;text-decoration-color:rgb(var(--color-primary) / .45);text-decoration-thickness:1px;text-underline-offset:.3em;transition:color var(--dur-fast) var(--ease-out),text-decoration-color var(--dur-fast) var(--ease-out)}.text-link:hover{color:rgb(var(--color-primary));text-decoration-color:rgb(var(--color-primary))}.card-hover:hover .chip,.card-hover:focus-within .chip{color:rgb(var(--color-ink));border-color:rgb(var(--tone) / .3)}.icon-tile{display:flex;flex:none;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:var(--radius-control);border:1px solid rgb(var(--tone) / .2);background-color:rgb(var(--tone) / .1);color:rgb(var(--tone));transition:background-color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out)}.card-hover:hover .icon-tile,.card-hover:focus-within .icon-tile{background-color:rgb(var(--tone) / .18);border-color:rgb(var(--tone) / .45)}.icon-btn{display:flex;flex:none;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:9999px;border:1px solid var(--line);background-color:var(--wash);color:rgb(var(--color-ink-muted));transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.icon-btn:hover{background-color:var(--wash-strong);border-color:var(--line-strong);color:rgb(var(--color-ink-strong))}.scroll-cue{display:flex;justify-content:center;pointer-events:none;transition:opacity var(--dur-slow) var(--ease-out)}.scroll-cue.is-done{opacity:0}.scroll-cue-link{display:flex;flex-direction:column;align-items:center;gap:.875rem;min-width:2.75rem;pointer-events:auto;-webkit-tap-highlight-color:transparent}.scroll-cue.is-done .scroll-cue-link{pointer-events:none}.scroll-cue-line{position:relative;display:block;width:1px;height:2.5rem;overflow:hidden;background:var(--line-strong);transition:background-color var(--dur-base) var(--ease-out)}.scroll-cue-link:hover .scroll-cue-line{background:rgb(var(--color-ink-faint))}.scroll-cue-line:after{content:"";position:absolute;top:0;left:0;width:100%;height:1.25rem;background:linear-gradient(to bottom,transparent,rgb(var(--color-primary)));animation:scroll-cue 2.2s var(--ease-in-out) infinite}@media (min-width: 768px){.scroll-cue-line{height:3.5rem}}@keyframes scroll-cue{0%{transform:translateY(-100%)}to{transform:translateY(300%)}}@media (prefers-reduced-motion: reduce){.btn,.card-hover,.arrow-link svg,.arrow-link .arrow{transition:none}.scroll-cue{transition:none}.scroll-cue-line:after{animation:none}}.mobile-menu{position:fixed;inset:4.5rem 0 0;z-index:40;padding:1rem;pointer-events:none}.mobile-menu:before{content:"";position:absolute;inset:-4.5rem 0 0;background:var(--scrim);opacity:0;transition:opacity var(--dur-exit) var(--ease-in) 60ms}.mobile-panel{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;height:100%;overflow-y:auto;border:1px solid var(--glass-border);border-radius:var(--radius-panel);background-color:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));clip-path:inset(0 0 100% 0 round var(--radius-panel));visibility:hidden;transition:clip-path var(--dur-exit) var(--ease-in) 60ms,visibility 0s linear calc(var(--dur-exit) + 60ms)}.mobile-item{opacity:0;translate:0 -.5rem;transition:opacity var(--dur-fast) var(--ease-in),translate var(--dur-fast) var(--ease-in),color var(--dur-fast) var(--ease-out)}[data-open] .mobile-menu{pointer-events:auto}[data-open] .mobile-menu:before{opacity:1;transition:opacity var(--dur-enter) var(--ease-out)}[data-open] .mobile-panel{clip-path:inset(0 0 0 0 round var(--radius-panel));visibility:visible;transition:clip-path var(--dur-enter) var(--ease-out),visibility 0s}[data-open] .mobile-item{--delay: calc(80ms + var(--i, 0) * 30ms);opacity:1;translate:0 0;transition:opacity var(--dur-enter) var(--ease-out) var(--delay),translate var(--dur-enter) var(--ease-out) var(--delay),color var(--dur-fast) var(--ease-out)}.nav-icon{display:flex;flex-direction:column;justify-content:space-between;width:18px;height:14px;color:rgb(var(--color-ink-strong));transition:color var(--dur-base) var(--ease-out)}.nav-line{display:block;width:100%;height:2px;border-radius:9999px;background-color:currentColor;transition:rotate var(--dur-fast) var(--ease-in-out),translate var(--dur-fast) var(--ease-in-out) var(--dur-fast),opacity 0s linear var(--dur-fast)}[data-open] .nav-icon{color:rgb(var(--color-primary))}[data-open] .nav-line{transition:translate var(--dur-fast) var(--ease-in-out),rotate var(--dur-fast) var(--ease-in-out) var(--dur-fast),opacity 0s linear var(--dur-fast)}[data-open] .nav-line-1{translate:0 6px;rotate:45deg}[data-open] .nav-line-2{opacity:0}[data-open] .nav-line-3{translate:0 -6px;rotate:-45deg}@media (prefers-reduced-motion: reduce){.mobile-menu:before,.mobile-panel,.mobile-item,.nav-icon,.nav-line{transition:none!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-x-0{left:0;right:0}.bottom-5{bottom:1.25rem}.left-0{left:0}.left-1\/2{left:50%}.right-0{right:0}.right-3{right:.75rem}.top-0{top:0}.top-1\/2{top:50%}.top-3{top:.75rem}.isolate{isolation:isolate}.-z-10{z-index:-10}.-z-20{z-index:-20}.-z-40{z-index:-40}.z-10{z-index:10}.z-50{z-index:50}.order-1{order:1}.order-2{order:2}.order-3{order:3}.m-auto{margin:auto}.-mx-4{margin-left:-1rem;margin-right:-1rem}.mx-3{margin-left:.75rem;margin-right:.75rem}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:.5rem;margin-bottom:.5rem}.-mt-\[4vh\]{margin-top:-4vh}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-head{margin-bottom:var(--space-head)}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline{display:inline}.flex{display:flex}.grid{display:grid}.hidden{display:none}.aspect-\[16\/9\]{aspect-ratio:16/9}.h-3{height:.75rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-\[18px\]{height:18px}.h-\[600px\]{height:600px}.h-auto{height:auto}.h-full{height:100%}.max-h-\[calc\(100dvh-2rem\)\]{max-height:calc(100dvh - 2rem)}.min-h-\[100svh\]{min-height:100svh}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-\[18px\]{width:18px}.w-\[600px\]{width:600px}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-\[820px\]{max-width:820px}.max-w-\[90vw\]{max-width:90vw}.max-w-lg{max-width:32rem}.max-w-measure{max-width:var(--measure)}.max-w-page{max-width:var(--container-max)}.max-w-prose{max-width:65ch}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.scroll-mt-nav{scroll-margin-top:var(--space-nav)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-grid{gap:var(--space-grid)}.gap-x-14{-moz-column-gap:3.5rem;column-gap:3.5rem}.gap-x-16{-moz-column-gap:4rem;column-gap:4rem}.gap-y-10{row-gap:2.5rem}.gap-y-8{row-gap:2rem}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-y-auto{overflow-y:auto}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hyphens-auto{hyphens:auto}.whitespace-nowrap{white-space:nowrap}.text-wrap{text-wrap:wrap}.rounded-card{border-radius:var(--radius-card)}.rounded-full{border-radius:9999px}.rounded-pill{border-radius:var(--radius-pill)}.border{border-width:1px}.border-t{border-top-width:1px}.border-line{border-color:var(--line)}.border-line-subtle{border-color:var(--line-subtle)}.bg-background{--tw-bg-opacity: 1;background-color:rgb(var(--color-background) / var(--tw-bg-opacity, 1))}.bg-background\/20{background-color:rgb(var(--color-background) / .2)}.bg-line{background-color:var(--line)}.bg-primary\/20{background-color:rgb(var(--color-primary) / .2)}.bg-surface{--tw-bg-opacity: 1;background-color:rgb(var(--color-surface) / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-wash-subtle{background-color:var(--wash-subtle)}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-primary{--tw-gradient-from: rgb(var(--color-primary) / 1) var(--tw-gradient-from-position);--tw-gradient-to: rgb(var(--color-primary) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-primary-glow{--tw-gradient-to: rgb(var(--color-primary-glow) / 1) var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.fill-current{fill:currentColor}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-6{padding:1.5rem}.p-card{padding:var(--space-card)}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.\!pt-0{padding-top:0!important}.pb-20{padding-bottom:5rem}.pb-section{padding-bottom:var(--space-section)}.pt-24{padding-top:6rem}.pt-8{padding-top:2rem}.pt-nav{padding-top:var(--space-nav)}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-display{font-size:var(--text-display);line-height:var(--leading-display);letter-spacing:var(--tracking-display);font-weight:700}.text-h1{font-size:var(--text-h1);line-height:var(--leading-h1);letter-spacing:var(--tracking-h1);font-weight:700}.text-h2{font-size:var(--text-h2);line-height:var(--leading-h2);letter-spacing:var(--tracking-h2);font-weight:700}.text-h3{font-size:var(--text-h3);line-height:var(--leading-h3);letter-spacing:var(--tracking-h3);font-weight:700}.text-lead{font-size:var(--text-lead);line-height:var(--leading-lead);letter-spacing:var(--tracking-lead);font-weight:400}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.text-ink{--tw-text-opacity: 1;color:rgb(var(--color-ink) / var(--tw-text-opacity, 1))}.text-ink-faint{--tw-text-opacity: 1;color:rgb(var(--color-ink-faint) / var(--tw-text-opacity, 1))}.text-ink-muted{--tw-text-opacity: 1;color:rgb(var(--color-ink-muted) / var(--tw-text-opacity, 1))}.text-ink-strong{--tw-text-opacity: 1;color:rgb(var(--color-ink-strong) / var(--tw-text-opacity, 1))}.text-primary{--tw-text-opacity: 1;color:rgb(var(--color-primary) / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-40{opacity:.4}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.mix-blend-overlay{mix-blend-mode:overlay}.shadow-panel{--tw-shadow: var(--shadow-panel);--tw-shadow-colored: var(--shadow-panel);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-\[120px\]{--tw-blur: blur(120px);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)}.drop-shadow-md{--tw-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / .07)) drop-shadow(0 2px 2px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{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,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:var(--ease-out);transition-duration:var(--dur-base)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:var(--ease-out);transition-duration:var(--dur-base)}.transition-opacity{transition-property:opacity;transition-timing-function:var(--ease-out);transition-duration:var(--dur-base)}.duration-slow{transition-duration:var(--dur-slow)}.custom-bullets ul,.custom-bullets li,.prose ul,.prose ul>li{list-style-type:none!important;list-style:none!important;padding-left:0!important;margin:0!important}.custom-bullets ul,.prose ul,.custom-bullets li,.prose ul>li{position:relative}.custom-bullets li,.prose ul>li{position:relative;padding-left:1.5rem!important;margin-bottom:.5rem;display:block}.custom-bullets li:before,.prose ul>li:before{content:"";position:absolute;left:0;top:.65em;width:6px;height:6px;border-radius:50%;background-color:rgb(var(--color-ink-muted));display:block}.custom-bullets li::marker,.prose ul>li::marker,.custom-bullets ul ::marker,.prose ul ::marker{content:none!important;display:none!important;color:transparent!important}html.motion-intro [data-intro]{visibility:hidden}.split-line-mask{padding-bottom:.14em;margin-bottom:-.14em}.spotlight-card{position:relative;isolation:isolate}.spotlight-card:before,.spotlight-card:after{content:"";position:absolute;pointer-events:none;border-radius:inherit;opacity:0;transition:opacity .4s ease}.spotlight-card:before{inset:0;z-index:-1;background:radial-gradient(520px circle at var(--mx, 50%) var(--my, 50%),rgb(var(--color-info) / .07),transparent 45%)}.spotlight-card:after{inset:-1px;padding:1px;background:radial-gradient(360px circle at var(--mx, 50%) var(--my, 50%),rgb(var(--color-primary) / .6),transparent 45%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}@media (hover: hover) and (pointer: fine){.spotlight-card:hover:before,.spotlight-card:hover:after{opacity:1}}body{isolation:isolate}body:before{content:"";position:fixed;top:0;left:0;right:0;height:100vh;height:100lvh;z-index:-1;pointer-events:none;background-image:radial-gradient(var(--grid-dot) 1px,transparent 1px);background-size:28px 28px;-webkit-mask-image:radial-gradient(ellipse 110% 100% at 50% 0%,#000 30%,transparent 100%);mask-image:radial-gradient(ellipse 110% 100% at 50% 0%,#000 30%,transparent 100%)}.sheet-fade{-webkit-mask-image:linear-gradient(to bottom,transparent,#000 30%,#000 70%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 30%,#000 70%,transparent)}.work-list{counter-reset:work}.work-list>li{counter-increment:work}.work-num:before{content:counter(work,decimal-leading-zero)}.link-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1rem 1.125rem;border-radius:var(--radius-card);transition:translate var(--dur-base) var(--ease-out),scale var(--dur-fast) var(--ease-out),border-color var(--dur-base) var(--ease-out),background-color var(--dur-base) var(--ease-out);-webkit-tap-highlight-color:transparent}.link-card:active{scale:var(--press)}.link-card.is-primary{border-color:rgb(var(--color-primary) / .45)}.link-icon{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:var(--radius-control);background:var(--wash);border:1px solid var(--line);color:rgb(var(--color-ink-muted));transition:background-color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.link-icon svg{width:1.375rem;height:1.375rem}.link-title{display:block;font-size:1.0625rem;font-weight:700;color:rgb(var(--color-ink-strong))}.link-sub{display:block;margin-top:.125rem;font-size:.8125rem;color:rgb(var(--color-ink-muted))}.link-arrow{color:rgb(var(--color-ink-faint));transition:color var(--dur-base) var(--ease-out),translate var(--dur-base) var(--ease-out)}.is-primary .link-arrow{color:rgb(var(--color-primary))}@media (min-width: 640px){.link-card{grid-template-columns:1fr auto;grid-template-rows:auto 1fr;align-items:start;gap:2.5rem 1rem;padding:1.75rem;min-height:13rem;border-radius:var(--radius-panel)}.link-card .link-text{grid-column:1 / -1;grid-row:2;align-self:end}.link-card .link-arrow{grid-column:2;grid-row:1}.link-icon{width:3.25rem;height:3.25rem;font-size:1.0625rem}.link-icon svg{width:1.625rem;height:1.625rem}.link-title{font-size:1.375rem}.link-sub{font-size:.9375rem;margin-top:.25rem}}@media (hover: hover) and (pointer: fine){.link-card:hover{translate:0 var(--lift);border-color:rgb(var(--color-primary) / .45);background-color:var(--wash)}.link-card:hover .link-icon{background:rgb(var(--color-primary) / .12);border-color:rgb(var(--color-primary) / .4);color:rgb(var(--color-primary))}.link-card:hover .link-arrow{color:rgb(var(--color-primary));translate:var(--nx, 4px) var(--ny, 0)}}@media (prefers-reduced-motion: reduce){.link-card,.link-arrow{transition:none}}@property --orbit-angle{syntax: "<angle>"; initial-value: 0deg; inherits: false;}.orbit-ring{position:relative;isolation:isolate}.orbit-ring:before{content:"";position:absolute;inset:-1.5px;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--orbit-angle),transparent 0deg 232deg,rgb(var(--color-primary) / .85) 288deg,rgb(var(--color-primary-glow) / .95) 310deg,rgb(var(--color-primary) / .85) 332deg,transparent 356deg 360deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:orbit-ring 4.5s linear infinite;pointer-events:none}@keyframes orbit-ring{to{--orbit-angle: 360deg}}@media (prefers-reduced-motion: reduce){.orbit-ring:before{animation:none;opacity:.6}}.project-body{font-size:1.125rem;line-height:1.8;color:rgb(var(--color-ink-muted))}.project-body>*+*{margin-top:1.25em}.project-body h2,.project-body h3{color:rgb(var(--color-ink-strong));font-weight:700}.project-body h2{margin-top:2.25em;font-size:var(--text-h3);line-height:var(--leading-h3);letter-spacing:var(--tracking-h3)}.project-body h3{margin-top:1.75em;font-size:1.125rem}.project-body h2+*,.project-body h3+*{margin-top:.75em}.project-body strong{color:rgb(var(--color-ink));font-weight:600}.project-body a{color:rgb(var(--color-ink));text-decoration:underline;text-decoration-color:rgb(var(--tone) / .45);text-decoration-thickness:1px;text-underline-offset:.3em;transition:color var(--dur-fast) var(--ease-out),text-decoration-color var(--dur-fast) var(--ease-out)}.project-body a:hover{color:rgb(var(--tone));text-decoration-color:rgb(var(--tone))}.project-body ul,.project-body ol{padding-left:1.25rem}.project-body ul{list-style:disc}.project-body ol{list-style:decimal}.project-body li+li{margin-top:.5em}.project-body li::marker{color:rgb(var(--color-ink-faint))}.project-body blockquote{padding-left:1.25rem;border-left:2px solid rgb(var(--tone) / .6);color:rgb(var(--color-ink))}.project-body hr{margin-block:2.5em;border-color:var(--line-subtle)}.project-body code{font-family:var(--font-mono);font-size:.875em;padding:.1em .35em;border:1px solid var(--line);border-radius:var(--radius-chip);background:var(--wash);color:rgb(var(--color-ink))}.project-body pre{overflow-x:auto;padding:1.25rem;border:1px solid var(--line);border-radius:var(--radius-card);background:rgb(var(--color-surface));font-size:.875rem;line-height:1.7}.project-body pre code{padding:0;border:0;background:none;font-size:inherit}.project-body img,.project-body video,.project-body iframe{display:block;width:100%;border-radius:var(--radius-control)}.project-body img,.project-body video{height:auto}.project-body iframe{aspect-ratio:16 / 9;height:auto;border:0}.hover\:text-primary:hover{--tw-text-opacity: 1;color:rgb(var(--color-primary) / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.group:hover .group-hover\:text-info{--tw-text-opacity: 1;color:rgb(var(--color-info) / var(--tw-text-opacity, 1))}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width: 640px){.sm\:right-4{right:1rem}.sm\:top-4{top:1rem}.sm\:mx-0{margin-left:0;margin-right:0}.sm\:mb-4{margin-bottom:1rem}.sm\:mb-8{margin-bottom:2rem}.sm\:mt-8{margin-top:2rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:gap-3{gap:.75rem}.sm\:gap-5{gap:1.25rem}.sm\:p-10{padding:2.5rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width: 768px){.md\:bottom-10{bottom:2.5rem}.md\:mb-10{margin-bottom:2.5rem}.md\:mb-16{margin-bottom:4rem}.md\:mb-8{margin-bottom:2rem}.md\:mt-0{margin-top:0}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:hidden{display:none}.md\:max-w-lg{max-width:32rem}.md\:flex-1{flex:1 1 0%}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-end{align-items:flex-end}.md\:justify-start{justify-content:flex-start}.md\:justify-between{justify-content:space-between}.md\:gap-12{gap:3rem}.md\:gap-6{gap:1.5rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:py-0{padding-top:0;padding-bottom:0}.md\:py-3{padding-top:.75rem;padding-bottom:.75rem}.md\:text-right{text-align:right}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:leading-relaxed{line-height:1.625}.md\:backdrop-blur-\[5px\]{--tw-backdrop-blur: blur(5px);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)}}@media (min-width: 1024px){.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-4{grid-column:span 4 / span 4}.lg\:col-span-6{grid-column:span 6 / span 6}.lg\:col-span-8{grid-column:span 8 / span 8}.lg\:mx-5{margin-left:1.25rem;margin-right:1.25rem}.lg\:w-1\/2{width:50%}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:justify-center{justify-content:center}.lg\:p-10{padding:2.5rem}}dialog[data-astro-cid-v3psmlpu][open]{animation:fade-in var(--dur-base) var(--ease-out) forwards}@media (prefers-reduced-motion: reduce){dialog[data-astro-cid-v3psmlpu][open]{animation:none}}dialog[data-astro-cid-v3psmlpu]:focus{outline:none}dialog[data-astro-cid-v3psmlpu]::backdrop{background:var(--scrim);backdrop-filter:blur(var(--scrim-blur));-webkit-backdrop-filter:blur(var(--scrim-blur))}@keyframes fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.follow-row[data-astro-cid-v3psmlpu]{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.75rem .875rem;border:1px solid var(--line);border-radius:var(--radius-card);background-color:var(--wash-subtle);text-align:left;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),scale var(--dur-fast) var(--ease-out)}@media (min-width: 640px){.follow-row[data-astro-cid-v3psmlpu]{gap:1rem;padding:.875rem 1rem}}.follow-row[data-astro-cid-v3psmlpu]:active{scale:var(--press)}.follow-icon[data-astro-cid-v3psmlpu]{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-control);border:1px solid var(--line);background:var(--wash);color:rgb(var(--color-ink-muted));transition:background-color var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}.follow-arrow[data-astro-cid-v3psmlpu]{color:rgb(var(--color-ink-faint));transition:color var(--dur-base) var(--ease-out),translate var(--dur-base) var(--ease-out)}@media (hover: hover) and (pointer: fine){.follow-row[data-astro-cid-v3psmlpu]:hover{border-color:rgb(var(--color-primary) / .45);background-color:var(--wash)}.follow-row[data-astro-cid-v3psmlpu]:hover .follow-icon[data-astro-cid-v3psmlpu]{background:rgb(var(--color-primary) / .12);border-color:rgb(var(--color-primary) / .4);color:rgb(var(--color-primary))}.follow-row[data-astro-cid-v3psmlpu]:hover .follow-arrow[data-astro-cid-v3psmlpu]{color:rgb(var(--color-primary));translate:3px -3px}}@media (prefers-reduced-motion: reduce){.follow-row[data-astro-cid-v3psmlpu],.follow-arrow[data-astro-cid-v3psmlpu]{transition:none}}
