@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(../media/ca8956476e4b15e1-s.0spvl5h7nh4kj.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(../media/0ada71b763703d9d-s.0bgqpv90abx9d.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:italic;font-weight:200 800;font-display:swap;src:url(../media/2b7d3311b69a4dca-s.p.1elj1f4z6aq4a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/6632a144c419935f-s.08di4g7n39o46.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/7b27d9904b50e540-s.3szkwhi_rfrst.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/d38f3bca7db33566-s.p.0op912u62qdhl.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader Fallback;src:local(Times New Roman);ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.0%;size-adjust:105.48%}.newsreader_cb7a4cd7-module__FTaQAq__className{font-family:Newsreader,Newsreader Fallback}.newsreader_cb7a4cd7-module__FTaQAq__variable{--ink-serif:"Newsreader", "Newsreader Fallback"}
@font-face{font-family:Commissioner;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/77ecfe8ce40a53ab-s.0c4b8p-7t36m-.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Commissioner;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/a1d6a9b7179920b3-s.0ddy657s0iahi.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Commissioner;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/c67c2824a3f8fc99-s.43kumwc7z06ta.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Commissioner;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/f0624f9da2c12308-s.3lsizrt43p-8x.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Commissioner;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5e87fcb5c63effdd-s.05dawag8r1z5x.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Commissioner;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/3793699501f03c1c-s.p.234a00edcc24q.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Commissioner Fallback;src:local(Arial);ascent-override:100.64%;descent-override:20.39%;line-gap-override:0.0%;size-adjust:101.05%}.commissioner_eb1d4492-module__ounQaa__className{font-family:Commissioner,Commissioner Fallback;font-style:normal}.commissioner_eb1d4492-module__ounQaa__variable{--ink-sans:"Commissioner", "Commissioner Fallback"}
.ink{--ink-air:#f6f6f3;--ink-water:#e9eff0;--ink-deep:#dfe7e9;--ink-sumi:#12141c;--ink-ink2:#3c4250;--ink-mute:#596070;--ink-rule:#12141c29;--ink-rule-2:#12141c17;--ink-pigment:#a3243b;--ink-m:clamp(20px, 4vw, 64px);--ink-g:clamp(14px, 1.7vw, 24px);--ink-ease:cubic-bezier(.22, 1, .36, 1);--ink-serif-f:var(--ink-serif), "Iowan Old Style", Georgia, serif;--ink-sans-f:var(--ink-sans), ui-sans-serif, system-ui, sans-serif;background:var(--ink-water);min-height:100vh;color:var(--ink-sumi);font-family:var(--ink-sans-f);font-variation-settings:"FLAR" 24;font-kerning:normal;font-feature-settings:"kern", "liga", "calt";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;hanging-punctuation:first;font-size:18px;font-weight:400;line-height:1.6;position:relative;overflow-x:clip}.ink *,.ink :before,.ink :after{box-sizing:border-box}.ink :where(p,h1,h2,h3,dl,dd,figure,ol,ul){margin:0}.ink :where(h1,h2,h3){font-weight:inherit;font-size:inherit}.ink :where(ol,ul){padding:0;list-style:none}.ink :where(a){color:inherit;text-decoration:none}.ink :focus-visible{outline:2px solid var(--ink-pigment);outline-offset:3px;border-radius:1px}.ink ::selection{background:#a3243b2e}.ink-sr{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ink-wrap{width:100%;max-width:1680px;padding-inline:var(--ink-m);margin-inline:auto}.ink-grid{column-gap:var(--ink-g);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (min-width:960px){.ink-grid{grid-template-columns:repeat(12,minmax(0,1fr))}}.ink-k{color:var(--ink-mute);letter-spacing:.01em;margin-right:8px;font-size:13px;font-weight:500}.ink-note{font-family:var(--ink-serif-f);color:var(--ink-ink2);font-size:19px;font-style:italic;line-height:1.4}.ink-ul{transition:color .25s, background-size .4s var(--ink-ease);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;padding-bottom:2px}.ink-ul:hover{color:var(--ink-pigment)}.ink-glass{pointer-events:none;z-index:1;position:fixed;inset:0}.ink-glass span{background:#12141c1a;width:1px;position:absolute;top:0;bottom:0;box-shadow:1px 0 #ffffffa6}.ink-glass span:first-child{left:max(7px, calc(var(--ink-m) * .32))}.ink-glass span:last-child{right:max(7px, calc(var(--ink-m) * .32))}.ink-sound{--t:0;--at:calc(10vh + var(--t) * 78vh);top:0;right:max(7px, calc(var(--ink-m) * .32));z-index:3;pointer-events:none;width:1px;height:100vh;position:fixed}.ink-sound-l{transform-origin:50% 0;width:1px;height:100vh;transform:scaleY(calc(.1 + var(--t) * .78));will-change:transform;background:#12141c6b;position:absolute;top:0;left:0}.ink-sound-d{background:var(--ink-sumi);width:9px;height:11px;transform:translate3d(0, var(--at), 0);will-change:transform;border-radius:50%/62% 62% 38% 38%;position:absolute;top:-6px;left:-4px}.ink-sound-t{writing-mode:vertical-rl;font-family:var(--ink-serif-f);color:var(--ink-mute);white-space:nowrap;transform:translate3d(0, calc(var(--at) - 100% - 12px), 0);will-change:transform;font-size:14px;font-style:italic;line-height:1;position:absolute;top:0;right:9px}@media (max-width:959px){.ink-sound-t{display:none}.ink-sound-d{width:7px;height:9px;left:-3px}}.ink-hero{position:relative}.ink[data-live]:not([data-still]) .ink-hero{height:240vh}.ink-hero-stage{background:var(--ink-air);isolation:isolate;flex-direction:column;min-height:100vh;display:flex;position:sticky;top:0;overflow:clip}.ink-rail{color:var(--ink-ink2);align-items:center;row-gap:8px;padding-top:clamp(16px,3vh,30px);font-size:16px;line-height:1.45;position:relative}.ink-rail-a{color:var(--ink-sumi);grid-column:1/5;align-items:center;gap:12px;min-width:0;display:flex}.ink-av{object-fit:cover;filter:grayscale()contrast(1.04);width:36px;height:36px;box-shadow:0 0 0 1px var(--ink-rule);border-radius:50%;flex:none}.ink-rail-b{flex-wrap:wrap;grid-column:5/9;gap:4px 24px;display:flex}.ink-rail-c{grid-column:9/11}.ink-rail-d{text-align:right;grid-column:11/13}.ink-rail-d a,.ink-rail-c a{margin-block:-10px;padding-block:10px;display:inline-block}.ink-avail{background:var(--ink-pigment);vertical-align:1px;border-radius:50%;width:8px;height:8px;margin-right:9px;display:inline-block}.ink-lockup{flex:1 0 auto;align-content:end;row-gap:0;padding-top:clamp(28px,6vh,64px)}.ink-name{font-family:var(--ink-serif-f);font-weight:300;font-size:var(--ink-nd);letter-spacing:-.035em;color:var(--ink-sumi);text-wrap:balance;grid-area:2/1/auto/-1;align-self:end;padding-bottom:0;line-height:.9}.ink-word{white-space:nowrap}.ink-bio{max-width:44ch;color:var(--ink-ink2);text-wrap:pretty;grid-area:1/7/auto/12;margin-bottom:clamp(28px,6vh,64px);font-size:18px;line-height:1.6}.ink-bio.is-long{grid-column:6/13;max-width:60ch;font-size:17px}.ink-lockup.is-side .ink-name{grid-column:1/9}.ink-lockup.is-side .ink-bio{margin-bottom:calc(var(--ink-nd) * .218 + 14px);grid-area:2/9/auto/13;align-self:end}.ink-name .ink-base{vertical-align:baseline;width:.24em;height:0;display:inline-block;position:relative}.ink-name .ink-base:before{content:"";background:var(--ink-water);z-index:-1;pointer-events:none;width:800vw;height:300vh;position:absolute;top:0;left:-400vw}.ink-name .ink-base:after{content:"";pointer-events:none;background:#12141c57;width:800vw;height:1px;position:absolute;top:0;left:-400vw;box-shadow:0 1px #fffc}.ink-stop{background:var(--ink-sumi);border-radius:50%/60% 60% 40% 40%;width:.13em;height:.15em;margin-top:-.15em;position:absolute;top:0;left:.05em}.ink-name .ink-stop{transform:translate3d(0, calc(.36em + var(--p,0) * .5em), 0);transition:opacity .7s var(--ink-ease);will-change:transform}.ink-name .ink-stop:before{content:"";background:linear-gradient(#12141c00,#12141c8c);width:1px;height:.24em;position:absolute;bottom:90%;left:50%}.ink[data-inked] .ink-name .ink-stop{opacity:0}.ink-ripple{width:1em;height:.12em;transform:scale(calc(.55 + var(--p,0) * 2.4));opacity:calc(.85 - var(--p,0) * 3.2);pointer-events:none;will-change:transform, opacity;border:1px solid #12141c4d;border-radius:50%;margin:-.06em 0 0 -.5em;position:absolute;top:0;left:.115em}.ink-ripple.is-2{transform:scale(calc(1.05 + var(--p,0) * 3.4));opacity:calc(.6 - var(--p,0) * 2.4);border-color:#12141c38}.ink-under{flex:none;align-items:flex-end;height:52vh;display:flex}.ink-cloud-host{pointer-events:none;position:absolute;inset:0}.ink-hero .ink-cloud-host{overflow:clip}.ink[data-inked] .ink-hero .ink-cloud-host{animation:ink-fade-in 1.1s var(--ink-ease) both}@keyframes ink-fade-in{0%{opacity:0}}.ink-under-in{justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:clamp(20px,4.5vh,44px);display:flex;position:relative}.ink-contents{max-width:34ch;color:var(--ink-ink2);font-size:16px;line-height:1.6}.ink-contents .ink-k{margin-bottom:2px;display:block}.ink-contents a{color:var(--ink-sumi);background-image:linear-gradient(var(--ink-rule), var(--ink-rule));background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;transition:background-image .2s,color .2s}.ink-contents a:hover{color:var(--ink-pigment);background-image:linear-gradient(var(--ink-pigment), var(--ink-pigment))}.ink-cue{isolation:isolate;font-family:var(--ink-serif-f);color:var(--ink-mute);align-items:center;gap:12px;font-size:16px;font-style:italic;display:flex;position:relative}.ink-cue:before{content:"";z-index:-1;background:radial-gradient(closest-side, var(--ink-water) 50%, #e9eff000);pointer-events:none;position:absolute;inset:-26px -40px}.ink-cue-line{background:linear-gradient(#12141c00,#12141c80);width:1px;height:34px}.ink-cloud{pointer-events:none;transform-origin:50% 4%;will-change:transform, opacity;position:absolute}.ink-cloud canvas{transform-origin:50% 4%;will-change:transform, opacity;width:100%;height:100%;display:block;position:absolute;inset:0}.ink-wisp,.ink-haze{pointer-events:none;will-change:transform, opacity;display:block;position:absolute;top:0;left:0}.ink-wisp{transform-origin:50% 32%}.ink-haze{transform-origin:30% 86%}.ink-sec{contain:paint;padding-top:clamp(104px,18vh,200px);position:relative}.ink-sec.ink-career{contain:none;isolation:isolate}.ink-head{flex-wrap:wrap;align-items:baseline;gap:10px 28px;margin-bottom:clamp(36px,7vh,80px);display:flex}.ink-h{font-family:var(--ink-serif-f);letter-spacing:-.032em;color:var(--ink-sumi);font-size:clamp(52px,7vw,128px);font-weight:340;line-height:.95}.ink-proj{align-items:stretch}.ink-chambers{grid-column:1/-1}.ink-chamber{border-top:1px solid var(--ink-rule);position:relative}.ink-chamber-in{padding-block:clamp(28px,5vh,56px) clamp(56px,10vh,112px)}.ink-band{height:40svh;margin-inline:calc(var(--ink-m) * -1);pointer-events:none;position:relative;overflow:clip}.ink-tank{display:none}@media (min-width:960px){.ink-chambers{grid-column:1/7}.ink-chamber{flex-direction:column;justify-content:center;min-height:92vh;display:flex}.ink-chamber-in{padding-block:9vh}.ink-band{display:none}.ink-tank{grid-column:7/13;display:block;position:relative}.ink-tank-in{height:100vh;position:sticky;top:0;overflow:clip}}.ink-tank-caps{z-index:1;isolation:isolate;height:30px;position:absolute;bottom:clamp(24px,5vh,48px);left:8%;right:0}.ink-tank-cap{max-width:100%;font-family:var(--ink-serif-f);color:var(--ink-ink2);opacity:0;transition:opacity .4s var(--ink-ease), transform .5s var(--ink-ease);font-size:18px;font-style:italic;position:absolute;bottom:0;left:0;transform:translateY(8px)}.ink-tank-cap:before{content:"";z-index:-1;background:radial-gradient(closest-side, var(--ink-water) 52%, #e9eff000);pointer-events:none;position:absolute;inset:-22px -46px}.ink-tank-cap span{font-feature-settings:"lnum", "tnum";color:var(--ink-sumi);margin-right:6px;font-style:normal}.ink-tank-cap[data-on]{opacity:1;transform:none}.ink-idx{font-family:var(--ink-serif-f);color:var(--ink-mute);margin-bottom:clamp(14px,2.4vh,24px);font-size:18px;font-style:italic}.ink-idx-n{font-feature-settings:"lnum", "tnum";color:var(--ink-sumi);font-style:normal}.ink-pt{font-family:var(--ink-serif-f);font-weight:360;font-size:clamp(40px, var(--ink-td), 124px);letter-spacing:-.03em;overflow-wrap:break-word;margin-bottom:clamp(18px,3vh,28px);line-height:.98}.ink-pt-a{display:inline}.ink-pt-t{background-image:linear-gradient(var(--ink-sumi), var(--ink-sumi));transition:background-size .6s var(--ink-ease);background-position:0 94%;background-repeat:no-repeat;background-size:0% 2px}.ink-pt-a:hover .ink-pt-t,.ink-pt-a:focus-visible .ink-pt-t{background-size:100% 2px}.ink-pt-go{font-family:var(--ink-sans-f);letter-spacing:0;color:var(--ink-pigment);opacity:0;transition:opacity .3s, transform .4s var(--ink-ease);margin-top:10px;font-size:15px;line-height:1.4;display:block;transform:translate(-6px)}.ink-pt-a:hover .ink-pt-go,.ink-pt-a:focus-visible .ink-pt-go{opacity:1;transform:none}.ink-lead{max-width:40ch;color:var(--ink-sumi);text-wrap:pretty;font-size:20px;line-height:1.55}.ink-lead.is-quiet{color:var(--ink-ink2)}.ink-lead2{max-width:46ch;color:var(--ink-ink2);margin-top:12px;font-size:17px;line-height:1.6}.ink-spec{border-top:1px solid var(--ink-rule);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 28px;max-width:520px;margin-top:clamp(24px,4vh,36px);padding-top:18px;display:grid}.ink-spec dt{color:var(--ink-mute);letter-spacing:.01em;font-size:13px;font-weight:500}.ink-spec dd{color:var(--ink-sumi);font-variant-numeric:tabular-nums;font-size:16px;line-height:1.45}.ink-dd-m{font-family:var(--ink-serif-f);color:var(--ink-mute);margin-left:8px;font-size:16px;font-style:italic}.ink-links{flex-wrap:wrap;gap:12px 36px;margin-top:clamp(22px,3.6vh,32px);display:flex}.ink-links a{flex-direction:column;justify-content:center;max-width:100%;min-height:44px;display:inline-flex}.ink-links-k{color:var(--ink-mute);font-size:13px;font-weight:500}.ink-links-v{color:var(--ink-sumi);background-image:linear-gradient(var(--ink-rule), var(--ink-rule));overflow-wrap:anywhere;background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;padding-bottom:3px;font-size:16px;line-height:1.4;transition:color .2s}.ink-links a:hover .ink-links-v{color:var(--ink-pigment);background-image:linear-gradient(var(--ink-pigment), var(--ink-pigment))}.ink-more-list{column-gap:calc(var(--ink-g) * 2.5);grid-template-columns:minmax(0,1fr);display:grid}@media (min-width:960px){.ink-more-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.ink-more-list>li{--w:1}.ink-mrow{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:6px 18px;padding:22px 0 28px;display:grid;position:relative}.ink-mrow:before,.ink-mrow:after{content:"";transform-origin:0;height:1px;transform:scaleX(var(--w));pointer-events:none;position:absolute;top:0;left:0;right:0}.ink-mrow:before{background:var(--ink-rule)}.ink-mrow:after{opacity:clamp(0, calc((1 - var(--w)) * 2.6), 1);background:linear-gradient(270deg,#12141c99,#12141c00 22%)}.ink-mrow .m-t{font-family:var(--ink-serif-f);letter-spacing:-.018em;background-image:linear-gradient(var(--ink-sumi), var(--ink-sumi));transition:background-size .5s var(--ink-ease);overflow-wrap:anywhere;background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;justify-self:start;font-size:clamp(26px,2.2vw,36px);font-weight:380;line-height:1.1}a.ink-mrow:hover .m-t,a.ink-mrow:focus-visible .m-t{background-size:100% 1px}.ink-mrow .m-m{color:var(--ink-mute);text-align:right;font-variant-numeric:tabular-nums;font-size:15px}.ink-mrow .m-s{max-width:52ch;color:var(--ink-ink2);grid-column:1/-1;font-size:17px;line-height:1.55}.ink-skills-head{grid-column:1/-1;margin-bottom:clamp(28px,6vh,64px)}.ink-skills-head .ink-note{margin-top:14px}.ink-sed{gap:clamp(36px, 6vh, 56px) var(--ink-g);grid-column:1/-1;grid-template-columns:minmax(0,1fr);align-items:end;display:grid}.ink-sg{--p:1;min-width:0}.ink-sg-l{column-gap:var(--ink-g);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ink[data-live]:not([data-still]) .ink-sg-l li{will-change:transform}.ink-sg-l li{--pk:clamp(0, calc((var(--p) - var(--d,0)) / (1 - var(--d,0))), 1);font-family:var(--ink-serif-f);font-size:clamp(24px, var(--sk-fs,1.9vw), 46px);letter-spacing:-.012em;color:var(--ink-sumi);overflow-wrap:anywhere;transform:translate3d(calc(var(--x,0px) * (1 - var(--pk))), calc(var(--y,0px) * (1 - var(--pk))), 0) rotate(calc(var(--r,0deg) * (1 - var(--pk))));font-weight:380;line-height:1.24}.ink-sg-k{font-family:var(--ink-serif-f);color:var(--ink-ink2);margin-top:16px;padding-top:12px;font-size:18px;font-style:italic;line-height:1.35;position:relative}.ink-sg-k:before{content:"";transform-origin:0;height:1px;transform:scaleX(calc(.15 + .85 * var(--p)));background:#12141c80;position:absolute;top:0;left:0;right:0}.ink-sg-k span{font-style:normal;font-family:var(--ink-sans-f);color:var(--ink-mute);font-variant-numeric:tabular-nums;margin-left:6px;font-size:13px}@media (max-width:959px){.ink[data-live]:not([data-still]) .ink-sg{padding-top:16vh}}@media (min-width:960px){.ink-skills{--p:1}.ink-sg{--p:inherit}.ink-skills-in{align-items:end}.ink-skills-head{grid-column:1/4;align-self:start}.ink-sed{grid-column:4/13;grid-template-columns:repeat(var(--cols), minmax(0, 1fr))}.ink-sg{grid-column:span var(--sub,1)}.ink-sg-l{grid-template-columns:repeat(var(--sub,1), minmax(0, 1fr));grid-template-rows:repeat(var(--rows,8), auto);grid-auto-flow:column}.ink[data-live]:not([data-still]) .ink-skills{height:210vh;padding-top:0}.ink[data-live]:not([data-still]) .ink-skills-stage{height:100vh;position:sticky;top:0}.ink[data-live]:not([data-still]) .ink-skills-in{grid-template-rows:1fr;height:100%;padding-top:clamp(80px,14vh,150px);padding-bottom:clamp(48px,10vh,110px)}.ink[data-live]:not([data-still]) .ink-skills-head{grid-row:1}.ink[data-live]:not([data-still]) .ink-sed{grid-row:1;align-self:end}}.ink-roles-wrap{--th:calc(var(--ink-m) * .5);position:relative}.ink-thread{--t:1;top:0;bottom:0;left:var(--th);pointer-events:none;width:1px;position:absolute}.ink-thread-l{transform-origin:50% 0;transform:scaleY(var(--t));will-change:transform;background:#12141c57;position:absolute;inset:0}.ink-thread-d{transform:translate3d(0, calc(var(--t) * 100%), 0);will-change:transform;position:absolute;inset:0}.ink-phead{transform-origin:50% 0;width:54px;max-width:none;height:auto;transform:translate3d(-50%, 0, 0) scale(calc(.78 + .4 * var(--t)));will-change:transform;pointer-events:none;position:absolute;top:-12px;left:0}.ink-thread-d.has-head:after{opacity:0}@media (max-width:959px){.ink-phead{width:18px;top:-4px}}.ink-thread-d:after{content:"";background:var(--ink-sumi);border-radius:50%/62% 62% 38% 38%;width:9px;height:11px;position:absolute;top:-10px;left:-4px}.ink-role{padding-block:clamp(36px,7vh,72px) clamp(44px,8vh,84px);position:relative}.ink-stratum{--s:1;left:calc(var(--ink-m) * -.5);background:var(--ink-stratum,none) center / 100% 100% no-repeat;transform-origin:0;height:44px;transform:scaleX(calc(.03 + .97 * var(--s)));opacity:calc(.2 + .8 * var(--s));pointer-events:none;will-change:transform, opacity;margin-top:-22px;position:absolute;top:0;right:0}.ink-stratum:after{content:"";background:linear-gradient(90deg,#12141c0d,#12141c38 24%,#12141c24 70%,#12141c00);height:1px;position:absolute;top:50%;left:0;right:0}.ink-role-in{padding-left:calc(var(--ink-m) * .3);align-items:start;row-gap:10px;position:relative}.ink-role-when{color:var(--ink-ink2);font-variant-numeric:tabular-nums;grid-column:1/-1;font-size:15px;line-height:1.5}.ink-role-when span{font-family:var(--ink-serif-f);color:var(--ink-mute);margin-left:10px;font-size:16px;font-style:italic;display:inline}.ink-role-body{grid-column:1/-1}.ink-role-t{font-family:var(--ink-serif-f);letter-spacing:-.022em;text-wrap:balance;font-size:clamp(30px,3.3vw,58px);font-weight:360;line-height:1.04}.ink-role-o{font-family:var(--ink-serif-f);color:var(--ink-ink2);margin-top:6px;font-size:21px;font-style:italic;line-height:1.4}.ink-role-d{max-width:56ch;color:var(--ink-sumi);margin-top:16px;font-size:18px;line-height:1.6}.ink-role-k{display:none}@media (min-width:960px){.ink-roles-wrap{--th:calc(var(--ink-m) + (100% - 2 * var(--ink-m) - 11 * var(--ink-g)) / 12 * 3 + var(--ink-g) * 2.5)}.ink-stratum{transform-origin:23.5%;left:0}.ink-role-in{padding-left:0}.ink-role-when{grid-column:1/4;padding-top:.7em}.ink-role-when span{margin:2px 0 0;display:block}.ink-role-body{padding-left:var(--ink-g);grid-column:4/10}.ink-role-k{text-align:right;color:var(--ink-mute);grid-column:10/13;padding-top:.9em;font-size:13px;font-weight:500;display:block}}.ink-cert-list>li{--c:1}.ink-crow{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:4px 18px;padding:20px 0 24px;display:grid;position:relative}.ink-crow:before,.ink-crow:after{content:"";pointer-events:none;position:absolute;left:0;right:0}.ink-crow:before{background:var(--ink-rule);height:1px;opacity:calc(.12 + .88 * var(--c));top:0}.ink-crow:after{height:17px;transform:scaleY(calc(.08 + .92 * (1 - var(--c))));opacity:calc(1 - var(--c));will-change:transform, opacity;background:linear-gradient(#404c6c00,#404c6c29 50%,#404c6c00);top:-8px}.ink-crow .c-t{font-family:var(--ink-serif-f);letter-spacing:-.015em;font-size:clamp(24px,2.2vw,34px);font-weight:380;line-height:1.15}.ink-crow .c-i{font-family:var(--ink-serif-f);color:var(--ink-ink2);grid-area:2/1;font-size:18px;font-style:italic}.ink-crow .c-y{color:var(--ink-mute);font-variant-numeric:tabular-nums;grid-area:1/2;font-size:15px}a.ink-crow:hover .c-t{color:var(--ink-pigment)}@media (min-width:960px){.ink-crow{grid-template-columns:minmax(0,7fr) minmax(0,4fr) minmax(0,1fr)}.ink-crow .c-i{grid-area:1/2}.ink-crow .c-y{text-align:right;grid-column:3}}.ink-act-top{align-items:end;row-gap:28px;margin-bottom:clamp(44px,9vh,96px)}.ink-total{font-family:var(--ink-serif-f);letter-spacing:-.045em;font-variant-numeric:lining-nums proportional-nums;grid-column:1/-1;font-size:clamp(88px,13vw,232px);font-weight:280;line-height:.84}.ink-total span{font-family:var(--ink-sans-f);letter-spacing:0;color:var(--ink-ink2);margin-top:18px;font-size:16px;font-weight:400;line-height:1.5;display:block}.ink-act-spec{grid-column:1/-1;max-width:none;margin-top:0}@media (min-width:960px){.ink-total{grid-column:1/8}.ink-act-spec{grid-column:9/13;grid-template-columns:minmax(0,1fr)}.ink-act-spec div{justify-content:space-between;align-items:baseline;gap:16px;display:flex}}.ink-drops-plot{--p:1;contain:paint;border-top:1px solid #12141c6b;height:clamp(170px,30vh,300px);display:flex;position:relative;box-shadow:0 1px #ffffffb3}.ink-drops-wash{background:radial-gradient(ellipse 46% 100% at calc(var(--pk,.5) * 100%) 0, #404c6c21, #404c6c00 100%);height:58%;transform-origin:calc(var(--pk,.5) * 100%) 0;transform:scaleX(clamp(.02, calc(var(--p) * 1.3), 1));opacity:clamp(0, min(var(--p) * 4, (1 - var(--p)) * 2.4), 1);pointer-events:none;will-change:transform, opacity;position:absolute;top:0;left:0;right:0}.ink-wk{--f:clamp(0, calc((var(--p) * 1.35 - var(--dk,0)) * 3.4), 1);flex-direction:column;flex:1 1 0;align-items:center;min-width:0;padding-bottom:18px;display:flex}.ink-wk i{width:100%;height:calc(var(--h) * 100%);transform:translate3d(0, calc((var(--f) - 1) * 100%), 0);opacity:calc(.25 + .75 * var(--f));flex-direction:column;align-items:center;display:flex}.ink[data-live]:not([data-still]) .ink-wk i{will-change:transform, opacity}.ink-wk i:before{content:"";background:linear-gradient(#12141c1f,#12141c80);flex:auto;width:1px}.ink-wk i:after{content:"";width:calc(4px + var(--h) * 6px);height:calc(5px + var(--h) * 8px);margin:calc(-2px - var(--h) * 6px) 0 calc(-3px - var(--h) * 2px);background:var(--ink-sumi);border-radius:50%/62% 62% 38% 38%;flex:none}.ink-wk.is-zero i:after{background:#12141c59;width:3px;height:3px;margin:1px 0 -4px}.ink-wk.is-peak i:before{background:linear-gradient(#a3243b26,#a3243bb3)}.ink-wk.is-peak i:after{background:var(--ink-pigment)}.ink-drops-axis{height:22px;margin-top:8px;position:relative}.ink-drops-axis span{top:0;left:calc(var(--at) * 100%);color:var(--ink-mute);white-space:nowrap;font-size:13px;line-height:1.4;position:absolute}.ink-drops-axis span:before{content:"";background:var(--ink-rule);width:1px;height:5px;position:absolute;top:-8px;left:0}@media (max-width:959px){.ink-drops-axis span:nth-child(2n){display:none}.ink-wk i:after{width:calc(3px + var(--h) * 3px);height:calc(4px + var(--h) * 4px);margin:calc(-2px - var(--h) * 3px) 0 calc(-2px - var(--h) * 1px)}.ink-wk.is-zero i:after{width:3px;height:3px;margin:1px 0 -4px}}.ink-contact{isolation:isolate}.ink-clear{z-index:-1;pointer-events:none;will-change:opacity;background:radial-gradient(80% 58% at 34% 40%,#f6f6f39e,#f6f6f300 100%);position:absolute;inset:0}.ink-contact-head{align-items:flex-end;min-height:62vh;padding-bottom:clamp(36px,7vh,72px);display:flex}.ink-contact-t{font-family:var(--ink-serif-f);letter-spacing:-.045em;font-size:clamp(76px,15vw,270px);font-weight:300;line-height:.86;position:relative}.ink-contact-t .ink-base{--p:1;--q:clamp(0, calc((var(--p) - .55) / .45), 1);vertical-align:baseline;width:.2em;height:0;display:inline-block;position:relative}.ink-contact-t .ink-cloud-host{width:0;height:0;inset:0 auto auto 0}.ink-contact-t .ink-stop{transform-origin:50% 60%;opacity:var(--q);transform:scale(calc(1.45 - .45 * var(--q)));will-change:transform, opacity}.ink-stop-soft{width:.13em;height:.15em;transform:scale(calc(1 + (1 - var(--q)) * 3.4));opacity:calc((1 - var(--q)) * clamp(0, calc(var(--p) * 2.4), 1));pointer-events:none;will-change:transform, opacity;background:radial-gradient(closest-side,#12141c6b,#12141c00);border-radius:50%;margin-top:-.15em;position:absolute;top:0;left:.05em}.ink-contact-body{align-items:start;row-gap:56px;padding-bottom:clamp(88px,16vh,180px)}.ink-else,.ink-form{grid-column:1/-1}@media (min-width:960px){.ink-else{grid-column:1/6}.ink-form{grid-column:7/13}}.ink-else ul{border-top:1px solid var(--ink-rule);margin-top:20px}.ink-else li a{border-bottom:1px solid var(--ink-rule);justify-content:space-between;align-items:baseline;gap:18px;min-height:44px;padding:18px 0 20px;display:flex}.ink-else-n{font-family:var(--ink-serif-f);letter-spacing:-.015em;font-size:clamp(26px,2.4vw,38px);font-weight:380;line-height:1.1;transition:color .2s}.ink-else-u{color:var(--ink-mute);text-align:right;overflow-wrap:anywhere;min-width:0;font-size:15px;line-height:1.4}.ink-else li a:hover .ink-else-n{color:var(--ink-pigment)}.ink-form .ink-note{margin-bottom:20px}.ink-form form>*+*{margin-top:18px}.ink-form label>span{font-family:var(--ink-sans-f);letter-spacing:.01em;text-transform:none;color:var(--ink-mute);font-size:13px;font-weight:500;display:block}.ink-form input:not([type=hidden]):not([aria-hidden=true]),.ink-form textarea{width:100%;box-shadow:none;color:var(--ink-sumi);font-family:var(--ink-sans-f);background:0 0;border:0;border-bottom:1px solid #12141c52;border-radius:0;outline:none;margin-top:4px;padding:12px 0;font-size:18px;line-height:1.5;transition:border-color .2s;display:block}.ink-form textarea{resize:vertical;min-height:132px}.ink-form input:focus,.ink-form textarea:focus{border-bottom-color:var(--ink-sumi);box-shadow:0 1px 0 var(--ink-sumi)}.ink-form input:focus-visible,.ink-form textarea:focus-visible{box-shadow:0 2px 0 var(--ink-pigment);border-bottom-color:var(--ink-pigment);outline:none}.ink-form ::placeholder{color:#6b7281;opacity:1}.ink-form button{background:var(--ink-sumi);min-height:48px;color:var(--ink-air);font-family:var(--ink-sans-f);letter-spacing:.01em;text-transform:none;box-shadow:none;cursor:pointer;border:0;border-radius:0;align-items:center;padding:12px 26px;font-size:16px;font-weight:500;transition:background-color .25s;display:inline-flex}.ink-form button:hover{background:#2a2f3c}.ink-form [role=status],.ink-form [role=alert]{color:var(--ink-ink2);font-size:17px}.ink-form [role=alert]{color:var(--ink-pigment)}.ink-foot{border-top:1px solid var(--ink-rule);color:var(--ink-ink2);row-gap:10px;padding-block:28px 44px;font-size:15px;line-height:1.5}.ink-foot-a,.ink-foot-b,.ink-foot-c{grid-column:1/-1}@media (min-width:960px){.ink-foot-a{grid-column:1/5}.ink-foot-b{text-align:center;grid-column:5/9}.ink-foot-c{text-align:right;grid-column:9/13}}.ink-foot a{margin-block:-10px;padding-block:10px;display:inline-block}.ink-cursor{z-index:70;pointer-events:none;display:none;position:fixed;inset:0}.ink[data-cursor] .ink-cursor{display:block}.ink[data-cursor],.ink[data-cursor] *{cursor:none}.ink[data-cursor] :is(input,textarea,select){cursor:text}.ink-cursor-d,.ink-cursor-h{opacity:0;transition:opacity .25s, width .3s var(--ink-ease), height .3s var(--ink-ease), margin .3s var(--ink-ease), box-shadow .3s, background-color .3s;border-radius:50%;position:absolute;top:0;left:0}.ink-cursor-d{background:var(--ink-sumi);width:8px;height:8px;margin:-4px 0 0 -4px}.ink-cursor-h{background:radial-gradient(circle,#12141c29,#12141c0d 45%,#12141c00 70%);width:46px;height:46px;margin:-23px 0 0 -23px}.ink-cursor[data-on]>*{opacity:1}.ink-cursor[data-hover] .ink-cursor-d{background:var(--ink-pigment);width:5px;height:5px;margin:-2.5px 0 0 -2.5px}.ink-cursor[data-hover] .ink-cursor-h{background:0 0;width:34px;height:34px;margin:-17px 0 0 -17px;box-shadow:inset 0 0 0 1px #12141c6b}.ink-clicks{z-index:2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.ink-bloom{width:0;height:0;position:absolute}.ink-bloom img{transform-origin:50% 5%;width:240px;max-width:none;height:auto;animation:2s cubic-bezier(.2,.7,.2,1) forwards ink-bloom;position:absolute;top:-14px;left:-120px}.ink-bloom i{border:1px solid #12141c61;border-radius:50%;width:68px;height:12px;animation:1s ease-out forwards ink-ring;position:absolute;top:-6px;left:-34px}@keyframes ink-bloom{0%{opacity:0;transform:rotate(var(--a)) scale(.12)}16%{opacity:.85}to{opacity:0;transform:rotate(var(--a)) scale(1)}}@keyframes ink-ring{0%{opacity:.9;transform:scale(.2)}to{opacity:0;transform:scale(2.2)}}@media (max-width:959px){.ink[data-live]:not([data-still]) .ink-hero{height:170svh}.ink-hero-stage{min-height:100svh}.ink-rail{row-gap:6px}.ink-rail-a{grid-column:1/-1}.ink-rail-b{grid-column:1/-1;gap:2px 18px}.ink-rail-b p:nth-child(n+2){display:none}.ink-rail-c{grid-column:1/4}.ink-rail-d{grid-column:4/5}.ink-name,.ink-lockup.is-side .ink-name{font-size:var(--ink-nm);grid-column:1/-1;line-height:.92}.ink-name .ink-word{display:inline-block}.ink-bio,.ink-bio.is-long,.ink-lockup.is-side .ink-bio{grid-area:1/1/auto/-1;align-self:auto;margin-bottom:clamp(24px,4.5vh,40px);font-size:17px}.ink-under{height:44svh}.ink-contents{display:none}.ink-chamber-in{padding-top:22px}.ink-pt{font-size:clamp(36px, var(--ink-tm), 64px)}.ink-lead{font-size:18px}.ink-contact-head{min-height:46vh}}@media (prefers-reduced-motion:reduce){.ink *,.ink :before,.ink :after{transition:none!important;animation:none!important}.ink-sg-l li{transform:none}}
