:root{--accent: var(--path-pro)}.pro-hero{padding:clamp(2.5rem,9vh,6rem) var(--pad) clamp(1.5rem,4vh,2.5rem);max-width:var(--shell);margin-inline:auto}.pro-hero>*{max-width:62ch}.pro-hero h1{font-family:var(--sans);font-weight:600;font-size:clamp(2.2rem,6vw,4.25rem);line-height:.98;letter-spacing:-.035em;margin:0 0 1rem;text-wrap:balance}.pro-hero p{margin:0;color:var(--ink-dim);max-width:52ch;font-size:1.02rem}.pro-contact{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}.pro-topline{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:1.25rem 0;margin:clamp(2rem,5vh,3.25rem) 0 0;max-width:46rem}.pro-topline>div{padding-left:1.15rem;border-left:1px solid var(--edge)}.pro-topline dt{font-family:var(--mono);font-size:.62rem;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 .4rem}.pro-topline dd{margin:0;font-family:var(--sans);font-weight:600;font-size:clamp(1.7rem,3.4vw,2.4rem);line-height:1;letter-spacing:-.03em;color:var(--path-pro);font-variant-numeric:tabular-nums}.section{padding:clamp(2rem,6vh,3.5rem) var(--pad);border-top:1px solid var(--edge);max-width:var(--shell);margin-inline:auto}.band{background:var(--band);border-top:1px solid var(--edge);border-bottom:1px solid var(--edge)}.band>.section,.band>.pro-body{border-top:0}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.6rem;max-width:46rem}.section-head h2{font-family:var(--mono);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-faint);font-weight:500;margin:0}.section-head .hint{font-family:var(--mono);font-size:.66rem;color:var(--ink-faint);margin:0}@media(min-width:1100px){.pro-body{display:grid;grid-template-columns:minmax(13rem,18rem) minmax(0,1fr);gap:0 clamp(2rem,4vw,4.5rem);align-items:start;max-width:var(--shell);margin-inline:auto;padding-inline:var(--pad)}.pro-body>.section{padding-inline:0;max-width:none;margin-inline:0}.pro-skills{position:sticky;top:calc(var(--mast-h) + .75rem)}.pro-skills .section-head{max-width:none}}@media(min-width:1100px)and (max-aspect-ratio:3 / 4){.pro-body{grid-template-columns:minmax(0,1fr)}.pro-skills{position:static}}.skills{display:flex;flex-wrap:wrap;gap:.45rem}.chip{appearance:none;background:none;border:1px solid var(--edge);border-radius:var(--radius-pill);color:var(--ink-dim);font-family:var(--mono);font-size:.7rem;letter-spacing:.04em;padding:.4rem .8rem;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;transition:color .25s var(--ease),border-color .25s var(--ease),background .25s var(--ease),transform .25s var(--ease)}.chip:hover{color:var(--ink);border-color:var(--ink-faint)}.chip .count{font-size:.62rem;color:var(--ink-faint);font-variant-numeric:tabular-nums}.chip[aria-pressed=true]{background:var(--path-pro);border-color:var(--path-pro);color:var(--chip-on-ink, #fff)}.chip[aria-pressed=true] .count{color:var(--chip-on-ink, #fff);opacity:.8}.filter-status{margin:1.1rem 0 0;font-family:var(--mono);font-size:.68rem;color:var(--ink-dim);min-height:1.2em}.filter-status button{appearance:none;background:none;border:0;padding:0;color:var(--path-pro);font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.roles{display:flex;flex-direction:column}.role{display:grid;grid-template-columns:9.5rem 1fr;gap:0 2rem;padding:1.5rem 0;border-top:1px solid var(--edge);position:relative;transition:opacity .45s var(--ease),filter .45s var(--ease)}.role:first-child{border-top:0}.roles[data-filtering=true] .role[data-match=false] h3{color:var(--ink-dim)}.roles[data-filtering=true] .role[data-match=false] .org,.roles[data-filtering=true] .role[data-match=false] .summary,.roles[data-filtering=true] .role[data-match=false] .tags{opacity:.5}.role:before{content:"";position:absolute;left:-.85rem;top:1.5rem;bottom:1.5rem;width:2px;background:var(--path-pro);transform:scaleY(0);transform-origin:top;transition:transform .5s var(--ease-out)}.roles[data-filtering=true] .role[data-match=true]:before{transform:none}.role .when{font-family:var(--mono);font-size:.7rem;letter-spacing:.06em;color:var(--ink-faint);font-variant-numeric:tabular-nums;padding-top:.3rem}.role h3{margin:0 0 .2rem;font-family:var(--sans);font-weight:600;font-size:1.12rem;letter-spacing:-.01em}.role .org{margin:0 0 .7rem;color:var(--ink-dim);font-size:.92rem}.role .summary{margin:0 0 .85rem;color:var(--ink-dim);max-width:62ch}.role .tags{display:flex;flex-wrap:wrap;gap:.35rem}.role .tags span{font-family:var(--mono);font-size:.63rem;letter-spacing:.05em;color:var(--ink-faint);border:1px solid var(--edge);border-radius:var(--radius-pill);padding:.18rem .55rem;transition:color .3s var(--ease),border-color .3s var(--ease),background .3s var(--ease)}.role .tags span.lit{color:var(--path-pro);border-color:color-mix(in srgb,var(--path-pro) 55%,transparent);background:color-mix(in srgb,var(--path-pro) 10%,transparent)}@media(max-width:640px){.role{grid-template-columns:1fr;gap:.4rem}.role .when{padding-top:0}.role:before{left:-.6rem}}.highlights{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}@media(min-width:880px){.highlights{grid-template-columns:repeat(4,1fr)}}.card{border:0;border-top:2px solid var(--path-pro);border-radius:0;padding:1rem 0 0;background:none}.card .figure{font-family:var(--sans);font-weight:600;font-size:clamp(2.4rem,5vw,3.4rem);letter-spacing:-.04em;color:var(--path-pro);font-variant-numeric:tabular-nums;line-height:.95;margin:0 0 .55rem}.card .figure-label{font-family:var(--mono);font-size:.62rem;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 .4rem}.card p{margin:0;color:var(--ink-dim);font-size:.9rem}.pro-foot{border-top:1px solid var(--edge);padding:2rem var(--pad) 3.5rem;max-width:var(--shell);margin-inline:auto;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-family:var(--mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.pro-foot a{color:var(--ink-dim);text-decoration:none;border-bottom:1px solid var(--edge)}.pro-foot a:hover{color:var(--ink)}
