.project-mesh[data-astro-cid-obkmgy53]{z-index:-1;pointer-events:none;width:100%;height:100%;opacity:var(--mesh-opacity,1);position:fixed;inset:0}:root body:has(.project-mesh){background:0 0}.project-mesh[data-astro-cid-obkmgy53]{--mesh-mask:linear-gradient(#000 calc(var(--mesh-fade-end,75svh) - var(--mesh-fade-length,270px)),transparent var(--mesh-fade-end,75svh));-webkit-mask-image:var(--mesh-mask);-webkit-mask-image:var(--mesh-mask);mask-image:var(--mesh-mask)}@media (forced-colors:active),(prefers-contrast:more){.project-mesh[data-astro-cid-obkmgy53]{display:none}}:root{--project-title-l:var(--tuned-title-l,.51);--project-title-c:var(--tuned-title-c,.19);--mesh-glass-l:.97;--mesh-ink-l:.36;--mesh-frame-scale:1}:root[data-theme=dark]{--project-title-l:.84;--project-title-c:.12;--mesh-glass-l:.3;--mesh-ink-l:.88;--mesh-frame-scale:.35}@media (prefers-color-scheme:dark){:root:not([data-theme]){--project-title-l:.84;--project-title-c:.12;--mesh-glass-l:.3;--mesh-ink-l:.88;--mesh-frame-scale:.35}}@supports (color:oklch(from red l c h)){:root:not([data-title-tone=red],[data-title-tone=ink]) body:has(.project-mesh) .case-study .project-opening h1{color:oklch(from var(--project-title-source) var(--project-title-l) min(c,var(--project-title-c)) h);text-shadow:none}}body:has(.project-mesh) .case-hero-frame:not([data-backdrop]){background:rgb(255 255 255/calc(var(--mesh-frame-fill,.19) * var(--mesh-frame-scale)));-webkit-backdrop-filter:blur(var(--mesh-frame-blur,24px)) saturate(1.6);backdrop-filter:blur(var(--mesh-frame-blur,24px)) saturate(1.6);position:relative}body:has(.project-mesh) .case-hero-frame:not([data-backdrop]):after{content:"";border-radius:inherit;pointer-events:none;box-shadow:inset 0 1px 0 rgb(255 255 255/calc((var(--mesh-frame-rim,.42) + .2) * var(--mesh-frame-scale))),inset 0 0 0 1px rgb(255 255 255/calc(var(--mesh-frame-rim,.42) * var(--mesh-frame-scale)));position:absolute;inset:0}@supports (color:oklch(from red l c h)){:root:has(.project-mesh){--mesh-nav-neutral:oklch(var(--theme-glass) var(--theme-neutral-chroma) var(--theme-neutral-hue) / var(--theme-glass-opacity));--mesh-nav-tinted:oklch(from var(--project-title-source) var(--mesh-glass-l) min(c,var(--mesh-nav-tint,.05)) h / max(var(--mesh-nav-fill,.24),.55 * (1 - var(--mesh-frame-scale)) + .2));--theme-floating:color-mix(in oklch,var(--mesh-nav-tinted) calc(var(--mesh-visible,1) * 100%),var(--mesh-nav-neutral));--mesh-nav-ink:color-mix(in oklch,oklch(from var(--project-title-source) var(--mesh-ink-l) min(c,.12) h) calc(var(--mesh-visible,1) * 100%),var(--ink))}:root:has(.project-mesh) :is(.site-header nav,.site-header .wordmark,.project-back,.theme-toggle){color:var(--mesh-nav-ink)}}:root:has(.project-mesh) .navigation-surface:before{opacity:calc(1 - var(--mesh-visible,1) * (1 - var(--mesh-nav-rim,.24)))}:root:has(.project-mesh) .navigation-surface:after{opacity:calc(1 - var(--mesh-visible,1) * .5)}@media (prefers-reduced-transparency:reduce){body:has(.project-mesh) .case-hero-frame:not([data-backdrop]){background:var(--soft);-webkit-backdrop-filter:none;backdrop-filter:none}}[data-title-tone=ink] body:has(.project-mesh) .case-study .project-opening h1{color:var(--ink);text-shadow:none}.mesh-tuner{z-index:4;color:#1d2026;width:min(280px,100vw - 32px);font:13px/1.3 Space Grotesk,system-ui,sans-serif;position:fixed;top:96px;right:16px}.mesh-tuner details{background:#fffffff0;border:1px solid #0000001a;border-radius:12px;box-shadow:0 8px 24px #0000001a}.mesh-tuner summary{cursor:pointer;justify-content:space-between;padding:10px 12px;font-weight:600;display:flex}.mesh-tuner summary span{color:#6b6f78;font-weight:400}.mesh-tuner-body{max-height:calc(100svh - 180px);padding:0 12px 12px;overflow:auto}.mesh-tuner fieldset{border:0;margin:0;padding:0}.mesh-tuner legend{margin-bottom:6px;font-weight:600}.mesh-tuner [data-colors]{gap:6px;display:flex}.mesh-tuner input[type=color]{cursor:pointer;background:0 0;border:1px solid #0000001f;border-radius:6px;width:44px;height:32px;padding:0}.mesh-tuner label{grid-template-columns:1fr auto;gap:2px 8px;margin-top:10px;display:grid}.mesh-tuner select{font:inherit;background:#fff;border:1px solid #00000026;border-radius:6px;grid-column:1/-1;padding:4px 6px}.mesh-tuner input[type=range]{grid-column:1/-1;width:100%}.mesh-tuner output{font-variant-numeric:tabular-nums;color:#6b6f78}.mesh-tuner-actions{gap:8px;margin-top:12px;display:flex}.mesh-tuner-actions button{font:inherit;cursor:pointer;background:#f4f5f7;border:1px solid #00000026;border-radius:8px;padding:6px 10px}.mesh-tuner [data-status]{color:#6b6f78;min-height:1em;margin:8px 0 0}
