.tech-marquee-wrapper.svelte-8kyvge{width:100%;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 10px calc(100% - 10px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 10px calc(100% - 10px),#0000 100%)}.tech-marquee-track.svelte-8kyvge{flex-wrap:nowrap;width:max-content;display:flex}.tech-marquee-track.is-sliding.svelte-8kyvge{animation:16s linear infinite svelte-8kyvge-slide-to-right}.tech-marquee-wrapper.svelte-8kyvge:hover .tech-marquee-track:where(.svelte-8kyvge),.tech-marquee-wrapper.svelte-8kyvge:focus-within .tech-marquee-track:where(.svelte-8kyvge){animation-play-state:paused}.tech-marquee-list.svelte-8kyvge{flex-wrap:nowrap;align-items:center;gap:.5rem;margin:0;padding-right:.5rem;list-style:none;display:flex}@keyframes svelte-8kyvge-slide-to-right{0%{transform:translate(-50%)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.tech-marquee-track.is-sliding.svelte-8kyvge{animation:none}.tech-marquee-wrapper.svelte-8kyvge{overflow-x:auto;-webkit-mask-image:none;mask-image:none}}.project-strip{--project-strip-edge-fade:#0000004d;min-width:0}[data-theme=portfolio-light] .project-strip{--project-strip-edge-fade:color-mix(in srgb, var(--color-base-200) 96%, transparent)}.project-strip__controls{align-items:center;gap:1rem;min-height:2.5rem;margin-bottom:1rem;display:flex}.project-strip__viewport{border-radius:1rem;min-width:0;position:relative;overflow:hidden}.project-strip__viewport:before,.project-strip__viewport:after{z-index:5;pointer-events:none;content:"";opacity:0;width:clamp(2.25rem,6vw,4rem);transition:opacity .18s;position:absolute;top:0;bottom:1rem}.project-strip__viewport:before{background:linear-gradient(90deg, var(--project-strip-edge-fade), transparent);border-radius:1rem 0 0 1rem;left:0}.project-strip__viewport:after{background:linear-gradient(270deg, var(--project-strip-edge-fade), transparent);border-radius:0 1rem 1rem 0;right:0}.project-strip__viewport--start:before,.project-strip__viewport--end:after{opacity:1}.project-strip__track{overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--color-primary) 55%, transparent) transparent;-webkit-overflow-scrolling:touch;gap:1rem;padding:.125rem .125rem 1rem;scroll-padding-inline:.125rem;display:flex;overflow:auto hidden}.project-strip__track:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px;border-radius:.5rem}.project-strip__track.is-dragging,.project-strip__track.is-wheel-scrolling{cursor:grabbing;user-select:none;scroll-snap-type:none}.project-strip__track.is-wheel-scrolling{cursor:grab;user-select:auto}.project-strip__track>li{scroll-snap-align:start;flex:0 0 min(78vw,22rem);min-width:0}.project-strip-card{border:1px solid var(--color-base-300);background:var(--color-base-100);border-radius:1rem;flex-direction:column;height:100%;min-height:29rem;transition:border-color .18s,transform .18s,box-shadow .18s;display:flex;overflow:hidden;box-shadow:0 18px 40px -34px #000c}.project-strip-card:focus-within,.project-strip-card:hover{border-color:color-mix(in srgb, var(--color-primary) 58%, var(--color-base-300));box-shadow:0 22px 44px -34px color-mix(in srgb, var(--color-primary) 55%, transparent);transform:translateY(-2px)}.is-dragging .project-strip-card{transform:none}.project-strip-card__media{border-bottom:1px solid var(--color-base-300);background:var(--color-base-200);flex:none;height:8.5rem;overflow:hidden}.project-strip-card__media img{object-fit:cover;width:100%;height:100%}.project-strip-card__fallback{cursor:pointer;height:100%;color:color-mix(in srgb, var(--color-primary) 75%, var(--color-base-content));background-image:linear-gradient(90deg, transparent 0 11%, color-mix(in srgb, var(--color-primary) 10%, transparent) 11% 11.3%, transparent 11.3% 100%), linear-gradient(color-mix(in srgb, var(--color-primary) 8%, transparent) 1px, transparent 1px);background-size:100% 100%,100% 1.5rem;justify-content:center;align-items:center;gap:.75rem;display:flex;position:relative}.project-strip-card__fallback span{letter-spacing:.12em;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.75rem}.project-strip-card__body{flex-direction:column;flex:1;padding:1.5rem;display:flex}.project-strip-card__summary{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.project-strip-card__link{color:var(--color-primary);text-underline-offset:.2rem;border-radius:.25rem;align-items:center;gap:.4rem;font-size:.78rem;font-weight:650;text-decoration:none;display:inline-flex}.project-strip-card__link:hover{text-decoration:underline}.project-strip-card__link:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}@media (width>=640px){.project-strip__track{gap:1.25rem}.project-strip__track>li{flex-basis:min(62vw,27rem)}}@media (width>=1024px){.project-strip__controls{display:none}.project-strip__viewport{overflow:visible}.project-strip__viewport:before,.project-strip__viewport:after{display:none}.project-strip__track{scroll-snap-type:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;display:grid;overflow:visible}.project-strip__track>li{min-width:0}}@media (prefers-reduced-motion:reduce){.project-strip-card,.project-strip__viewport:before,.project-strip__viewport:after{transition:none}}
