.hero-section[data-v-e1895263]{--ease-out-expo:cubic-bezier(.16,1,.3,1);--hero-bg:oklch(.165 .012 160);--hero-ink:oklch(.97 .006 160);--hero-muted:oklch(.97 .006 160/.42);--hero-body:oklch(.9 .008 160/.78);--hero-accent:oklch(.8 .15 162);--hero-line:oklch(.97 .006 160/.045);--hero-line-lit:oklch(.9 .04 162/.14);--hero-glow:oklch(.8 .05 162/.045);--hero-aurora:oklch(.55 .07 162/.1);--hero-cta:oklch(.6 .13 162);--px:72%;--py:38%;align-items:center;background:var(--hero-bg);color:var(--hero-ink);display:flex;isolation:isolate;min-height:100vh;min-height:100dvh;overflow:hidden;position:relative;width:100%}:root:not(.dark) .hero-section[data-v-e1895263]{--hero-bg:oklch(.975 .006 150);--hero-ink:oklch(.2 .02 160);--hero-muted:oklch(.2 .02 160/.4);--hero-body:oklch(.36 .02 160);--hero-accent:oklch(.58 .15 160);--hero-line:oklch(.2 .02 160/.05);--hero-line-lit:oklch(.45 .06 160/.14);--hero-glow:oklch(.75 .06 162/.08);--hero-aurora:oklch(.85 .06 162/.22)}.hero-field[data-v-e1895263],.hero-grid[data-v-e1895263],.hero-spot[data-v-e1895263]{inset:0;pointer-events:none;position:absolute}.hero-field[data-v-e1895263]{z-index:-1}.hero-grid[data-v-e1895263]{background-image:linear-gradient(var(--hero-line) 1px,transparent 1px),linear-gradient(90deg,var(--hero-line) 1px,transparent 1px);background-position:-1px -1px;background-size:72px 72px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 22%,#000 70%,transparent);mask-image:linear-gradient(180deg,transparent,#000 22%,#000 70%,transparent)}.hero-grid-lit[data-v-e1895263]{background-image:linear-gradient(var(--hero-line-lit) 1px,transparent 1px),linear-gradient(90deg,var(--hero-line-lit) 1px,transparent 1px);-webkit-mask-image:radial-gradient(160px circle at var(--px) var(--py),#000 0,transparent 100%);mask-image:radial-gradient(160px circle at var(--px) var(--py),#000 0,transparent 100%)}.hero-spot[data-v-e1895263]{background:radial-gradient(240px circle at var(--px) var(--py),var(--hero-glow),transparent 70%)}.hero-aurora[data-v-e1895263]{background:radial-gradient(closest-side,var(--hero-aurora),transparent);border-radius:50%;position:absolute;will-change:transform}.hero-aurora-a[data-v-e1895263]{animation:hero-drift-a-e1895263 22s ease-in-out infinite alternate;height:62vw;right:-14vw;top:-22vw;width:62vw}.hero-aurora-b[data-v-e1895263]{animation:hero-drift-b-e1895263 28s ease-in-out infinite alternate;bottom:-26vw;height:44vw;left:18vw;opacity:.6;width:44vw}@keyframes hero-drift-a-e1895263{to{transform:translate3d(-8vw,6vw,0) scale(1.08)}}@keyframes hero-drift-b-e1895263{to{transform:translate3d(10vw,-4vw,0) scale(.92)}}.hero-content[data-v-e1895263]{margin-inline:auto;padding-block:clamp(5rem,12vh,8rem) clamp(3.5rem,8vh,6rem);width:min(100% - 4rem,80rem)}.hero-availability[data-v-e1895263]{align-items:center;background:color-mix(in oklch,var(--hero-accent) 8%,transparent);border:1px solid color-mix(in oklch,var(--hero-accent) 30%,transparent);border-radius:999px;color:var(--hero-accent);display:inline-flex;font-size:.72rem;font-weight:700;gap:.6rem;letter-spacing:.14em;margin:0 0 clamp(2rem,5vh,3.25rem);padding:.45rem .95rem .45rem .8rem;text-transform:uppercase}.hero-availability span[data-v-e1895263]{background:var(--hero-accent);border-radius:50%;height:.45rem;position:relative;width:.45rem}.hero-availability span[data-v-e1895263]:after{animation:hero-ping-e1895263 2.4s var(--ease-out-expo) infinite;background:var(--hero-accent);border-radius:inherit;content:"";inset:0;position:absolute}@keyframes hero-ping-e1895263{0%{opacity:.7;transform:scale(1)}70%,to{opacity:0;transform:scale(3.2)}}.hero-name[data-v-e1895263]{color:var(--hero-ink);font-size:clamp(.85rem,1vw,1rem);font-weight:700;letter-spacing:.32em;margin:0 0 1.25rem}.hero-name[data-v-e1895263],.hero-title[data-v-e1895263]{text-transform:uppercase}.hero-title[data-v-e1895263]{font-size:clamp(3.25rem,6.6vw,7.5rem);font-weight:850;letter-spacing:-.05em;line-height:.92;margin:0;max-width:16ch}.hero-title-line[data-v-e1895263],.hero-title-suffix[data-v-e1895263]{display:block}.hero-title-suffix[data-v-e1895263]{color:var(--hero-muted)}.hero-amp[data-v-e1895263]{color:var(--hero-accent)}.hero-bottom[data-v-e1895263]{align-items:end;display:grid;gap:2rem 4rem;grid-template-columns:minmax(0,1fr) auto;margin-top:clamp(2.5rem,6vh,4rem)}.hero-summary[data-v-e1895263]{color:var(--hero-body);font-size:clamp(.95rem,1.1vw,1.05rem);line-height:1.75;margin:0;max-width:54ch}.hero-actions[data-v-e1895263]{display:flex;flex-wrap:wrap;gap:.75rem}.hero-cta[data-v-e1895263]{align-items:center;border:1px solid color-mix(in oklch,var(--hero-ink) 28%,transparent);border-radius:999px;color:var(--hero-ink);display:inline-flex;font-weight:700;gap:.65rem;padding:.95rem 1.75rem;text-decoration:none;white-space:nowrap}.hero-cta[data-v-e1895263]:focus-visible,.hero-cta[data-v-e1895263]:hover{background:var(--hero-ink);border-color:var(--hero-ink);color:var(--hero-bg);outline:none}.hero-cta-primary[data-v-e1895263]{background:var(--hero-cta);border-color:var(--hero-cta);color:#fafdfb}.hero-cta-primary[data-v-e1895263]:focus-visible,.hero-cta-primary[data-v-e1895263]:hover{background:var(--hero-ink);border-color:var(--hero-ink);color:var(--hero-bg)}.hero-fade[data-v-e1895263]{animation:hero-fade-up-e1895263 .9s var(--ease-out-expo) forwards;opacity:0;transform:translateY(16px)}.hero-reveal[data-v-e1895263]{display:block;margin-bottom:-.06em;overflow:hidden;padding-bottom:.06em}.hero-reveal-inner[data-v-e1895263]{animation:hero-rise-e1895263 1.1s var(--ease-out-expo) forwards;transform:translateY(105%)}.hero-step-1[data-v-e1895263]{animation-delay:80ms}.hero-step-2[data-v-e1895263]{animation-delay:.16s}.hero-step-3[data-v-e1895263]{animation-delay:.25s}.hero-step-4[data-v-e1895263]{animation-delay:.34s}.hero-step-5[data-v-e1895263]{animation-delay:.56s}@keyframes hero-fade-up-e1895263{to{opacity:1;transform:translateY(0)}}@keyframes hero-rise-e1895263{to{transform:translateY(0)}}@media(min-width:768px)and (max-width:1023px){.hero-content[data-v-e1895263]{width:min(100% - 4rem,48rem)}.hero-title[data-v-e1895263]{font-size:clamp(3rem,8.5vw,5rem)}.hero-bottom[data-v-e1895263]{align-items:start;grid-template-columns:1fr}}@media(max-width:767px){.hero-section[data-v-e1895263]{align-items:center;min-height:calc(var(--hero-viewport-height, 100svh) - 4rem)}.hero-content[data-v-e1895263]{padding-block:clamp(1.5rem,5svh,3rem) clamp(1.5rem,5svh,3rem);text-align:left;width:min(100% - 2.5rem,34rem)}.hero-availability[data-v-e1895263]{background:#34d39914;border:1px solid rgba(52,211,153,.28);border-radius:999px;font-size:.68rem;gap:.55rem;letter-spacing:.12em;margin-bottom:clamp(.85rem,3.5svh,2rem);padding:.45rem .8rem}.hero-name[data-v-e1895263]{font-size:clamp(1rem,min(4.6vw,2.6svh),1.35rem);letter-spacing:.02em;margin-bottom:clamp(.5rem,1.6svh,.85rem)}.hero-title[data-v-e1895263]{font-size:clamp(2rem,min(11.2vw,6.4svh),3.5rem);letter-spacing:-.045em;line-height:.94;margin:0;max-width:none;text-wrap:wrap}.hero-title-line[data-v-e1895263]{white-space:normal}.hero-title-suffix[data-v-e1895263]{color:#f8fafc8c;margin-top:.08em}.hero-summary[data-v-e1895263]{color:#f1f5f9c2;font-size:clamp(.875rem,2.2svh,1.02rem);line-height:1.55;margin:clamp(.75rem,2.5svh,1.75rem) 0 clamp(1rem,3.5svh,2.5rem);max-width:none}.hero-actions[data-v-e1895263]{align-items:stretch;flex-direction:column;gap:clamp(.6rem,1.6svh,.75rem)}.hero-cta[data-v-e1895263]{font-size:.95rem;justify-content:center;min-height:clamp(2.9rem,7svh,3.25rem);padding:.7rem 1.25rem;width:100%}:root:not(.dark) .hero-availability[data-v-e1895263]{background:#10b9811a;border-color:#0596694d;color:#005330;color:oklch(.39 .1 157)}:root:not(.dark) .hero-availability span[data-v-e1895263]{background:#00b16c;background:oklch(.67 .17 157);box-shadow:0 0 .75rem #10b98173}:root:not(.dark) .hero-title-suffix[data-v-e1895263]{color:#25312a8c}:root:not(.dark) .hero-summary[data-v-e1895263]{color:#3c4841}:root:not(.dark) .hero-cta[data-v-e1895263]{border-color:#0f172a38;color:#131d18}:root:not(.dark) .hero-cta[data-v-e1895263]:focus-visible,:root:not(.dark) .hero-cta[data-v-e1895263]:hover{background:#131d18;border-color:#131d18;color:#f2f6f4}:root:not(.dark) .hero-cta-primary[data-v-e1895263]{background:var(--hero-cta);border-color:var(--hero-cta);color:#fafdfb}:root:not(.dark) .hero-cta-primary[data-v-e1895263]:focus-visible,:root:not(.dark) .hero-cta-primary[data-v-e1895263]:hover{background:#131d18;border-color:#131d18;color:#f2f6f4}.hero-grid-lit[data-v-e1895263],.hero-spot[data-v-e1895263]{display:none}.hero-grid[data-v-e1895263]{background-size:48px 48px}.hero-aurora-a[data-v-e1895263]{height:130vw;right:-60vw;top:-55vw;width:130vw}.hero-aurora-b[data-v-e1895263]{bottom:-60vw;height:110vw;left:-30vw;width:110vw}.hero-bottom[data-v-e1895263]{display:block;margin-top:0}.hero-name[data-v-e1895263]{color:var(--hero-ink);font-weight:850}}@media(max-width:767px)and (max-height:700px){.hero-title[data-v-e1895263]{line-height:.9}.hero-summary[data-v-e1895263]{line-height:1.45}}@media(prefers-reduced-motion:reduce){.hero-fade[data-v-e1895263],.hero-reveal-inner[data-v-e1895263]{animation:none;opacity:1;transform:none}.hero-aurora[data-v-e1895263],.hero-availability span[data-v-e1895263]:after{animation:none}}.stat-cell[data-v-f9143981]{--ease-out-quint:cubic-bezier(.22,1,.36,1);--mx:50%;--my:50%;isolation:isolate}.stat-glow[data-v-f9143981]{background:radial-gradient(220px circle at var(--mx) var(--my),rgba(16,185,129,.14),transparent 70%);inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .4s var(--ease-out-quint);z-index:-1}.stat-value[data-v-f9143981]{transition:transform .45s var(--ease-out-quint)}.stat-label[data-v-f9143981]{transition:color .3s var(--ease-out-quint)}@media(hover:hover)and (pointer:fine){.stat-cell:hover .stat-glow[data-v-f9143981]{opacity:1}.stat-cell:hover .stat-value[data-v-f9143981]{transform:translateY(-4px) scale(1.04)}.stat-cell:hover .stat-label[data-v-f9143981]{color:#34d399}}@media(prefers-reduced-motion:reduce){.stat-glow[data-v-f9143981],.stat-label[data-v-f9143981],.stat-value[data-v-f9143981]{transition:none}.stat-cell:hover .stat-value[data-v-f9143981]{transform:none}}@keyframes slash-breathe-42ee423d{0%,to{filter:drop-shadow(0 0 0 currentColor);opacity:1}50%{filter:drop-shadow(0 0 8px currentColor);opacity:.7}}.slash-rotate[data-v-42ee423d]{animation:slash-breathe-42ee423d 3s ease-in-out infinite;display:inline-block}.slash-delay[data-v-42ee423d]{animation-delay:.5s}@keyframes background-slide-824cd41a{0%{background-position:0 0}to{background-position:32px 32px}}.animate-background-slide[data-v-824cd41a]{animation:background-slide-824cd41a 4s linear infinite}.projects-scroll-section[data-v-a7f58236]{background:#f3f4f6;color:#0f172a;display:flex;flex-direction:column;height:100vh;height:100dvh;min-height:42rem;overflow:hidden;position:relative;width:100%}.projects-scroll-heading[data-v-a7f58236]{align-items:flex-end;display:flex;justify-content:space-between;padding:clamp(4.75rem,7vh,6rem) clamp(1.25rem,4vw,4.5rem) clamp(4.5rem,8vh,6rem);width:100%;z-index:2}.projects-scroll-category[data-v-a7f58236],.projects-scroll-counter[data-v-a7f58236]{color:#64748b;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.projects-scroll-title[data-v-a7f58236]{font-size:clamp(2.1rem,3.6vw,3.75rem);font-weight:800;letter-spacing:-.055em;line-height:.88;margin:0;text-transform:uppercase}.projects-scroll-nav[data-v-a7f58236]{align-items:center;display:flex;gap:.5rem}.projects-scroll-counter[data-v-a7f58236]{font-variant-numeric:tabular-nums;margin-right:.45rem;white-space:nowrap}.projects-scroll-arrow[data-v-a7f58236]{background:transparent;border:1px solid rgba(15,23,42,.18);border-radius:999px;color:inherit;display:grid;height:2.8rem;place-items:center;transition:color .18s ease,background-color .18s ease,opacity .18s ease;width:2.8rem}.projects-scroll-arrow[data-v-a7f58236]:not(:disabled):focus-visible,.projects-scroll-arrow[data-v-a7f58236]:not(:disabled):hover{background:#0f172a;color:#f8fafc;outline:none}.projects-scroll-arrow[data-v-a7f58236]:disabled{cursor:not-allowed;opacity:.28}.projects-scroll-viewport[data-v-a7f58236]{flex:1;min-height:0;overflow:hidden;width:100%}.projects-scroll-track[data-v-a7f58236]{align-items:flex-start;backface-visibility:hidden;display:flex;gap:clamp(1.5rem,3vw,3.5rem);height:100%;padding-inline:clamp(1.25rem,4vw,4.5rem);transform:translateZ(0);width:-moz-fit-content;width:fit-content;will-change:transform}.projects-scroll-panel[data-v-a7f58236]{flex:0 0 auto;width:max(36rem,min(78vw,calc(133.333dvh - 26.667rem)))}.projects-scroll-panel-inner[data-v-a7f58236]{padding-bottom:clamp(4rem,8vh,6rem);width:100%}.projects-scroll-meta[data-v-a7f58236]{align-items:flex-end;display:flex;gap:2rem;justify-content:space-between;margin-bottom:clamp(.85rem,2vh,1.5rem)}.projects-scroll-name[data-v-a7f58236]{font-size:clamp(1.45rem,2.1vw,2.25rem);font-weight:750;letter-spacing:-.04em;line-height:1;margin:0;text-transform:uppercase}.projects-modal-media[data-v-a7f58236],.projects-scroll-visual[data-v-a7f58236]{--showcase-bg:oklch(.19 .012 165);--showcase-shape:oklch(.29 .035 163/72%);--showcase-line:oklch(.62 .075 158/24%);--shape-width:52%;--shape-ratio:1.65/1;--shape-left:62%;--shape-top:-13%;--shape-radius:42% 58% 48% 52%;--shape-rotate:-8deg;--line-width:37%;--line-ratio:1.55/1;--line-right:72%;--line-bottom:-15%;--line-radius:44% 56% 52% 48%;--line-rotate:10deg}.projects-scroll-visual[data-v-a7f58236]{aspect-ratio:4/3;background-color:var(--showcase-bg);border:0;border-radius:1rem;box-shadow:0 1.75rem 5rem #0f172a1f;cursor:zoom-in;display:block;overflow:hidden;position:relative;width:100%}.projects-modal-media[data-v-a7f58236]:before,.projects-scroll-visual[data-v-a7f58236]:before{aspect-ratio:var(--shape-ratio);background-color:var(--showcase-shape);border-radius:var(--shape-radius);content:"";left:var(--shape-left);pointer-events:none;position:absolute;top:var(--shape-top);transform:rotate(var(--shape-rotate));width:var(--shape-width)}.projects-modal-media[data-v-a7f58236]:after,.projects-scroll-visual[data-v-a7f58236]:after{aspect-ratio:var(--line-ratio);border:1px solid var(--showcase-line);border-radius:var(--line-radius);bottom:var(--line-bottom);content:"";pointer-events:none;position:absolute;right:var(--line-right);transform:rotate(var(--line-rotate));width:var(--line-width)}.projects-scroll-visual[data-v-a7f58236]:focus-visible{outline:3px solid #10b981;outline-offset:4px}.projects-scroll-image[data-v-a7f58236]{display:block;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;position:relative;transition:transform .7s cubic-bezier(.16,1,.3,1);width:100%;z-index:1}.projects-scroll-visual:hover .projects-scroll-image[data-v-a7f58236]{transform:scale(1.012)}.projects-scroll-progress[data-v-a7f58236]{background:#0f172a24;bottom:.9rem;height:2px;left:clamp(1.25rem,4vw,4.5rem);overflow:hidden;position:absolute;right:clamp(1.25rem,4vw,4.5rem);z-index:2}.projects-scroll-progress span[data-v-a7f58236]{background:#10b981;display:block;height:100%;transform-origin:left center;transition:transform .22s ease-out;width:100%}.projects-modal[data-v-a7f58236]{background:#070a0cf5;display:grid;inset:0;padding:clamp(1rem,4vw,3rem);place-items:center;position:fixed;z-index:100}.projects-modal-close[data-v-a7f58236]{background:#f8fafc14;border:1px solid rgba(248,250,252,.2);border-radius:999px;color:#f8fafc;cursor:pointer;display:grid;height:3rem;place-items:center;position:absolute;right:1.5rem;top:1.5rem;transition:border-color .18s ease,background-color .18s ease,color .18s ease;width:3rem}.projects-modal-close[data-v-a7f58236]:focus-visible,.projects-modal-close[data-v-a7f58236]:hover{background:#f1f5f9;border-color:#f8fafc85;color:#0f172a;outline:none}.projects-modal-dialog[data-v-a7f58236]{display:flex;flex-direction:column;gap:.85rem;max-height:calc(100dvh - clamp(2rem,8vw,6rem));width:min(100%,90rem)}.projects-modal-media[data-v-a7f58236]{background-color:var(--showcase-bg);border-radius:.75rem;display:grid;flex:1;min-height:0;overflow:hidden;place-items:center;position:relative}.projects-modal-image[data-v-a7f58236]{max-height:calc(100dvh - 9rem);max-width:100%}.projects-modal-image[data-v-a7f58236],.projects-modal-video[data-v-a7f58236]{border-radius:.75rem;-o-object-fit:contain;object-fit:contain;position:relative;z-index:1}.projects-modal-video[data-v-a7f58236]{background:#070a0c;max-height:88vh;width:min(100%,90rem)}.projects-modal-footer[data-v-a7f58236]{align-items:center;display:flex;gap:1rem;justify-content:space-between;min-height:3.5rem;padding:.35rem .15rem 0}.projects-modal-project-name[data-v-a7f58236]{color:#cbd5e1;font-size:.75rem;font-weight:700;letter-spacing:.14em;margin:0;text-transform:uppercase}.projects-modal-identity[data-v-a7f58236]{align-items:center;display:flex;gap:.75rem}.projects-modal-status[data-v-a7f58236]{align-items:center;color:#fbbf24;display:inline-flex;font-size:.65rem;font-weight:750;gap:.4rem;letter-spacing:.08em;margin:0;text-transform:uppercase;white-space:nowrap}.projects-modal-status span[data-v-a7f58236]{background:currentColor;border-radius:999px;box-shadow:0 0 0 .2rem #fbbf241f;height:.4rem;width:.4rem}.projects-modal-utilities[data-v-a7f58236]{align-items:center;display:flex;gap:.75rem;justify-content:flex-end;min-width:0}.projects-modal-demo[data-v-a7f58236]{align-items:center;background:#f8fafc0d;border:1px solid rgba(248,250,252,.16);border-radius:.75rem;display:flex;gap:.65rem;padding:.45rem .55rem .45rem .75rem}.projects-modal-demo-label[data-v-a7f58236]{color:#34d399;font-size:.65rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.projects-modal-credentials[data-v-a7f58236]{display:flex;gap:.4rem;margin:0}.projects-modal-credentials>div[data-v-a7f58236]{border-left:1px solid rgba(248,250,252,.14);display:grid;gap:.1rem;padding:.15rem .5rem}.projects-modal-credentials dt[data-v-a7f58236]{color:#94a3b8;font-size:.55rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.projects-modal-credentials dd[data-v-a7f58236]{margin:0}.projects-modal-credentials code[data-v-a7f58236]{color:#f8fafc;font-family:inherit;font-size:.72rem;font-weight:650;-webkit-user-select:all;-moz-user-select:all;user-select:all}.projects-modal-actions[data-v-a7f58236]{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:flex-end}.projects-modal-link[data-v-a7f58236]{align-items:center;background:#f8fafc12;border:1px solid rgba(248,250,252,.24);border-radius:999px;color:#f8fafc;display:inline-flex;font-size:.72rem;font-weight:800;gap:.45rem;justify-content:center;letter-spacing:.12em;min-height:2.75rem;padding:.65rem 1rem;text-decoration:none;transition:border-color .18s ease,background-color .18s ease,color .18s ease,transform .18s cubic-bezier(.16,1,.3,1)}.projects-modal-link[data-v-a7f58236]:focus-visible,.projects-modal-link[data-v-a7f58236]:hover{background:#10b981;border-color:#10b981;color:#052e24;outline:none;transform:translateY(-2px)}.project-modal-enter-active[data-v-a7f58236],.project-modal-leave-active[data-v-a7f58236]{transition:opacity .22s ease}.project-modal-enter-from[data-v-a7f58236],.project-modal-leave-to[data-v-a7f58236]{opacity:0}.dark .projects-scroll-section[data-v-a7f58236]{background:#020202;color:#f1f5f9}.dark .projects-scroll-category[data-v-a7f58236],.dark .projects-scroll-counter[data-v-a7f58236],.dark .projects-scroll-store-link[data-v-a7f58236]{color:#94a3b8}.dark .projects-scroll-arrow[data-v-a7f58236]{border-color:#f1f5f938}.dark .projects-scroll-arrow[data-v-a7f58236]:not(:disabled):focus-visible,.dark .projects-scroll-arrow[data-v-a7f58236]:not(:disabled):hover{background:#f1f5f9;color:#0f172a}.dark .projects-scroll-progress[data-v-a7f58236]{background:#f1f5f92e}@media(max-width:1023px),(prefers-reduced-motion:reduce){.projects-scroll-section[data-v-a7f58236]{height:auto;min-height:0;overflow:visible;padding:5.5rem 0 4rem}.projects-scroll-heading[data-v-a7f58236]{padding:0 1rem 1.75rem}.projects-scroll-nav[data-v-a7f58236]{display:none}.projects-scroll-title[data-v-a7f58236]{font-size:clamp(2.25rem,10vw,3.5rem)}.projects-scroll-viewport[data-v-a7f58236]{overflow:visible}.projects-scroll-track[data-v-a7f58236]{display:grid;gap:2rem;height:auto;padding-inline:1rem;transform:none!important;will-change:auto}.projects-scroll-panel[data-v-a7f58236]{height:auto;margin-inline:auto;width:min(100%,42rem)}.projects-scroll-panel-inner[data-v-a7f58236]{height:auto;padding:0 0 1.25rem}.projects-scroll-progress[data-v-a7f58236]{display:none}}@media(max-width:639px){.projects-scroll-meta[data-v-a7f58236]{align-items:flex-start;flex-direction:column;gap:.75rem}.projects-scroll-panel[data-v-a7f58236]{width:100%}.projects-scroll-visual[data-v-a7f58236]{border-radius:.75rem}.projects-modal[data-v-a7f58236]{align-items:stretch;padding:4.75rem 1rem max(1rem,env(safe-area-inset-bottom))}.projects-modal-close[data-v-a7f58236]{right:1rem;top:1rem}.projects-modal-dialog[data-v-a7f58236]{height:calc(100dvh - 5.75rem - env(safe-area-inset-bottom));max-height:none;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;width:100%}.projects-modal-dialog[data-v-a7f58236]::-webkit-scrollbar{display:none}.projects-modal-media[data-v-a7f58236]{aspect-ratio:4/3;flex:0 0 auto;min-height:0}.projects-modal-image[data-v-a7f58236],.projects-modal-video[data-v-a7f58236]{height:100%;max-height:none;-o-object-fit:contain;object-fit:contain;width:100%}.projects-modal-footer[data-v-a7f58236]{align-items:flex-start;flex:0 0 auto;flex-direction:column;gap:.65rem;padding-bottom:.25rem}.projects-modal-identity[data-v-a7f58236]{align-items:flex-start;flex-direction:column;gap:.4rem}.projects-modal-actions[data-v-a7f58236]{justify-content:flex-start;width:100%}.projects-modal-link[data-v-a7f58236]{flex:1 1 auto}.projects-modal-utilities[data-v-a7f58236]{align-items:stretch;flex-direction:column;width:100%}.projects-modal-demo[data-v-a7f58236]{align-items:flex-start;flex-direction:column}.projects-modal-credentials[data-v-a7f58236]{flex-wrap:wrap;width:100%}.projects-modal-credentials>div[data-v-a7f58236]{flex:1 1 12rem;min-width:0}}@media(prefers-reduced-motion:reduce){.project-modal-enter-active[data-v-a7f58236],.project-modal-leave-active[data-v-a7f58236],.projects-scroll-image[data-v-a7f58236],.projects-scroll-progress span[data-v-a7f58236]{transition:none}}@keyframes background-slide-e0149ce0{0%{background-position:0 0}to{background-position:32px 32px}}.animate-background-slide[data-v-e0149ce0]{animation:background-slide-e0149ce0 4s linear infinite}
