.projects.svelte-6p8i1p{margin-top:5.5rem}.carousel.svelte-6p8i1p{position:relative;display:flex;align-items:stretch;gap:.75rem;margin-top:1.75rem;outline:none}.viewport.svelte-6p8i1p{overflow:hidden;flex:1;border-radius:var(--radius);touch-action:pan-y}.track.svelte-6p8i1p{display:flex;transition:transform .55s cubic-bezier(.22,1,.36,1)}.slide.svelte-6p8i1p{flex:0 0 100%;min-width:0;display:flex}.frame.svelte-6p8i1p{position:relative;display:flex;flex-direction:column;flex:1;gap:.7rem;min-height:300px;padding:1.6rem 1.8rem;overflow:hidden}.frame.svelte-6p8i1p:before{content:"";position:absolute;inset:0;background:radial-gradient(24rem 18rem at 100% 0%,color-mix(in srgb,var(--tint) 22%,transparent),transparent 60%);pointer-events:none}.frame.svelte-6p8i1p:after{content:"";position:absolute;left:0;top:1.6rem;bottom:1.6rem;width:3px;border-radius:2px;background:var(--tint);box-shadow:0 0 16px -2px var(--tint)}.frame-top.svelte-6p8i1p{display:flex;align-items:baseline;gap:1rem;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint)}.proj-client.svelte-6p8i1p{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tint)}.proj-year.svelte-6p8i1p{margin-left:auto;flex:0 0 auto;color:var(--tint)}.frame-body.svelte-6p8i1p{flex:1}.proj-tagline.svelte-6p8i1p{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.proj-name.svelte-6p8i1p{font-size:clamp(1.75rem,3.6vw,2.5rem);text-transform:uppercase;margin-top:.4rem}.proj-desc.svelte-6p8i1p{margin-top:.9rem;color:var(--text-dim);font-size:1rem;max-width:60ch}.proj-tags.svelte-6p8i1p{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.2rem}.frame-cta.svelte-6p8i1p{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap}.frame-cta.svelte-6p8i1p .btn:where(.svelte-6p8i1p){flex:0 0 auto;width:170px;justify-content:center;white-space:nowrap}.btn-store.svelte-6p8i1p{background:var(--surface);border-color:color-mix(in srgb,var(--tint) 45%,transparent);color:var(--text)}.btn-store.svelte-6p8i1p svg:where(.svelte-6p8i1p){color:var(--tint)}.btn-store.svelte-6p8i1p:hover{border-color:var(--tint);color:var(--tint);transform:translateY(-2px);box-shadow:0 0 18px -6px var(--tint)}.btn-store.svelte-6p8i1p:hover svg:where(.svelte-6p8i1p){color:var(--tint)}.carousel-nav.svelte-6p8i1p{display:flex;align-items:center;justify-content:center;gap:.85rem;margin-top:1.6rem}.nav.svelte-6p8i1p{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border-radius:8px;background:transparent;border:1px solid var(--border-strong);color:var(--text-dim);cursor:pointer;transition:all .25s ease}.nav.svelte-6p8i1p:hover{color:var(--accent);border-color:var(--accent);box-shadow:0 0 14px -6px var(--glow)}.dots.svelte-6p8i1p{display:flex;justify-content:center;gap:.5rem;width:50%}.dot.svelte-6p8i1p{flex:1 1 0;height:8px;padding:0;border-radius:5px;border:1px solid var(--border-strong);background:transparent;cursor:pointer;transition:all .25s ease}.dot.svelte-6p8i1p:hover{border-color:var(--accent)}.dot.active.svelte-6p8i1p{background:var(--accent);border-color:transparent}@media(max-width:640px){.frame.svelte-6p8i1p{padding:1.3rem 1.4rem;min-height:240px}.frame-cta.svelte-6p8i1p{flex-wrap:nowrap;gap:.5rem}.frame-cta.svelte-6p8i1p .btn:where(.svelte-6p8i1p){flex:1 1 0;width:auto;min-width:0;padding-left:.5rem;padding-right:.5rem;font-size:.72rem;letter-spacing:.02em;overflow:hidden;white-space:nowrap}}section.svelte-1uha8ag{margin-top:5.5rem}.hero.svelte-1uha8ag{margin-top:4rem}.hero-grid.svelte-1uha8ag{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:center}.hero-name.svelte-1uha8ag{font-size:clamp(2.6rem,7vw,4.5rem);margin-top:1rem;line-height:1}.hero-tagline.svelte-1uha8ag{margin-top:1.5rem;font-size:clamp(1.05rem,2vw,1.25rem);color:var(--text-dim);max-width:42ch}.hero-tagline.svelte-1uha8ag a:where(.svelte-1uha8ag){white-space:nowrap}.cmd.svelte-1uha8ag{display:inline-flex;align-items:center;gap:.4ch;padding:.12em .6em;border-radius:6px;background:#07090d;border:1px solid var(--border-strong);box-shadow:inset 0 0 0 1px #0009;font-family:var(--font-mono);font-size:.82em;color:#eae0cd;white-space:nowrap;vertical-align:baseline;transform:translateY(-1px)}.cmd.svelte-1uha8ag:before{content:"$";color:var(--teal);font-weight:600}.hero-cta.svelte-1uha8ag{display:flex;gap:.9rem;margin-top:2rem;flex-wrap:wrap}.hero-stats.svelte-1uha8ag{display:flex;gap:2.5rem;margin-top:3rem}.stat.svelte-1uha8ag{display:flex;flex-direction:column}.stat-value.svelte-1uha8ag{font-family:var(--font-display);font-size:2rem;font-weight:700;background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.stat-label.svelte-1uha8ag{font-size:.82rem;color:var(--text-faint)}.hero-visual.svelte-1uha8ag{position:relative;display:flex;justify-content:center}.photo-wrap.svelte-1uha8ag{position:relative;width:100%;max-width:340px;aspect-ratio:4 / 5;border-radius:22px;padding:6px;background:linear-gradient(150deg,var(--amber),var(--red) 45%,var(--teal) 90%)}.photo.svelte-1uha8ag{width:100%;height:100%;object-fit:cover;border-radius:18px}.now-card.svelte-1uha8ag{display:block;position:absolute;bottom:-24px;left:-12px;width:max-content;padding:.9rem 1.1rem;background:color-mix(in srgb,var(--bg-2) 88%,transparent);cursor:pointer}.now-card.svelte-1uha8ag:hover .now-employer:where(.svelte-1uha8ag) strong:where(.svelte-1uha8ag){color:var(--accent)}.now-label.svelte-1uha8ag{display:inline-flex;align-items:center;gap:.35rem;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.now-ext.svelte-1uha8ag{color:var(--accent);opacity:0;transform:translate(-3px,3px);transition:opacity .25s ease,transform .25s ease}.now-card.svelte-1uha8ag:hover .now-ext:where(.svelte-1uha8ag){opacity:1;transform:translate(0)}.now-employer.svelte-1uha8ag{display:flex;align-items:center;gap:.7rem;margin-top:.45rem}.now-employer.svelte-1uha8ag img:where(.svelte-1uha8ag){width:40px;height:40px;border-radius:9px;object-fit:cover}.now-employer.svelte-1uha8ag strong:where(.svelte-1uha8ag){display:block;font-size:.92rem}.now-employer.svelte-1uha8ag span:where(.svelte-1uha8ag){font-size:.78rem;color:var(--text-dim)}.stack.svelte-1uha8ag{margin-top:3rem}.stack-grid.svelte-1uha8ag{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem;margin-top:1.75rem}.stack-col.svelte-1uha8ag{padding:1.4rem 1.3rem}.stack-group.svelte-1uha8ag{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:.9rem}.stack-col.svelte-1uha8ag ul:where(.svelte-1uha8ag){list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.stack-col.svelte-1uha8ag li:where(.svelte-1uha8ag){font-size:.95rem;color:var(--text-dim);padding-left:1.1rem;position:relative}.stack-col.svelte-1uha8ag li:where(.svelte-1uha8ag):before{content:"";position:absolute;left:0;top:.55rem;width:5px;height:5px;border-radius:50%;background:var(--accent)}.cta-card.svelte-1uha8ag{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:2.5rem;flex-wrap:wrap;background:radial-gradient(30rem 20rem at 100% 0%,var(--bg-glow-1),transparent 60%),var(--surface)}.cta-btn.svelte-1uha8ag{background:var(--orange)}.cta-btn.svelte-1uha8ag:before{background:var(--orange)}.cta-title.svelte-1uha8ag{font-size:clamp(1.5rem,3vw,2rem)}.cta-card.svelte-1uha8ag p:where(.svelte-1uha8ag){margin-top:.5rem;color:var(--text-dim)}@media(max-width:880px){.hero-grid.svelte-1uha8ag{grid-template-columns:1fr;gap:4rem}.hero-visual.svelte-1uha8ag{order:-1}.hero-copy.svelte-1uha8ag{text-align:center}.hero-tagline.svelte-1uha8ag{margin-left:auto;margin-right:auto}.hero-cta.svelte-1uha8ag,.hero-stats.svelte-1uha8ag{justify-content:center}.now-card.svelte-1uha8ag{left:50%;right:auto;bottom:-32px;transform:translate(-50%);text-align:center}.now-label.svelte-1uha8ag,.now-employer.svelte-1uha8ag{justify-content:center}.stack-grid.svelte-1uha8ag{grid-template-columns:repeat(2,1fr)}}@media(max-width:540px){.hero-stats.svelte-1uha8ag{gap:1.5rem}.stack-grid.svelte-1uha8ag{grid-template-columns:1fr}}
