.curved-project-card[data-v-98657268]{background:var(--bg-primary);border-radius:inherit;height:100%;overflow:hidden;position:relative;width:100%}img[data-v-98657268]{display:block;height:100%;-o-object-fit:cover;object-fit:cover;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%;-webkit-user-drag:none}.project-info[data-v-98657268]{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:color-mix(in srgb,var(--bg-primary) 88%,transparent);color:var(--text-primary);inset:auto 0 0;padding:1rem;pointer-events:none;position:absolute;transform:translateY(101%);transition:transform .24s ease}h3[data-v-98657268]{font-size:1.05rem;font-weight:600;line-height:1.25;margin:0}p[data-v-98657268]{font-size:.75rem;line-height:1.4;margin:.3rem 0 0}.curved-gallery__link:focus-visible .curved-project-card .project-info,.curved-gallery__position.is-hovered .curved-project-card .project-info{transform:translateY(0)}.curved-gallery--dragging .curved-project-card .project-info{transform:translateY(101%);transition:none}@media(hover:none){.project-info[data-v-98657268]{padding:.75rem;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.project-info[data-v-98657268]{transition:none}}.curved-gallery[data-v-d30cc414]{--gallery-intro-gap:72px;background:var(--bg-primary);color:var(--text-primary);padding:3.5rem 0 3rem;width:100%}.curved-gallery__heading[data-v-d30cc414]{padding:1.75rem 1.5rem 0;position:relative;text-align:center;top:1.5rem;z-index:2}.curved-gallery__heading h2[data-v-d30cc414]{font-size:clamp(2.5rem,3.2vw,2.75rem);font-weight:500;letter-spacing:-.045em;line-height:1.15;margin:0}.curved-gallery__description[data-v-d30cc414]{color:var(--text-secondary);font-size:clamp(1rem,1.25vw,1.125rem);line-height:1.55;margin:1rem auto 0;max-width:420px}.curved-gallery__description[data-v-d30cc414],.curved-gallery__heading h2[data-v-d30cc414]{transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1);transition-delay:.2s}.curved-gallery__description[data-v-d30cc414]{transition-delay:.38s}.curved-gallery__heading.is-pending .curved-gallery__description[data-v-d30cc414],.curved-gallery__heading.is-pending h2[data-v-d30cc414]{opacity:0;transform:translateY(24px);transition:none}@media(max-width:768px){.curved-gallery__heading h2[data-v-d30cc414]{font-size:clamp(1.875rem,5vw,2.25rem)}}.curved-gallery__viewport[data-v-d30cc414]{cursor:grab;margin-top:calc(var(--gallery-intro-gap) - var(--gallery-top-inset));overflow:clip;perspective-origin:50% 50%;position:relative;touch-action:pan-y pinch-zoom;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.curved-gallery--dragging .curved-gallery__link[data-v-d30cc414],.curved-gallery--dragging .curved-gallery__viewport[data-v-d30cc414]{cursor:grabbing}.curved-gallery__scene[data-v-d30cc414]{inset:0;pointer-events:none;position:absolute;transform-style:preserve-3d;z-index:1}.curved-gallery__floor[data-v-d30cc414]{inset:0;-webkit-mask-image:linear-gradient(180deg,transparent,#000 22%,#000 79%,transparent);mask-image:linear-gradient(180deg,transparent,#000 22%,#000 79%,transparent);overflow:hidden;pointer-events:none;position:absolute;z-index:0}.curved-gallery__floor-light[data-v-d30cc414]{border-radius:50%;filter:blur(14px);height:150px;left:50%;pointer-events:none;position:absolute;top:50%;will-change:transform}.curved-gallery__floor-item[data-v-d30cc414]{display:contents}.curved-gallery__reflection[data-v-d30cc414]{left:50%;opacity:.26;pointer-events:none;position:absolute;top:50%;transform-origin:center top;will-change:transform}:root[data-theme=light] .curved-gallery__reflection[data-v-d30cc414]{opacity:.32}.curved-gallery__position[data-v-d30cc414]{left:50%;pointer-events:none;position:absolute;top:50%;transform-style:preserve-3d;transition:z-index 0s linear .18s;will-change:transform}.curved-gallery:not(.curved-gallery--dragging) .curved-gallery__position.is-hovered[data-v-d30cc414],.curved-gallery:not(.curved-gallery--dragging) .curved-gallery__position[data-v-d30cc414]:has(.curved-gallery__link:focus-visible){transition-delay:0s;z-index:30}.curved-gallery__link[data-v-d30cc414]{border-radius:12px;color:inherit;cursor:pointer;display:block;height:100%;pointer-events:auto;text-decoration:none;width:100%;-webkit-user-drag:none;transform:translateZ(0) scale(1);transform-style:preserve-3d;transition:transform .35s ease}.curved-gallery__position.is-offscreen .curved-gallery__link[data-v-d30cc414]{pointer-events:none}.curved-gallery:not(.curved-gallery--dragging) .curved-gallery__link[data-v-d30cc414]:focus-visible,.curved-gallery:not(.curved-gallery--dragging) .is-hovered .curved-gallery__link[data-v-d30cc414]{transform:translateZ(100px) scale(1.085)}.curved-gallery__float[data-v-d30cc414]{border-radius:inherit;height:100%;transform-style:preserve-3d;transition:box-shadow .35s ease;width:100%}.curved-gallery__float[data-v-d30cc414],.curved-gallery__reflection-float[data-v-d30cc414]{animation:curved-gallery-float-d30cc414 var(--float-duration,8s) ease-in-out var(--float-delay,0s) infinite var(--float-direction,normal)}.curved-gallery:not(.curved-gallery--dragging) .curved-gallery__link:focus-visible .curved-gallery__float[data-v-d30cc414],.curved-gallery:not(.curved-gallery--dragging) .is-hovered .curved-gallery__float[data-v-d30cc414]{box-shadow:0 24px 48px #00000057,0 7px 18px #00000038}.curved-gallery--dragging .curved-gallery__link[data-v-d30cc414]{transform:translateZ(0) scale(1);transition:none}.curved-gallery--navigating .curved-gallery__float[data-v-d30cc414],.curved-gallery--navigating .curved-gallery__reflection-float[data-v-d30cc414]{animation-play-state:paused}@keyframes curved-gallery-float-d30cc414{0%,to{transform:translateY(calc(var(--float-low, -3px)*var(--float-projection-scale, 1)))}28%{transform:translateY(calc(var(--float-high, 3px)*var(--float-projection-scale, 1)))}61%{transform:translateY(calc(var(--float-drift, -1px)*var(--float-projection-scale, 1)))}82%{transform:translateY(calc(var(--float-rest, 1px)*var(--float-projection-scale, 1)))}}@media(prefers-reduced-motion:reduce){.curved-gallery__heading .curved-gallery__description[data-v-d30cc414],.curved-gallery__heading h2[data-v-d30cc414]{opacity:1;transform:none;transition:none}.curved-gallery__float[data-v-d30cc414],.curved-gallery__reflection-float[data-v-d30cc414]{animation:none}.curved-gallery__float[data-v-d30cc414],.curved-gallery__link[data-v-d30cc414]{transition:none}}.curved-gallery__link[data-v-d30cc414]:focus-visible{outline:3px solid #96dae7;outline-offset:6px}.curved-gallery__footer[data-v-d30cc414]{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin:-3rem auto 0;position:relative;width:min(1120px,calc(100% - 3rem));z-index:2}.curved-gallery__hint[data-v-d30cc414]{align-items:center;color:var(--text-secondary);display:inline-flex;font-size:.75rem;gap:.65rem}.curved-gallery__controls[data-v-d30cc414]{align-items:center;display:flex;gap:.9rem}.curved-gallery__controls button[data-v-d30cc414]{background:transparent;border:1px solid color-mix(in srgb,var(--text-primary) 20%,transparent);border-radius:50%;color:inherit;cursor:pointer;display:grid;height:44px;padding:0;place-items:center;transition:background-color .18s ease;width:44px}.curved-gallery__controls button[data-v-d30cc414]:hover:enabled{background:color-mix(in srgb,var(--text-primary) 8%,transparent)}.curved-gallery__controls button[data-v-d30cc414]:disabled{cursor:default;opacity:.25}.curved-gallery__count[data-v-d30cc414]{font-size:.75rem;font-variant-numeric:tabular-nums;min-width:3.4rem}.curved-gallery__count span[data-v-d30cc414]{color:var(--text-secondary);margin-left:.2rem}.visually-hidden[data-v-d30cc414]{clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.curved-gallery--compact[data-v-d30cc414]{padding:3rem 0}.curved-gallery--compact .curved-gallery__footer[data-v-d30cc414]{margin-top:-1rem;width:calc(100% - 2rem)}.curved-gallery--compact .curved-gallery__controls[data-v-d30cc414]{gap:.5rem}
