.ProjectCaseStudy-module__dlARaG__section{border-top:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent);color:var(--portfolio-ink);padding:clamp(7rem,11vw,11rem) 0}.ProjectCaseStudy-module__dlARaG__heading>span,.ProjectCaseStudy-module__dlARaG__context>span,.ProjectCaseStudy-module__dlARaG__implementationIntro>span,.ProjectCaseStudy-module__dlARaG__implementationList>li>span,.ProjectCaseStudy-module__dlARaG__outcome>span{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.1em;text-transform:uppercase;font-weight:650}.ProjectCaseStudy-module__dlARaG__heading>span{color:var(--detail-accent);font-size:.54rem}.ProjectCaseStudy-module__dlARaG__heading h2{letter-spacing:-.075em;max-width:13ch;margin:1rem 0 clamp(4rem,7vw,7rem);font-size:clamp(3rem,7vw,7rem);font-weight:830;line-height:.9}.ProjectCaseStudy-module__dlARaG__contextGrid{border-top:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent);border-bottom:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent);grid-template-columns:1fr 1fr;display:grid}.ProjectCaseStudy-module__dlARaG__context{flex-direction:column;justify-content:space-between;min-height:22rem;padding:clamp(1.5rem,3vw,3rem);display:flex}.ProjectCaseStudy-module__dlARaG__context:first-child{padding-left:0}.ProjectCaseStudy-module__dlARaG__context+.ProjectCaseStudy-module__dlARaG__context{border-left:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent)}.ProjectCaseStudy-module__dlARaG__context>span,.ProjectCaseStudy-module__dlARaG__implementationIntro>span,.ProjectCaseStudy-module__dlARaG__outcome>span{color:var(--portfolio-muted);font-size:.52rem}.ProjectCaseStudy-module__dlARaG__context p{letter-spacing:-.04em;max-width:36rem;margin:3rem 0 0;font-size:clamp(1.25rem,2.2vw,2rem);font-weight:610;line-height:1.18}.ProjectCaseStudy-module__dlARaG__implementation{grid-template-columns:minmax(13rem,.4fr) minmax(0,1.6fr);gap:clamp(3rem,7vw,8rem);padding:clamp(6rem,10vw,10rem) 0;display:grid}.ProjectCaseStudy-module__dlARaG__implementationIntro p{max-width:20rem;color:var(--portfolio-muted);margin:1.5rem 0 0;font-size:.87rem;line-height:1.5}.ProjectCaseStudy-module__dlARaG__implementationList{border-top:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent);margin:0;padding:0;list-style:none}.ProjectCaseStudy-module__dlARaG__implementationList li{border-bottom:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent);grid-template-columns:3rem minmax(0,1fr);gap:1.5rem;padding:1.5rem 0;display:grid}.ProjectCaseStudy-module__dlARaG__implementationList li>span{color:var(--detail-accent);font-size:.52rem}.ProjectCaseStudy-module__dlARaG__implementationList p{letter-spacing:-.025em;max-width:50rem;margin:0;font-size:clamp(1rem,1.45vw,1.3rem);font-weight:590;line-height:1.4}.ProjectCaseStudy-module__dlARaG__outcome{border-top:3px solid var(--detail-accent);border-bottom:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent);grid-template-columns:minmax(10rem,.35fr) minmax(0,1.65fr);gap:clamp(3rem,7vw,8rem);padding:clamp(4rem,7vw,7rem) 0;display:grid}.ProjectCaseStudy-module__dlARaG__outcome p{letter-spacing:-.055em;max-width:55rem;margin:0;font-size:clamp(1.7rem,3.2vw,3.2rem);font-weight:720;line-height:1.08}@media (max-width:800px){.ProjectCaseStudy-module__dlARaG__contextGrid,.ProjectCaseStudy-module__dlARaG__implementation,.ProjectCaseStudy-module__dlARaG__outcome{grid-template-columns:1fr}.ProjectCaseStudy-module__dlARaG__context{min-height:16rem;padding:1.5rem 0}.ProjectCaseStudy-module__dlARaG__context+.ProjectCaseStudy-module__dlARaG__context{border-left:0;border-top:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent)}}
.ProjectInteractiveDemo-module__G3DytW__section{background:var(--portfolio-ink);color:var(--portfolio-bone);margin-inline:calc(-1*clamp(1rem,2.8vw,3rem));padding:clamp(7rem,11vw,11rem) clamp(1rem,2.8vw,3rem)}.ProjectInteractiveDemo-module__G3DytW__heading{border-bottom:1px solid color-mix(in srgb, var(--portfolio-bone) 18%, transparent);grid-template-columns:minmax(10rem,.32fr) minmax(0,1.68fr);align-items:end;gap:clamp(3rem,7vw,8rem);margin-bottom:clamp(4rem,7vw,7rem);padding-bottom:2rem;display:grid}.ProjectInteractiveDemo-module__G3DytW__label,.ProjectInteractiveDemo-module__G3DytW__disclaimer,.ProjectInteractiveDemo-module__G3DytW__loading{font-family:var(--font-geist-mono), ui-monospace, monospace}.ProjectInteractiveDemo-module__G3DytW__label{color:var(--portfolio-acid);letter-spacing:.1em;text-transform:uppercase;font-size:.53rem;font-weight:700}.ProjectInteractiveDemo-module__G3DytW__title{letter-spacing:-.08em;max-width:12ch;margin:.9rem 0 0;font-size:clamp(3.5rem,7.5vw,7.5rem);font-weight:850;line-height:.86}.ProjectInteractiveDemo-module__G3DytW__description{max-width:48rem;color:color-mix(in srgb, var(--portfolio-bone) 72%, transparent);margin:0;font-size:clamp(1rem,1.5vw,1.3rem);line-height:1.5}.ProjectInteractiveDemo-module__G3DytW__disclaimer{border-top:1px solid color-mix(in srgb, var(--portfolio-bone) 14%, transparent);max-width:48rem;color:color-mix(in srgb, var(--portfolio-bone) 48%, transparent);letter-spacing:.045em;text-transform:uppercase;margin:1.4rem 0 0;padding-top:1rem;font-size:.54rem;line-height:1.7}.ProjectInteractiveDemo-module__G3DytW__demoSurface{--demo-line:color-mix(in srgb, var(--portfolio-ink) 18%, transparent);--demo-line-strong:color-mix(in srgb, var(--portfolio-ink) 38%, transparent);--demo-accent:var(--portfolio-cobalt);--demo-action:var(--portfolio-cobalt);--demo-action-text:var(--portfolio-bone);border-top:3px solid var(--portfolio-acid);background:var(--portfolio-bone);max-width:108rem;color:var(--portfolio-ink);margin:0 auto;padding:clamp(1rem,2.5vw,2.5rem);position:relative}.ProjectInteractiveDemo-module__G3DytW__demoSurface[data-demo=botmedic-triage],.ProjectInteractiveDemo-module__G3DytW__demoSurface[data-demo=cycleready-release-room]{--demo-action:var(--portfolio-ink);--demo-action-text:var(--portfolio-acid)}.ProjectInteractiveDemo-module__G3DytW__demoSurface>div{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=rounded-panel],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=rounded-surface],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=rounded-control],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=rounded-pill],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=rounded-full],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=rounded-lg],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=rounded]{border-radius:0!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=shadow-soft],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=shadow-raised],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=shadow-sm],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=shadow-md],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=shadow-lg],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=shadow-xl]{box-shadow:none!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-card],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-card\/60],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-card\/50],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-card\/70],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-surface],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-surface\/50],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-surface\/60],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-surface\/70],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-surface\/80],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-surface-raised],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-surface-raised\/80],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-surface-raised\/90]{background:0 0!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=border-border],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=border-border\/40],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=border-border\/50],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=border-border\/60],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=border-border\/70]{border-color:var(--demo-line)!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=border-brand],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=border-brand\/30],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=border-brand\/40],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=border-brand\/50]{border-color:var(--demo-accent)!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-brand\/5],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-brand\/10],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-brand\/15]{background:color-mix(in srgb, var(--demo-accent) 9%, transparent)!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=bg-brand]{border-color:var(--demo-action)!important;background:var(--demo-action)!important;color:var(--demo-action-text)!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=text-brand]{color:var(--demo-accent)!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=text-brand-foreground]{color:var(--demo-action-text)!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=text-foreground],.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=text-foreground\/90]{color:var(--portfolio-ink)!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=text-muted-foreground]{color:var(--portfolio-muted)!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface button,.ProjectInteractiveDemo-module__G3DytW__demoSurface input,.ProjectInteractiveDemo-module__G3DytW__demoSurface select,.ProjectInteractiveDemo-module__G3DytW__demoSurface textarea{box-shadow:none!important;border-radius:0!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface button{font-family:var(--font-geist-sans), system-ui, sans-serif}.ProjectInteractiveDemo-module__G3DytW__demoSurface input,.ProjectInteractiveDemo-module__G3DytW__demoSurface select,.ProjectInteractiveDemo-module__G3DytW__demoSurface textarea{border-color:var(--demo-line-strong)!important;background:color-mix(in srgb, var(--portfolio-bone) 94%, white)!important;color:var(--portfolio-ink)!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface input:focus-visible,.ProjectInteractiveDemo-module__G3DytW__demoSurface select:focus-visible,.ProjectInteractiveDemo-module__G3DytW__demoSurface textarea:focus-visible,.ProjectInteractiveDemo-module__G3DytW__demoSurface button:focus-visible,.ProjectInteractiveDemo-module__G3DytW__demoSurface a:focus-visible{outline:2px solid var(--demo-accent)!important;outline-offset:3px!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface [class~=rounded-pill]{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.055em;text-transform:uppercase;font-size:.61rem!important;font-weight:650!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface article{box-shadow:none!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface h3,.ProjectInteractiveDemo-module__G3DytW__demoSurface h4{letter-spacing:-.035em}.ProjectInteractiveDemo-module__G3DytW__demoSurface h3{font-weight:740}.ProjectInteractiveDemo-module__G3DytW__demoSurface h4{font-weight:700}.ProjectInteractiveDemo-module__G3DytW__demoSurface table{border-collapse:collapse;width:100%}.ProjectInteractiveDemo-module__G3DytW__demoSurface thead{background:0 0!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface th{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--portfolio-muted)!important;padding:.75rem!important;font-size:.58rem!important;font-weight:650!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface td{border-color:var(--demo-line)!important;padding:.8rem .75rem!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface tbody tr{border-color:var(--demo-line)!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface>div>[aria-live=polite]:last-child{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.035em;line-height:1.6;border-top:2px solid var(--portfolio-ink)!important;color:var(--portfolio-muted)!important;margin-top:clamp(2rem,4vw,4rem)!important;padding-top:1rem!important;font-size:.61rem!important}.ProjectInteractiveDemo-module__G3DytW__demoSurface button,.ProjectInteractiveDemo-module__G3DytW__demoSurface select,.ProjectInteractiveDemo-module__G3DytW__demoSurface input{min-height:2.65rem}.ProjectInteractiveDemo-module__G3DytW__loading{border:1px solid var(--demo-line);background:var(--portfolio-bone);min-height:15rem;color:var(--portfolio-muted);letter-spacing:.07em;text-align:center;text-transform:uppercase;place-items:center;padding:clamp(3rem,6vw,6rem);font-size:.72rem;font-weight:650;display:grid}@media (max-width:800px){.ProjectInteractiveDemo-module__G3DytW__heading{grid-template-columns:1fr}.ProjectInteractiveDemo-module__G3DytW__demoSurface{padding:1rem}.ProjectInteractiveDemo-module__G3DytW__demoSurface button,.ProjectInteractiveDemo-module__G3DytW__demoSurface input,.ProjectInteractiveDemo-module__G3DytW__demoSurface select{min-height:2.85rem}}@media (max-width:520px){.ProjectInteractiveDemo-module__G3DytW__section{padding:6rem 1rem}.ProjectInteractiveDemo-module__G3DytW__title{font-size:clamp(3.4rem,17vw,5.5rem)}.ProjectInteractiveDemo-module__G3DytW__demoSurface{margin-inline:-1rem;padding:1rem}.ProjectInteractiveDemo-module__G3DytW__demoSurface th,.ProjectInteractiveDemo-module__G3DytW__demoSurface td{padding:.7rem .55rem!important}}@media (prefers-reduced-motion:reduce){.ProjectInteractiveDemo-module__G3DytW__demoSurface *,.ProjectInteractiveDemo-module__G3DytW__demoSurface :before,.ProjectInteractiveDemo-module__G3DytW__demoSurface :after{scroll-behavior:auto!important}}
.ProjectReadme-module__t3Ncla__article{max-width:78rem;color:var(--portfolio-ink);margin:0 auto;font-size:.97rem;line-height:1.75}:is(.ProjectReadme-module__t3Ncla__article h1,.ProjectReadme-module__t3Ncla__article h2,.ProjectReadme-module__t3Ncla__article h3,.ProjectReadme-module__t3Ncla__article h4){color:var(--portfolio-ink);letter-spacing:-.045em;margin:2.6em 0 .65em;font-weight:760;line-height:1.05}.ProjectReadme-module__t3Ncla__article h1{letter-spacing:-.07em;margin-top:0;font-size:clamp(2.6rem,5vw,5rem)}.ProjectReadme-module__t3Ncla__article h2{border-top:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent);padding-top:1.4rem;font-size:clamp(2rem,3.5vw,3.4rem)}.ProjectReadme-module__t3Ncla__article h3{font-size:clamp(1.45rem,2.3vw,2.2rem)}:is(.ProjectReadme-module__t3Ncla__article p,.ProjectReadme-module__t3Ncla__article li){max-width:70ch}:is(.ProjectReadme-module__t3Ncla__article ul,.ProjectReadme-module__t3Ncla__article ol){padding-left:1.4rem}.ProjectReadme-module__t3Ncla__article li+li{margin-top:.45rem}.ProjectReadme-module__t3Ncla__article a{color:var(--portfolio-cobalt);text-underline-offset:.18em;font-weight:620;text-decoration-thickness:1px}.ProjectReadme-module__t3Ncla__article blockquote{border-left:4px solid var(--portfolio-cobalt);max-width:65ch;color:var(--portfolio-muted);margin:2rem 0;padding:.3rem 0 .3rem 1.4rem}.ProjectReadme-module__t3Ncla__article hr{border:0;border-top:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent);margin:4rem 0}.ProjectReadme-module__t3Ncla__article table{border-collapse:collapse;width:100%;margin:2rem 0;font-size:.82rem}:is(.ProjectReadme-module__t3Ncla__article th,.ProjectReadme-module__t3Ncla__article td){border:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent);text-align:left;vertical-align:top;padding:.75rem .8rem}.ProjectReadme-module__t3Ncla__article th{background:color-mix(in srgb, var(--portfolio-ink) 5%, transparent);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.06em;text-transform:uppercase;font-size:.7rem}.ProjectReadme-module__t3Ncla__image{border:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent);max-width:100%;height:auto;margin:2rem 0}.ProjectReadme-module__t3Ncla__code{background:color-mix(in srgb, var(--portfolio-ink) 7%, transparent);font-family:var(--font-geist-mono), ui-monospace, monospace;padding:.08em .3em;font-size:.9em}.ProjectReadme-module__t3Ncla__pre{border-left:4px solid var(--portfolio-cobalt);background:var(--portfolio-ink);max-width:100%;color:var(--portfolio-bone);margin:2rem 0;padding:1.2rem;font-size:.82rem;line-height:1.65;overflow-x:auto}.ProjectReadme-module__t3Ncla__pre .ProjectReadme-module__t3Ncla__code{color:inherit;background:0 0;padding:0}.ProjectReadme-module__t3Ncla__state{border-top:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent);border-bottom:1px solid color-mix(in srgb, var(--portfolio-ink) 18%, transparent);color:var(--portfolio-muted);padding:2rem 0;font-size:.85rem}.ProjectReadme-module__t3Ncla__sourceNote{max-width:78rem;color:var(--portfolio-muted);font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.07em;text-transform:uppercase;margin:2rem auto 0;font-size:.52rem}.ProjectReadme-module__t3Ncla__sourceNote a{color:var(--portfolio-cobalt);text-decoration:none}@media (max-width:640px){.ProjectReadme-module__t3Ncla__article{font-size:.92rem}.ProjectReadme-module__t3Ncla__article table{display:block;overflow-x:auto}}
.ProjectDetail-module__fQP1vW__page{--detail-accent:var(--portfolio-cobalt);--detail-secondary:var(--portfolio-acid);--detail-line:color-mix(in srgb, var(--portfolio-ink) 18%, transparent);background:var(--portfolio-bone);min-height:100svh;color:var(--portfolio-ink);padding:clamp(7rem,10vw,10rem) clamp(1rem,2.8vw,3rem) clamp(5rem,8vw,8rem)}.ProjectDetail-module__fQP1vW__page[data-project=botmedic]{--detail-accent:var(--portfolio-cobalt);--detail-secondary:var(--portfolio-acid)}.ProjectDetail-module__fQP1vW__page[data-project=dqsentry]{--detail-accent:var(--portfolio-cobalt);--detail-secondary:var(--portfolio-ink)}.ProjectDetail-module__fQP1vW__page[data-project=cycleready]{--detail-accent:var(--portfolio-ink);--detail-secondary:var(--portfolio-acid)}.ProjectDetail-module__fQP1vW__utilityRow,.ProjectDetail-module__fQP1vW__kicker,.ProjectDetail-module__fQP1vW__utilityMeta,.ProjectDetail-module__fQP1vW__evidenceIntro>span,.ProjectDetail-module__fQP1vW__evidenceIndex,.ProjectDetail-module__fQP1vW__evidenceLabel,.ProjectDetail-module__fQP1vW__documentationHeading span{font-family:var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.1em;text-transform:uppercase;font-weight:650}.ProjectDetail-module__fQP1vW__utilityRow{border-bottom:1px solid var(--detail-line);justify-content:space-between;gap:2rem;padding-bottom:1rem;font-size:.53rem;display:flex}.ProjectDetail-module__fQP1vW__backLink{color:var(--portfolio-ink);align-items:center;gap:.6rem;text-decoration:none;display:inline-flex}.ProjectDetail-module__fQP1vW__backLink span,.ProjectDetail-module__fQP1vW__backLink:hover,.ProjectDetail-module__fQP1vW__backLink:focus-visible{color:var(--detail-accent)}.ProjectDetail-module__fQP1vW__backLink:focus-visible{outline:2px solid var(--detail-accent);outline-offset:4px}.ProjectDetail-module__fQP1vW__utilityMeta{color:var(--portfolio-muted);flex-wrap:wrap;justify-content:flex-end;gap:.8rem 1.6rem;font-size:.51rem;display:flex}.ProjectDetail-module__fQP1vW__titleGrid{grid-template-columns:minmax(0,1.55fr) minmax(18rem,.45fr);align-items:end;gap:clamp(3rem,7vw,8rem);padding:clamp(4rem,8vw,8rem) 0 clamp(5rem,9vw,9rem);display:grid}.ProjectDetail-module__fQP1vW__kicker{color:var(--detail-accent);margin:0 0 1.5rem;font-size:.57rem}.ProjectDetail-module__fQP1vW__title{letter-spacing:-.09em;overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;text-wrap:balance;text-transform:uppercase;max-width:12ch;margin:0;font-size:clamp(5rem,12.2vw,13rem);font-weight:880;line-height:.75}.ProjectDetail-module__fQP1vW__heroAside{flex-direction:column;gap:2.5rem;display:flex}.ProjectDetail-module__fQP1vW__heroAside>p{letter-spacing:-.03em;margin:0;font-size:clamp(1rem,1.45vw,1.3rem);font-weight:570;line-height:1.43}.ProjectDetail-module__fQP1vW__heroActions{border-top:1px solid var(--detail-line);flex-wrap:wrap;gap:.9rem 1.5rem;padding-top:1rem;display:flex}.ProjectDetail-module__fQP1vW__heroActions a{border-bottom:2px solid var(--detail-accent);color:var(--portfolio-ink);align-items:center;gap:.55rem;padding-bottom:.25rem;font-size:.8rem;font-weight:720;text-decoration:none;display:inline-flex}.ProjectDetail-module__fQP1vW__heroActions a span,.ProjectDetail-module__fQP1vW__heroActions a:hover,.ProjectDetail-module__fQP1vW__heroActions a:focus-visible{color:var(--detail-accent)}.ProjectDetail-module__fQP1vW__heroActions a:focus-visible{outline:2px solid var(--detail-accent);outline-offset:4px}.ProjectDetail-module__fQP1vW__statusMessage{border-top:1px solid var(--detail-line);border-bottom:1px solid var(--detail-line);color:var(--portfolio-muted);margin-bottom:2rem;padding:1rem 0;font-size:.8rem}.ProjectDetail-module__fQP1vW__statusMessage[data-error=true]{color:var(--portfolio-ink);border-top-color:var(--detail-accent)}.ProjectDetail-module__fQP1vW__evidenceLedger{border-top:1px solid var(--detail-line);grid-template-columns:minmax(12rem,.33fr) minmax(0,1.67fr);gap:clamp(2rem,5vw,6rem);padding:2rem 0 clamp(6rem,10vw,10rem);display:grid}.ProjectDetail-module__fQP1vW__evidenceIntro>span{color:var(--detail-accent);font-size:.54rem}.ProjectDetail-module__fQP1vW__evidenceIntro p{max-width:14rem;color:var(--portfolio-muted);margin:1.5rem 0 0;font-size:.85rem;line-height:1.5}.ProjectDetail-module__fQP1vW__evidenceEntries{border-top:1px solid var(--detail-line)}.ProjectDetail-module__fQP1vW__evidenceEntry{border-bottom:1px solid var(--detail-line);color:var(--portfolio-ink);grid-template-columns:2.5rem minmax(0,1fr) auto;gap:1.2rem;padding:1.25rem 0;text-decoration:none;display:grid}a.ProjectDetail-module__fQP1vW__evidenceEntry{transition:padding-left .16s,color .16s}a.ProjectDetail-module__fQP1vW__evidenceEntry:hover,a.ProjectDetail-module__fQP1vW__evidenceEntry:focus-visible{color:var(--detail-accent);padding-left:.5rem}a.ProjectDetail-module__fQP1vW__evidenceEntry:focus-visible{outline:2px solid var(--detail-accent);outline-offset:3px}.ProjectDetail-module__fQP1vW__evidenceIndex,.ProjectDetail-module__fQP1vW__evidenceLabel{color:var(--portfolio-muted);font-size:.49rem}.ProjectDetail-module__fQP1vW__evidenceEntry strong{letter-spacing:-.03em;max-width:52rem;margin-top:.7rem;font-size:clamp(1rem,1.4vw,1.25rem);font-weight:700;line-height:1.3;display:block}.ProjectDetail-module__fQP1vW__evidenceEntry p{max-width:46rem;color:var(--portfolio-muted);margin:.65rem 0 0;font-size:.8rem;line-height:1.45}.ProjectDetail-module__fQP1vW__evidenceArrow{color:var(--detail-accent);font-size:.72rem}.ProjectDetail-module__fQP1vW__documentation{border-top:1px solid var(--detail-line);padding:clamp(5rem,8vw,8rem) 0 clamp(4rem,7vw,7rem)}.ProjectDetail-module__fQP1vW__documentationHeading{grid-template-columns:minmax(0,1.25fr) minmax(18rem,.75fr);align-items:end;gap:clamp(3rem,7vw,8rem);margin-bottom:clamp(2.5rem,4vw,4rem);display:grid}.ProjectDetail-module__fQP1vW__documentationHeading span{color:var(--detail-accent);font-size:.54rem}.ProjectDetail-module__fQP1vW__documentationHeading h2{letter-spacing:-.085em;margin:.8rem 0 0;font-size:clamp(4rem,9vw,9rem);font-weight:850;line-height:.77}.ProjectDetail-module__fQP1vW__documentationHeading>p{max-width:30rem;color:var(--portfolio-muted);margin:0;font-size:.9rem;line-height:1.5}.ProjectDetail-module__fQP1vW__readmeDisclosure{border-top:1px solid var(--detail-line);border-bottom:1px solid var(--detail-line)}.ProjectDetail-module__fQP1vW__readmeSummary{min-height:5.25rem;color:var(--portfolio-ink);cursor:pointer;justify-content:space-between;align-items:center;gap:2rem;font-size:.86rem;font-weight:720;list-style:none;display:flex}.ProjectDetail-module__fQP1vW__readmeSummary::-webkit-details-marker{display:none}.ProjectDetail-module__fQP1vW__readmeSummary::marker{content:""}.ProjectDetail-module__fQP1vW__readmeSummary span:last-child{color:var(--detail-accent);font-size:1.45rem;line-height:1;transition:transform .16s}.ProjectDetail-module__fQP1vW__readmeDisclosure[open] .ProjectDetail-module__fQP1vW__readmeSummary span:last-child{transform:rotate(45deg)}.ProjectDetail-module__fQP1vW__readmeSummary:hover,.ProjectDetail-module__fQP1vW__readmeSummary:focus-visible{color:var(--detail-accent)}.ProjectDetail-module__fQP1vW__readmeSummary:focus-visible{outline:2px solid var(--detail-accent);outline-offset:4px}.ProjectDetail-module__fQP1vW__readmeBody{border-top:1px solid var(--detail-line);padding:clamp(2.5rem,4vw,4rem) 0 clamp(3rem,6vw,6rem)}.ProjectDetail-module__fQP1vW__pageEnd{border-top:2px solid var(--portfolio-ink);justify-content:space-between;align-items:flex-end;gap:2rem;padding-top:2rem;display:flex}.ProjectDetail-module__fQP1vW__pageEnd a{color:var(--portfolio-ink);align-items:center;gap:.7rem;padding-bottom:.25rem;font-size:.8rem;font-weight:720;text-decoration:none;display:inline-flex}.ProjectDetail-module__fQP1vW__pageEnd a:last-child{border-bottom:2px solid var(--detail-accent)}.ProjectDetail-module__fQP1vW__pageEnd a span,.ProjectDetail-module__fQP1vW__pageEnd a:hover,.ProjectDetail-module__fQP1vW__pageEnd a:focus-visible{color:var(--detail-accent)}@supports (animation-timeline:view()
){.ProjectDetail-module__fQP1vW__title{animation:linear both ProjectDetail-module__fQP1vW__detail-title;animation-timeline:view();animation-range:entry cover 30%}}@keyframes ProjectDetail-module__fQP1vW__detail-title{0%{opacity:.2;transform:translate(-5vw)}to{opacity:1;transform:translate(0)}}@media (max-width:900px){.ProjectDetail-module__fQP1vW__titleGrid,.ProjectDetail-module__fQP1vW__evidenceLedger,.ProjectDetail-module__fQP1vW__documentationHeading{grid-template-columns:minmax(0,1fr)}.ProjectDetail-module__fQP1vW__titleGrid>*,.ProjectDetail-module__fQP1vW__evidenceLedger>*,.ProjectDetail-module__fQP1vW__documentationHeading>*{min-width:0}.ProjectDetail-module__fQP1vW__evidenceIntro p{max-width:30rem}}@media (max-width:640px){.ProjectDetail-module__fQP1vW__page{padding:6rem 1rem 4.5rem}.ProjectDetail-module__fQP1vW__utilityRow{flex-direction:column;align-items:flex-start}.ProjectDetail-module__fQP1vW__utilityMeta{justify-content:flex-start}.ProjectDetail-module__fQP1vW__title{max-width:none;font-size:clamp(3.25rem,16vw,6rem)}.ProjectDetail-module__fQP1vW__evidenceEntry{grid-template-columns:2rem 1fr}.ProjectDetail-module__fQP1vW__evidenceArrow{grid-column:2}.ProjectDetail-module__fQP1vW__pageEnd{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){a.ProjectDetail-module__fQP1vW__evidenceEntry,.ProjectDetail-module__fQP1vW__readmeSummary span:last-child{transition:none}.ProjectDetail-module__fQP1vW__title{animation:none}}
