.project-detail.svelte-1ykxz3w{--project-accent:#dcae41;isolation:isolate;width:min(100%,76rem);margin:0 auto;padding:0 clamp(1.25rem,6vw,5.5rem) 2rem;position:relative}.project-detail.svelte-1ykxz3w>section:where(.svelte-1ykxz3w),.project-detail.svelte-1ykxz3w>aside:where(.svelte-1ykxz3w),.project-detail.svelte-1ykxz3w>nav:where(.svelte-1ykxz3w){z-index:1;position:relative}.detail-hero.svelte-1ykxz3w{grid-template-columns:minmax(0,1fr) minmax(18rem,.9fr);align-items:center;gap:clamp(2rem,5vw,5rem);min-height:min(44rem,100svh - 5.5rem);padding:1.5rem 0 4rem;display:grid}.back-link.svelte-1ykxz3w{color:var(--muted);margin-bottom:clamp(2rem,7vh,4.5rem);font-size:.82rem;font-weight:700;text-decoration:none;display:inline-block}.back-link.svelte-1ykxz3w:hover,.project-end.svelte-1ykxz3w a:where(.svelte-1ykxz3w):hover{color:var(--project-accent)}.eyebrow.svelte-1ykxz3w,.section-kicker.svelte-1ykxz3w{color:var(--project-accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .8rem;font-size:.72rem;font-weight:800}.hero-copy.svelte-1ykxz3w h1:where(.svelte-1ykxz3w){font-family:var(--font-display);letter-spacing:-.09em;margin:0;font-size:clamp(3.2rem,8vw,6rem);line-height:.95}.hero-copy.svelte-1ykxz3w h1:where(.svelte-1ykxz3w) span:where(.svelte-1ykxz3w){color:var(--project-accent)}.hero-headline.svelte-1ykxz3w{max-width:33rem;font-family:var(--font-display);letter-spacing:-.06em;margin:1.2rem 0 0;font-size:clamp(1.5rem,3.2vw,2.45rem);font-weight:600;line-height:1.08}.hero-description.svelte-1ykxz3w{max-width:34rem;color:var(--muted);margin:1rem 0 .9rem;font-size:1rem;line-height:1.75}.tech-summary.svelte-1ykxz3w{max-width:34rem;color:var(--project-accent);margin:0 0 1.5rem;font-size:.78rem;font-weight:750;line-height:1.7}.button.svelte-1ykxz3w{border:2px solid var(--ink);background:var(--project-accent);min-height:3rem;box-shadow:3px 4px 0 var(--ink);color:#1d1d1f;border-radius:999px;align-items:center;gap:.65rem;padding:.7rem 1.1rem;font-size:.86rem;font-weight:750;text-decoration:none;transition:transform .15s;display:inline-flex}.button.svelte-1ykxz3w:hover{transform:translateY(-2px)}.paperplane.svelte-1ykxz3w .button:where(.svelte-1ykxz3w),.opengsync.svelte-1ykxz3w .button:where(.svelte-1ykxz3w){color:#fff}.hero-illustration.svelte-1ykxz3w{border:2px solid var(--ink);background:color-mix(in srgb, var(--project-accent) 24%, #fff9e8);min-height:25rem;box-shadow:8px 9px 0 var(--ink);border-radius:2rem;place-items:center;display:grid;position:relative;overflow:hidden}.hero-illustration.svelte-1ykxz3w:before,.hero-illustration.svelte-1ykxz3w:after{content:"";border:1px dashed #1d1d1f33;border-radius:50%;width:22rem;height:22rem;position:absolute;transform:scaleY(.7)rotate(25deg)}.hero-illustration.svelte-1ykxz3w:after{width:15rem;height:15rem;transform:scaleY(.7)rotate(-25deg)}.precious-emblem.svelte-1ykxz3w{z-index:1;border:2px solid var(--ink);width:15rem;height:15rem;box-shadow:5px 6px 0 var(--ink);background:#f4e9c6;border-radius:50%;place-items:center;animation:4s ease-in-out infinite svelte-1ykxz3w-bob;display:grid;overflow:hidden}.precious-emblem.svelte-1ykxz3w img:where(.svelte-1ykxz3w){object-fit:cover;width:100%;height:100%}.opengsync-emblem.svelte-1ykxz3w{box-shadow:none;background:0 0;border:0;border-radius:3.4rem}.paperplane-hero-art.svelte-1ykxz3w{border:2px solid var(--ink);width:min(100%,30rem);box-shadow:5px 6px 0 var(--ink);background:#0b0f14;border-radius:1rem;overflow:hidden;transform:rotate(-2deg)}.paperplane-hero-art.svelte-1ykxz3w img:where(.svelte-1ykxz3w){width:100%;height:auto;display:block}.illustration-caption.svelte-1ykxz3w{z-index:2;color:#665a48;font-size:.72rem;font-weight:650;position:absolute;bottom:1.1rem;right:1.2rem}.detail-section.svelte-1ykxz3w{border-top:1px solid #1d1d1f24;grid-template-columns:minmax(13rem,.8fr) minmax(0,1.2fr);gap:clamp(2rem,7vw,7rem);padding:clamp(3.5rem,9vw,7rem) 0;display:grid}.section-heading.svelte-1ykxz3w h2:where(.svelte-1ykxz3w){font-family:var(--font-display);letter-spacing:-.075em;margin:0;font-size:clamp(2rem,4vw,3.25rem);line-height:1}.section-heading.svelte-1ykxz3w h2:where(.svelte-1ykxz3w) em:where(.svelte-1ykxz3w){color:var(--project-accent);font-style:normal}.overview-copy.svelte-1ykxz3w>p:where(.svelte-1ykxz3w){max-width:41rem;color:var(--muted);margin:0 0 1.5rem;font-size:1.05rem;line-height:1.8}.feature-list.svelte-1ykxz3w{gap:.55rem;display:grid}.feature.svelte-1ykxz3w{align-items:flex-start;gap:.8rem;display:flex}.feature.svelte-1ykxz3w>span:where(.svelte-1ykxz3w){color:var(--project-accent);margin-top:.3rem}.feature.svelte-1ykxz3w p:where(.svelte-1ykxz3w){margin:0;line-height:1.65}.section-intro.svelte-1ykxz3w{max-width:23rem;color:var(--muted);margin:.9rem 0 0;line-height:1.7}.architecture-flow.svelte-1ykxz3w{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.architecture-node.svelte-1ykxz3w{border:1.5px solid var(--ink);min-height:8.3rem;box-shadow:3px 4px 0 var(--ink);background:#fff9e8;border-radius:1rem;align-items:flex-start;gap:.85rem;padding:1rem;display:flex;position:relative}.node-number.svelte-1ykxz3w{background:var(--project-accent);border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;font-size:.67rem;font-weight:800;display:grid}.paperplane.svelte-1ykxz3w .node-number:where(.svelte-1ykxz3w),.opengsync.svelte-1ykxz3w .node-number:where(.svelte-1ykxz3w){color:#fff}.architecture-node.svelte-1ykxz3w h3:where(.svelte-1ykxz3w){margin:.1rem 0 .35rem;font-size:.9rem}.architecture-node.svelte-1ykxz3w p:where(.svelte-1ykxz3w){color:var(--muted);margin:0;font-size:.76rem;line-height:1.5}.node-arrow.svelte-1ykxz3w{color:var(--project-accent);font-weight:800;position:absolute;bottom:.5rem;right:.9rem}.stack-section.svelte-1ykxz3w{align-items:start}.stack-content.svelte-1ykxz3w{gap:1.25rem;display:grid}.stack-groups.svelte-1ykxz3w{gap:1.1rem;display:grid}.stack-group.svelte-1ykxz3w h3:where(.svelte-1ykxz3w){color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .65rem;font-size:.72rem;font-weight:800}.stack-list.svelte-1ykxz3w{flex-wrap:wrap;gap:.65rem;margin:0;padding:0;list-style:none;display:flex}.stack-list.svelte-1ykxz3w li:where(.svelte-1ykxz3w){border:1.5px solid var(--ink);box-shadow:2px 3px 0 var(--ink);background:#fff9e8;border-radius:999px;padding:.58rem .85rem;font-size:.78rem;font-weight:700}.supporting-systems.svelte-1ykxz3w{border-left:3px solid var(--project-accent);color:var(--muted);margin:0;padding-left:1rem;font-size:.85rem;line-height:1.7}.project-note.svelte-1ykxz3w{border:1.5px solid var(--ink);background:#fff2d6;border-radius:1rem;align-items:flex-start;gap:.8rem;margin:0 0 3rem;padding:1rem 1.2rem;display:flex}.project-note.svelte-1ykxz3w>span:where(.svelte-1ykxz3w){color:#a97618}.project-note.svelte-1ykxz3w p:where(.svelte-1ykxz3w){color:#5f5547;margin:0;font-size:.82rem;line-height:1.6}.project-end.svelte-1ykxz3w{border-top:1px solid #1d1d1f24;justify-content:space-between;gap:1rem;padding:1.7rem 0 2.5rem;display:flex}.project-end.svelte-1ykxz3w a:where(.svelte-1ykxz3w){color:var(--ink);font-size:.85rem;font-weight:700;text-decoration:none}.other-project.svelte-1ykxz3w{gap:.5rem;display:flex}@keyframes svelte-1ykxz3w-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (width<=760px){.detail-hero.svelte-1ykxz3w{grid-template-columns:1fr;gap:1.5rem;min-height:0;padding:1rem 0 3.5rem}.back-link.svelte-1ykxz3w{margin:1rem 0 2rem}.hero-illustration.svelte-1ykxz3w{min-height:21rem}.detail-section.svelte-1ykxz3w{grid-template-columns:1fr;gap:1.5rem}.architecture-flow.svelte-1ykxz3w{grid-template-columns:1fr}.architecture-node.svelte-1ykxz3w{min-height:6rem}.node-arrow.svelte-1ykxz3w{top:50%;bottom:auto;right:1rem;transform:translateY(-50%)rotate(-90deg)}}@media (width<=460px){.project-detail.svelte-1ykxz3w{padding-left:1.1rem;padding-right:1.1rem}.hero-illustration.svelte-1ykxz3w{min-height:18rem}.project-end.svelte-1ykxz3w{flex-direction:column}}@media (prefers-reduced-motion:reduce){.precious-emblem.svelte-1ykxz3w{animation:none}.button.svelte-1ykxz3w{transition:none}}
