.social-mark{width:20px;height:20px;overflow:visible}.social-mark *{transform-box:view-box}.mark-poured .ink-line{fill:none;stroke:currentColor;stroke-width:1.3px;stroke-linejoin:round}.mark-poured .ink-fill{fill:currentColor}.mark-poured .ink-rise{transition:transform .26s var(--ease-out);transform:translateY(25px)}@media (hover:hover) and (pointer:fine){.social-rail-link:hover .mark-poured .ink-rise{transition:none;transform:translateY(-2.2px)}}.social-rail-link:focus-visible .mark-poured .ink-rise{transition:none;transform:translateY(-2.2px)}.mark-poured.play .ink-rise{animation:mark-ink-rise .56s var(--ease-out) both}.mark-poured.play .ink-drift{animation:.56s linear both mark-ink-drift}@keyframes mark-ink-rise{0%{transform:translateY(25px)}to{transform:translateY(-2.2px)}}@keyframes mark-ink-drift{to{transform:translate(12px)}}.mark-hi .hi-dot{transform-origin:5.34px 7.43px}.mark-hi .hi-stem{transform-origin:5.34px 20.45px}.mark-hi .hi-n{transform-origin:14.9px 20.45px}.mark-hi.play .hi-dot{animation:.62s both mark-hi-dot}.mark-hi.play .hi-stem{animation:.62s both mark-hi-stem}.mark-hi.play .hi-n{animation:.62s both mark-hi-lean}@keyframes mark-hi-dot{0%{animation-timing-function:cubic-bezier(.2,.7,.3,1);transform:none}36%{animation-timing-function:cubic-bezier(.6,0,.9,.5);transform:translateY(-4.2px)}56%{animation-timing-function:cubic-bezier(.3,0,.3,1);transform:translateY(.4px)scale(1.24,.76)}74%{transform:translateY(-.5px)scale(.94,1.06)}to{transform:none}}@keyframes mark-hi-stem{0%{transform:none}14%{transform:scaleY(.9)}32%{transform:scaleY(1.03)}56%{transform:scaleY(.9)}74%{transform:scaleY(1.02)}to{transform:none}}@keyframes mark-hi-lean{0%,28%{animation-timing-function:cubic-bezier(.3,0,.2,1);transform:none}54%{animation-timing-function:cubic-bezier(.4,0,.3,1);transform:skew(-6deg)}76%{transform:skew(3deg)}to{transform:none}}.mark-hop .hop{transform-origin:12px 20.5px}.mark-hop.play .hop{animation:.6s both mark-hop}@keyframes mark-hop{0%{animation-timing-function:cubic-bezier(.3,0,.5,1);transform:none}14%{animation-timing-function:cubic-bezier(.2,.8,.3,1);transform:translateY(.6px)scale(1.05,.9)}42%{animation-timing-function:cubic-bezier(.4,0,.6,1);transform:translateY(-4.2px)scale(.97,1.05)}60%{animation-timing-function:cubic-bezier(.6,0,.9,.6);transform:translateY(-4.6px)}78%{animation-timing-function:cubic-bezier(.2,.7,.3,1);transform:translateY(.3px)scale(1.06,.92)}to{transform:none}}@media (prefers-reduced-motion:reduce){.social-mark,.social-mark *{transition-duration:0s!important;animation:none!important}}
.cover-root{--cover-inset:16px;--cover-radius:26px;--cover-h:max(560px, calc(100svh - 66px));--band-top:80px;--band-bottom:34px;--corner-inset:8px;--print-h:calc(var(--cover-h) - var(--corner-inset) - var(--band-bottom));--print-w:min(calc(var(--print-h) * .8), 38vw)}.cover{height:var(--cover-h);margin:var(--cover-inset) var(--cover-inset) 0;border-radius:var(--cover-radius);background:radial-gradient(50% 72% at calc(100% - var(--corner-inset) - var(--print-w) / 2) 56%, #c57e5e24, transparent 72%), var(--surface);box-shadow:inset 0 0 0 1px color-mix(in oklch, var(--rule) 55%, transparent);position:relative;overflow:clip}@supports (color:lab(0% 0 0)){.cover{background:radial-gradient(50% 72% at calc(100% - var(--corner-inset) - var(--print-w) / 2) 56%, lab(59.9246% 25.9191 29.6325/.14), transparent 72%), var(--surface)}}.cover-copy{top:var(--band-top);bottom:var(--band-bottom);left:calc(max((100% + 2 * var(--cover-inset) - var(--shell-max)) / 2, 0px) + var(--shell-pad) - var(--cover-inset));right:calc(var(--corner-inset) + var(--print-w) + clamp(2rem, 4vw, 4rem));flex-direction:column;justify-content:center;display:flex;position:absolute}.cover-title{letter-spacing:-.03em;text-wrap:balance;font-size:clamp(2.75rem,4vw,4.25rem);font-weight:200;line-height:.96}.cover-lead{letter-spacing:-.004em;max-width:40ch;color:var(--muted);margin-top:1.75rem;font-size:1.3125rem;font-weight:300;line-height:2rem}.cover-actions{flex-wrap:wrap;align-items:center;gap:1.75rem;margin-top:2.5rem;display:flex}.cover-cta{background:var(--ink);height:3rem;color:var(--paper);border-radius:999px;align-items:center;gap:.625rem;padding:0 1.25rem 0 1.5rem;font-size:.9375rem;font-weight:500;display:inline-flex}.cover-cta-arrow{width:16px;height:16px;display:grid;overflow:hidden}.cover-cta-arrow>svg{width:16px;height:16px;transition:transform .42s var(--ease-out);grid-area:1/1}.cover-cta-b{transform:translate(-140%)}@media (hover:hover) and (pointer:fine){.cover-cta:hover .cover-cta-a{transform:translate(140%)}.cover-cta:hover .cover-cta-b{transform:none}}.cover-cta:focus-visible .cover-cta-a{transform:translate(140%)}.cover-cta:focus-visible .cover-cta-b{transform:none}.cover-email{font-size:.9375rem}.cover-print{top:var(--corner-inset);right:var(--corner-inset);width:var(--print-w);height:var(--print-h);background:var(--surface-sunk);box-shadow:var(--plate-shadow);border-radius:18px;margin:0;position:absolute;overflow:hidden}.cover-print-dark{pointer-events:none;position:absolute;inset:45% 0 0}.cover-print-img{object-fit:cover;width:100%;height:100%}.cover-print-pic{display:contents}.cover-print-pic--dark,.dark .cover-print-pic--light{display:none}.dark .cover-print-pic--dark{display:contents}.cover-strip{height:50px;margin:0 var(--cover-inset);padding:0 var(--corner-inset) 0 calc(max((100% - var(--shell-max)) / 2, 0px) + var(--shell-pad) - var(--cover-inset));color:var(--muted);justify-content:space-between;align-items:center;gap:1.5rem;font-size:.8125rem;font-weight:500;line-height:1.25rem;display:flex}.cover-strip-side{white-space:nowrap;align-items:center;gap:1.5rem;display:flex}.cover-strip-side:first-child{gap:0}.cover-strip-side:first-child>span:first-of-type{color:var(--ink)}.cover-avatar{object-fit:cover;object-position:50% 26%;width:24px;height:24px;box-shadow:0 0 0 1px color-mix(in oklch, var(--ink) 10%, transparent);border-radius:999px;margin-right:.625rem}.cover-name{cursor:help}.cover-titles{text-align:start;max-width:17.5rem}.cover-strip-role:before{content:" · ";white-space:pre}.cover-strip .meta,.cover-figure{font-family:var(--font-mono);letter-spacing:.04em;text-transform:none;font-variant-numeric:tabular-nums;color:var(--muted);font-size:.75rem;font-weight:400;line-height:1rem}@media (max-width:1023.98px){.cover-root{--cover-inset:10px;--cover-radius:28px}.cover{flex-direction:column;gap:2rem;height:auto;padding:10px 10px 2.75rem;display:flex}.cover-print{aspect-ratio:4/5;order:-1;width:100%;height:auto;position:relative;top:auto;right:auto}.cover-copy{padding:0 1rem;position:static}.cover-title{font-size:clamp(2.5rem,8vw,3.5rem)}.cover-strip-role,.cover-strip-place{display:none}}@media (min-width:768px) and (max-width:1023.98px){.cover-root{--cover-radius:32px}.cover{padding:14px 14px 2.75rem}.cover-print{aspect-ratio:3/2}}@media (max-width:767.98px){.cover-actions{row-gap:.75rem}.cover-print{aspect-ratio:4/3}.cover-strip{display:none}}.social-rail{--rail-hover:.22s;--rail-back:.48s;gap:4px;display:flex}.social-rail--vertical{flex-direction:column;gap:12px}.social-rail-link{width:40px;height:40px;color:color-mix(in oklch, var(--ink) 62%, transparent);border-radius:10px;place-items:center;display:grid}@media (hover:hover) and (pointer:fine){.social-rail-link:hover{color:var(--ink)}}.social-rail-link:focus-visible{color:var(--ink)}.social-rail-mark{width:18px;height:18px;overflow:visible}.cover-rail{left:var(--corner-inset);bottom:var(--band-bottom);display:none;position:absolute}.cover-links{margin-left:-1rem}@media (min-width:1360px){.cover-rail{display:flex}.cover-links{display:none}.cover-strip{padding-left:calc(var(--corner-inset) + (40px - 24px) / 2)}}.social-rail-mark,.social-rail-mark :is(.h-dot,.h-stem){transition:transform var(--rail-back) var(--ease-spring)}.is-gesture .social-rail-mark,.is-gesture .social-rail-mark :is(.h-dot,.h-stem){transition:transform var(--rail-hover) var(--ease-out)}.social-rail-mark *{transform-box:view-box}.social-rail-mark.mark-github{transform-origin:50% 90%}.is-gesture .social-rail-mark.mark-github{transform:rotate(-12deg)}.social-rail-mark .h-stem{transform-origin:5.3px 20.45px}.is-gesture .social-rail-mark .h-dot{transform:translateY(-3.2px)}.is-gesture .social-rail-mark .h-stem{transform:scaleY(.9)}.social-rail-mark.mark-upwork{transform-origin:50% 100%}.is-gesture .social-rail-mark.mark-upwork{transform:translateY(-2.5px)}@media (prefers-reduced-motion:reduce){.cover-cta-arrow>svg{transition:none}.cover-cta-b{display:none}.cover-cta:hover .cover-cta-a,.cover-cta:focus-visible .cover-cta-a{transform:none}.social-rail-mark,.social-rail-mark *{transition:none!important;transform:none!important}}
.cover-sheet{--sheet-radius:26px;z-index:1;background:var(--paper);border-radius:var(--sheet-radius) var(--sheet-radius) 0 0;box-shadow:0 -1px 0 color-mix(in oklab, var(--rule) 80%, transparent), 0 -24px 48px -28px #12161b4d;position:relative}@supports (color:lab(0% 0 0)){.cover-sheet{box-shadow:0 -1px 0 color-mix(in oklab, var(--rule) 80%, transparent), 0 -24px 48px -28px lab(7.19452% -.728332 -4.26535/.3)}}.dark .cover-sheet{box-shadow:0 -1px 0 var(--rule), 0 -28px 60px -24px #000000d9}@supports (color:lab(0% 0 0)){.dark .cover-sheet{box-shadow:0 -1px 0 var(--rule), 0 -28px 60px -24px lab(0% 0 0/.85)}}@media (max-width:1023.98px){.cover-sheet{--sheet-radius:28px}}.cover-hold{top:min(0px, calc(100svh - var(--cover-h,100svh)));z-index:0;display:flow-root;position:sticky}.cover-flow:after{content:"";height:100svh;margin-bottom:-100svh;display:block}@media (max-width:1023.98px){.cover-hold .cover{min-height:calc(100svh - 50px - var(--cover-inset))}.cover-hold .cover-copy{margin-block:auto}}@media (max-width:767.98px){.cover-hold .cover{margin-bottom:50px}}@media (max-width:1023.98px) and (min-height:480px){.cover-hold .cover-print{aspect-ratio:auto;height:clamp(7rem, calc(100svh - 50px - var(--cover-inset) - var(--cover-chrome) - var(--copy-h,26rem)), var(--print-basis))}.cover-hold .cover-print-img{object-position:50% 30%}}@media (max-width:767.98px) and (min-height:480px){.cover-hold .cover-print{--cover-chrome:86px;--print-basis:calc((100vw - 40px) * 3 / 4)}}@media (min-width:768px) and (max-width:1023.98px) and (min-height:480px){.cover-hold .cover-print{--cover-chrome:90px;--print-basis:calc((100vw - 48px) * 2 / 3)}}.cover-flow[data-loose] .cover-hold{position:static}.cover-flow[data-loose]:after{content:none}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.cover-flow:not([data-loose]){timeline-scope:--cover-sheet}.cover-flow:not([data-loose]) .cover-sheet{view-timeline:--cover-sheet block}.cover-flow:not([data-loose]) .cover-hold>*{transform-origin:50% calc(max(0px, var(--cover-h,100svh) - 100svh) + .2 * min(var(--cover-h,100svh), 100svh));animation:linear both cover-recede;animation-timeline:--cover-sheet;animation-range:entry}}}@keyframes cover-recede{to{opacity:.5;scale:.96}}
