@layer portfolio{.contact-title.svelte-177xfb6{font-family:var(--font-display);letter-spacing:-.035em;margin-block-end:1rem;font-size:1.75rem;font-weight:500;line-height:1.2}.contact-invitation.svelte-177xfb6{color:var(--muted);font-size:.9375rem}.contact-email.svelte-177xfb6{font-family:var(--font-display);letter-spacing:-.04em;color:var(--accent-ink);margin-block:.625rem 1.5rem;font-size:clamp(1.625rem,6.5vw,2.75rem);line-height:1.3;text-decoration:none;display:inline-block}.contact-email.svelte-177xfb6:hover{text-decoration:underline}summary.svelte-1b7kgsg{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;min-block-size:2.75rem;padding-block:.375rem;list-style:none;display:flex}summary.svelte-1b7kgsg::-webkit-details-marker{display:none}summary.svelte-1b7kgsg:hover{color:var(--accent-ink)}summary.svelte-1b7kgsg:focus-visible{outline:2px solid var(--accent-ink);outline-offset:5px;border-radius:2px}details[open].svelte-1b7kgsg>summary:where(.svelte-1b7kgsg){margin-block-end:1.5rem}.accordion-title.svelte-1b7kgsg{font-family:var(--font-mono);letter-spacing:.025em;color:var(--muted);font-size:.75rem;font-weight:400;line-height:1.5}.expand-icon.svelte-1b7kgsg{flex-shrink:0;block-size:1rem;inline-size:1rem;position:relative}.expand-icon.svelte-1b7kgsg:before,.expand-icon.svelte-1b7kgsg:after{content:"";background:currentColor;block-size:2px;inline-size:1rem;position:absolute;inset-block-start:calc(50% - 1px)}.expand-icon.svelte-1b7kgsg:after{transform:rotate(90deg)}details[open].svelte-1b7kgsg .expand-icon:where(.svelte-1b7kgsg):after{display:none}picture.svelte-gbj467{display:contents}.featured-lead.svelte-1tg4avn{font-family:var(--font-display);letter-spacing:-.035em;margin-block-end:1.5rem;font-size:clamp(1.625rem,5vw,2.125rem);font-weight:500;line-height:1.2}[data-project-card].svelte-1tg4avn{outline-offset:0;outline:1px solid #0000;scroll-margin-block-start:calc(var(--site-header-height) + 2rem)}[data-project-card].svelte-1tg4avn:hover{color:var(--ink);outline-color:var(--rule)}[data-project-card].svelte-1tg4avn:focus-visible{outline:2px solid var(--accent-ink);outline-offset:4px}[data-project-card].svelte-1tg4avn:is(:where(.svelte-1tg4avn):hover,:where(.svelte-1tg4avn):focus-visible) [data-card-title]:where(.svelte-1tg4avn){color:var(--accent-ink)}[data-card-title].svelte-1tg4avn{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}[data-card-title].svelte-1tg4avn span:where(.svelte-1tg4avn){view-transition-class:project-title}[data-project-card].svelte-1tg4avn .project-image{view-transition-class:project-image;aspect-ratio:16/10;object-fit:cover;border-radius:.375rem;block-size:auto;inline-size:100%;margin-block-end:1.5rem;display:block}[data-project-card].svelte-1tg4avn .illustration{aspect-ratio:2706/1464;object-fit:contain;background:var(--image-paper)}@media (prefers-reduced-motion:no-preference){[data-project-card].svelte-1tg4avn{transition:outline-color .18s}[data-card-title].svelte-1tg4avn{transition:color .18s}}.sync-diagram.svelte-n389sy{--sync-duration:3.6s;--node-fill:var(--theme-active);--node-active:color-mix(in oklab, var(--accent-ink) 18%, var(--paper));margin:auto 0 0;padding-block-start:2rem}svg.svelte-n389sy{inline-size:100%;display:block}.track-bed.svelte-n389sy{stroke:var(--theme-active);stroke-width:8px;stroke-linecap:round;filter:blur(2px)}.track.svelte-n389sy{stroke:var(--rule);stroke-width:1.5px;stroke-linecap:round}.node.svelte-n389sy{fill:var(--node-fill);stroke:var(--rule)}.icon.svelte-n389sy{stroke:var(--muted);stroke-width:1.5px;stroke-linecap:round}text.svelte-n389sy{fill:var(--muted);font:11px var(--font-mono);text-anchor:middle}.packet.svelte-n389sy{fill:var(--accent)}.glow.svelte-n389sy{filter:blur(4px);opacity:.65}.outbound.svelte-n389sy{--travel-distance:140px;transform:translate(42px)}.inbound.svelte-n389sy{--travel-distance:-140px;transform:translate(-42px)}figcaption.svelte-n389sy{text-align:center;color:var(--muted);font-size:.6875rem}@media (prefers-reduced-motion:no-preference){.packet.svelte-n389sy{animation:svelte-n389sy-transfer var(--sync-duration) ease-in-out infinite backwards}.node.svelte-n389sy{animation:svelte-n389sy-node-update var(--sync-duration) ease-in-out infinite backwards}.inbound.svelte-n389sy,.local.svelte-n389sy{animation-delay:calc(var(--sync-duration) / 2)}}@keyframes svelte-n389sy-transfer{0%,4%{opacity:0;transform:translate(0)}8%{opacity:1;transform:translate(0)}43%{opacity:1;transform:translateX(var(--travel-distance))}47%,to{opacity:0;transform:translateX(var(--travel-distance))}}@keyframes svelte-n389sy-node-update{0%,43%,63%,to{fill:var(--node-fill);stroke:var(--rule)}47%,53%{fill:var(--node-active);stroke:var(--accent-ink)}}}
