.hero{min-height:calc(100svh - var(--header-h));flex-direction:column;padding-top:clamp(18px,4svh,48px);display:flex}.hero__in{flex-direction:column;flex:1 0 auto;display:flex}.hero__mast{align-items:center;gap:clamp(14px,1.6vw,24px);display:flex}.hero__mast .label{flex:none;margin:0}.hero__role{font-size:.8125rem}.hero__leader{background:var(--line-strong);transform-origin:0;flex:auto;min-width:24px;height:1px}.hero__name{margin-top:clamp(10px,2.2svh,26px);padding-bottom:clamp(10px,2.1vw,30px);container-type:inline-size}.hero__h1{--fs:clamp(3.5rem, min(100cqi / (var(--n,16) * .3325 + .34), 27svh), 17rem);font-family:var(--font-display);font-size:var(--fs);letter-spacing:-.04em;white-space:nowrap;margin:0;font-weight:400;line-height:.86}.hero__line{clip-path:inset(-.14em -.4em -.27em -.3em);display:inline-block}.hero__ink{display:block}.hero__spark{background:var(--ember);width:.118em;height:.118em;box-shadow:0 0 0 .03em var(--ember-soft), 0 0 .34em #ff5a1f6b;border-radius:50%;margin-left:.045em;display:inline-block}.hero__rule{margin-top:clamp(8px,1.4svh,16px)}.hero__deck{column-gap:var(--col-gap);grid-template-columns:repeat(12,minmax(0,1fr));row-gap:28px;padding-top:clamp(20px,3.2svh,36px);display:grid}.hero__lead{grid-column:1/span 5}.hero__tagline{max-width:13.5em;font-family:var(--font-display);letter-spacing:-.014em;text-wrap:balance;margin:0;font-size:clamp(1.75rem,2.9vw,2.75rem);font-style:italic;line-height:1.04}.hero__lede{letter-spacing:-.006em;max-width:30em;margin:clamp(16px,2.4svh,26px) 0 0;font-size:clamp(1.0625rem,1.3vw,1.1875rem);line-height:1.46}.hero__more{max-width:62ch;color:var(--ink-2);grid-column:7/-1;align-content:start;gap:.9em;padding-top:.35em;font-size:1rem;line-height:1.6;display:grid}.hero__more p{margin:0}.hero__deck:not(:has(.hero__more)) .hero__lead{grid-column:1/span 8}.hero__actions{padding-right:var(--dock-reach,130px);flex-wrap:wrap;align-items:center;gap:12px 14px;margin-top:clamp(26px,4.6svh,48px);display:flex}.hero__actions .pill{max-width:100%}.hero__elsewhere{flex-wrap:wrap;align-items:center;gap:0 22px;margin:0;padding:0;list-style:none;display:flex}.hero__actions .hero__elsewhere{padding-left:10px}.hero__elsewhere .arrow-link{min-height:44px}.hero__contents{margin-top:auto;padding-top:clamp(28px,5svh,64px)}.hero__contents ol{border-top:1px solid var(--line);grid-template-columns:repeat(6,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.hero__contents a{min-height:56px;font-size:var(--fs-small);transition:color var(--t-ui) var(--ease-out);align-items:baseline;gap:12px;padding-top:16px;font-weight:450;display:inline-flex}.hero__contents a>span:last-child{transition:transform .32s var(--ease-out)}.hero__contents a:hover{color:var(--ember-ink)}.hero__contents a:hover .label{color:inherit}.hero__contents a:hover>span:last-child{transform:translate(4px)}@media (max-width:1100px){.hero__lead{grid-column:1/span 6}.hero__more{grid-column:7/-1}}@media (max-width:900px){.hero__lead,.hero__more{grid-column:1/-1}.hero__more{padding-top:0}.hero__actions{padding-right:0}.hero__actions .hero__elsewhere{flex:1 0 100%;padding-left:0}.hero__contents ol{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:860px){.hero{padding-top:22px}.hero__mast{flex-wrap:wrap;row-gap:4px}.hero__h1{--fs:clamp(3.75rem, min(100cqi / (var(--m,8) * .452 + .34), 24svh), 10rem);white-space:normal}.hero__line{white-space:nowrap;display:block}.hero__line--b{margin-top:.02em}.hero__tagline{max-width:15em;font-size:clamp(1.625rem,6.6vw,2.125rem)}.hero__contents ol{grid-template-columns:repeat(2,minmax(0,1fr))}}.work__stage{width:min(100% - 2*clamp(12px,2.4vw,40px),1720px);margin-inline:auto;position:relative}@media (max-width:760px){.work__stage>.crop{display:none}}.docs{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(36px,4.6vw,72px);padding-inline:6px;display:grid}.docs:has(>.doc:only-child){grid-template-columns:minmax(0,46rem)}.doc{rotate:calc(var(--lean) * -.7deg);position:relative}.doc[data-lean=b]{rotate:calc(var(--lean) * .55deg);margin-top:clamp(24px,4vw,64px)}.doc__under{background:var(--sheet);box-shadow:0 0 0 1px color-mix(in srgb, var(--ink) 8%, transparent);border-radius:3px;position:absolute;inset:0;translate:7px 8px;rotate:1.3deg}.doc__under--2{translate:-5px 5px;rotate:-.9deg}.doc__page{--ear:clamp(26px, 3vw, 40px);flex-direction:column;min-height:clamp(26rem,38vw,34rem);padding:clamp(24px,3vw,44px) clamp(22px,3.2vw,48px) clamp(22px,2.6vw,36px);display:flex}.doc__run{padding-right:var(--ear);flex-wrap:wrap;justify-content:space-between;gap:4px 20px;margin-bottom:12px;display:flex}.doc__title{max-width:19em;font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;margin-top:clamp(22px,2.8vw,38px);font-size:clamp(1.75rem,2.75vw,2.625rem);line-height:1.04}.doc__notes{font-size:var(--fs-small);color:var(--ink-2);gap:.8em;margin:clamp(20px,2.4vw,30px) 0 0;padding:0;line-height:1.55;list-style:none;display:grid}.doc__notes li{padding-left:1.9em;position:relative}.doc__n{font-family:var(--font-mono);color:var(--ember-ink);font-size:.6875rem;font-weight:500;position:absolute;top:.12em;left:0}.doc__n:after{content:"";background:var(--line-strong);width:.55em;height:1px;position:absolute;top:.72em;left:1.1em}.doc__slip{justify-content:space-between;align-items:flex-end;gap:16px;margin-top:auto;padding-top:clamp(26px,3.2vw,44px);display:flex;position:relative}.doc__status{border:1px dashed var(--line-strong);background:color-mix(in srgb, var(--paper-sunken) 55%, transparent);border-radius:2px;flex:auto;max-width:26rem;padding:12px 16px 13px}.doc__status-text{font-family:var(--font-display);color:var(--ink);margin-top:5px;font-size:clamp(1.125rem,1.5vw,1.3125rem);font-style:italic;line-height:1.22}.doc__stamp{--tilt:-7deg;flex:none;margin:0 4px 10px -34px;padding:9px 14px 8px;font-size:.8125rem}.doc__stamp[data-status=verified]{color:var(--ink)}.doc__foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 24px;margin-top:18px;padding-top:12px;display:flex}.doc__links{flex-wrap:wrap;gap:0 24px;display:flex}@media (max-width:900px){.docs{grid-template-columns:minmax(0,1fr)}.doc[data-lean=b]{margin-top:0}.doc__page{min-height:0}}@media (max-width:520px){.doc,.doc[data-lean=b]{rotate:calc(var(--lean) * -.35deg)}.doc__slip{flex-direction:column;align-items:stretch}.doc__stamp{align-self:flex-end;margin:-18px 6px 0 0}}.scene[data-scene=research] .block{margin-top:clamp(56px,7vw,104px)}.roles{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(28px,4vw,64px);margin:0;padding:0;list-style:none;display:grid}.roles>li{border-bottom:1px solid var(--line)}.roles__row{column-gap:var(--col-gap);grid-template-columns:minmax(0,1fr) auto;align-items:end;row-gap:8px;padding-block:22px 20px;display:grid}.roles__row>.label{grid-column:1/-1}.roles__title{font-family:var(--font-display);letter-spacing:-.016em;transition:color var(--t-ui) var(--ease-out);font-size:clamp(1.625rem,2.4vw,2.125rem);line-height:1.06;display:block}.roles__org{font-size:var(--fs-small);color:var(--ink-2);margin-top:6px;display:block}.roles__go{border:1px solid var(--line-strong);width:44px;height:44px;color:var(--ink);transition:color var(--t-ui) var(--ease-out), background-color var(--t-ui) var(--ease-out), border-color var(--t-ui) var(--ease-out), transform .32s var(--ease-out);border-radius:50%;place-items:center;display:grid}.roles__go svg{width:17px;height:17px}.roles__row:hover .roles__title{color:var(--ember-ink)}.roles__row:hover .roles__go{background:var(--ember);border-color:var(--ember);color:#111214;transform:translateY(3px)}@media (max-width:760px){.roles{grid-template-columns:minmax(0,1fr)}}.log{grid-template-columns:12.5rem 44px minmax(0,1fr);column-gap:clamp(8px,1.4vw,20px);display:grid}.log__when{text-align:right;padding-top:6px}.log__when .stamp{--tilt:-2.5deg}.log:nth-child(2n) .log__when .stamp{--tilt:1.8deg}.log__rail{flex-direction:column;align-items:center;display:flex;position:relative}.log__node{border:1.5px solid var(--ink);background:var(--paper);width:15px;height:15px;box-shadow:0 0 0 4px var(--paper);border-radius:50%;flex:none;margin-top:12px}.log:first-child .log__node{background:var(--ember);border-color:var(--ember);box-shadow:0 0 0 4px var(--paper), 0 0 0 5px var(--ember-soft)}.log__thread{background:linear-gradient(to bottom, var(--ink) 0 60%, var(--line-strong));flex:auto;width:1.5px;margin-block:6px 0}.log:last-child .log__thread{background:linear-gradient(to bottom, var(--ink), transparent 70%);max-height:120px}.log__main{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:22px clamp(28px,4vw,64px);min-width:0;padding-bottom:clamp(56px,7vw,104px);display:grid}.log__main[data-solo]{grid-template-columns:minmax(0,44rem)}.log:last-child .log__main{padding-bottom:0}.log__title{font-family:var(--font-display);letter-spacing:-.026em;font-size:clamp(2.25rem,4vw,3.75rem);line-height:.98}.log__org{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin-top:12px;font-size:.8125rem;font-weight:450}.log__summary{white-space:pre-line;max-width:34ch;font-family:var(--font-display);letter-spacing:-.008em;color:var(--ink);margin-top:22px;font-size:clamp(1.375rem,1.9vw,1.75rem);font-style:italic;line-height:1.2}.log__detail{padding-top:clamp(6px,1vw,14px)}.log__bullets{max-width:62ch;color:var(--ink-2);font-size:var(--fs-body);gap:0;line-height:1.58}.log__bullets>li{border-top:1px solid var(--line);padding-block:14px}.log__bullets>li:first-child{border-top-color:var(--line-strong)}.log__bullets>li:before{background:var(--ember);height:1.5px;top:calc(14px + .8em)}.log__metrics{flex-wrap:wrap;gap:24px clamp(28px,4vw,56px);margin-top:24px;display:flex}.log__foot{flex-wrap:wrap;align-items:center;gap:4px 24px;margin-top:20px;display:flex}@media (max-width:1080px){.log__main{grid-template-columns:minmax(0,1fr)}.log__summary{max-width:30em}}@media (max-width:760px){.log{grid-template-columns:26px minmax(0,1fr);column-gap:14px}.log__when{text-align:left;grid-area:1/2;padding-top:0;padding-bottom:14px}.log__rail{grid-area:1/1/span 2}.log__main{grid-area:2/2}.log__node{margin-top:6px}}.awards__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,2.6vw,36px);margin:clamp(22px,2.6vw,32px) 0 0;padding:0;list-style:none;display:grid}.awards__list:has(>:only-child){grid-template-columns:minmax(0,44rem)}.award{outline:1px solid color-mix(in srgb, var(--ember-ink) 70%, transparent);outline-offset:-9px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px clamp(18px,2.2vw,30px);padding:clamp(22px,2.6vw,36px);display:grid}.award:before{content:"";border:1px solid color-mix(in srgb, var(--ember-ink) 32%, transparent);pointer-events:none;position:absolute;inset:13px}.award:nth-child(odd){rotate:calc(var(--lean) * -.45deg)}.award:nth-child(2n){rotate:calc(var(--lean) * .4deg)}.award__seal{filter:drop-shadow(0 2px 2px #281e142e)}.award__title{font-family:var(--font-display);letter-spacing:-.018em;text-wrap:balance;font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.04}.award__detail{font-size:var(--fs-small);color:var(--ink-2);white-space:pre-line;margin-top:8px}.award__proof{grid-column:2}@media (max-width:900px){.awards__list{grid-template-columns:minmax(0,1fr)}}@media (max-width:520px){.award{column-gap:16px;padding:24px 22px}.wall__grid .plate{min-height:0}.wall__grid .plate__foot{padding-top:22px}}.slips{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:14px clamp(16px,2vw,28px);margin:clamp(28px,3.4vw,44px) 0 0;padding:0;list-style:none;display:grid}.slip{border:1px dashed var(--line-strong);background:color-mix(in srgb, var(--paper-sunken) 46%, transparent);border-radius:2px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px 14px;padding:14px 16px 15px;display:grid}.slip__year{grid-column:1/-1}.slip__year:empty{display:none}.slip__title{font-size:1rem;font-weight:500;line-height:1.3}.slip__detail{color:var(--ink-2);margin-top:3px;font-size:.875rem;line-height:1.4}.wall{margin-top:clamp(64px,8vw,120px)}.wall__run+.wall__run{margin-top:clamp(56px,7vw,96px)}.wall__label{align-items:center;gap:12px;display:flex}.wall__label b{color:var(--ink);font-weight:450}.wall__label:after{content:"";background:var(--line);flex:1;height:1px}.wall__swatch{border:1px solid var(--ink-2);background:var(--sheet);border-radius:1px;flex:none;width:26px;height:18px}[data-kind=award]>.wall__label .wall__swatch{border:3px double var(--ember-ink)}[data-kind=course]>.wall__label .wall__swatch{border:3px double var(--ink-2)}[data-kind=workshop]>.wall__label .wall__swatch{border-style:solid dashed;border-radius:4px}[data-kind=participation]>.wall__label .wall__swatch{border-style:dashed;border-color:var(--line-strong);background:var(--paper-sunken)}.wall__grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,17.5rem),1fr));align-items:stretch;gap:clamp(40px,4.6vw,60px) clamp(22px,2.8vw,40px);margin:clamp(34px,4vw,52px) 0 0;padding:0;list-style:none;display:grid}[data-kind=originals]>.wall__label .wall__swatch{border:3px solid var(--ink);background:var(--paper-raised)}[data-kind=originals]>.wall__grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));align-items:start}[data-kind=participation]>.wall__grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,13.75rem),1fr));align-items:stretch;gap:14px clamp(12px,1.4vw,18px);margin-top:clamp(22px,2.6vw,30px)}.wall__run[data-folded]>.wall__grid>:nth-child(n+11){display:none}.wall__more{justify-content:center;margin-top:22px;display:flex}@media (max-width:760px){[data-kind=participation]>.wall__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wall__run[data-folded]>.wall__grid>:nth-child(n+7){display:none}}.cert{rotate:calc(var(--lean) * var(--hang,0deg));position:relative}.cert:hover,.cert:focus-within{z-index:3}.cert__top{justify-content:space-between;gap:12px;display:flex}.cert__kind{color:var(--ink)}.plate{background:var(--grain), var(--sheet-shade);height:100%;min-height:13.5rem;box-shadow:0 0 0 1px color-mix(in srgb, var(--ink) 9%, transparent), var(--shadow-2), inset 0 1px 0 var(--edge-light);transition:box-shadow .42s var(--ease-out);border-radius:2px;flex-direction:column;padding:22px 22px 18px;display:flex;position:relative}.plate:before{content:"";border:3px double var(--ink-2);pointer-events:none;border-radius:1px;position:absolute;inset:7px}.plate .pin{z-index:1;top:-5px;left:calc(50% - 6px)}.plate>:not(.pin){position:relative}.plate .cert__top{padding-top:6px}.plate__title{font-family:var(--font-display);letter-spacing:-.014em;text-wrap:balance;margin-top:18px;font-size:clamp(1.4375rem,1.9vw,1.6875rem);line-height:1.06}.plate__issuer{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin-top:8px;font-size:.75rem;font-weight:450}.plate__foot{justify-content:space-between;align-items:flex-end;gap:12px;min-height:46px;margin-top:auto;padding-top:18px;display:flex}.plate__seal{flex:none;margin:-6px -2px -4px 0}@media (hover:hover){.cert:hover .plate{box-shadow:0 0 0 1px color-mix(in srgb, var(--ink) 9%, transparent), var(--shadow-3), inset 0 1px 0 var(--edge-light)}}.cert[data-kind=award] .plate:before{border-color:var(--ember-ink)}.cert[data-kind=award] .cert__kind{color:var(--ember-ink)}.cert[data-kind=workshop] .plate{--notch:9px;--stub:62px;-webkit-mask:radial-gradient(circle var(--notch) at 0 calc(100% - var(--stub)), transparent 98%, #000) left / 51% 100% no-repeat, radial-gradient(circle var(--notch) at 100% calc(100% - var(--stub)), transparent 98%, #000) right / 51% 100% no-repeat;-webkit-mask:radial-gradient(circle var(--notch) at 0 calc(100% - var(--stub)), transparent 98%, #000) left / 51% 100% no-repeat, radial-gradient(circle var(--notch) at 100% calc(100% - var(--stub)), transparent 98%, #000) right / 51% 100% no-repeat;mask:radial-gradient(circle var(--notch) at 0 calc(100% - var(--stub)), transparent 98%, #000) left / 51% 100% no-repeat, radial-gradient(circle var(--notch) at 100% calc(100% - var(--stub)), transparent 98%, #000) right / 51% 100% no-repeat;border-radius:6px;padding-bottom:0}.cert[data-kind=workshop] .plate:before{display:none}.cert[data-kind=workshop] .plate__issuer{padding-bottom:20px}.cert[data-kind=workshop] .plate__foot{height:var(--stub);border-top:1.5px dashed var(--line-strong);align-items:center;min-height:0;padding-top:0}.cert[data-kind=workshop] .pin{display:none}.cert[data-kind=workshop]{filter:drop-shadow(0 1px 1px #281e1414)drop-shadow(0 6px 12px #281e1414)}.cert[data-kind=workshop] .plate{box-shadow:inset 0 1px 0 var(--edge-light)}.cert[data-kind=participation]{rotate:none}.cert[data-kind=participation] .plate{background:var(--grain), color-mix(in srgb, var(--paper-sunken) 70%, var(--paper));height:100%;min-height:0;box-shadow:0 0 0 1px color-mix(in srgb, var(--ink) 6%, transparent);padding:14px 16px 12px}.cert[data-kind=participation] .plate:before{border:1px dashed var(--line-strong);inset:4px}.cert[data-kind=participation] .cert__top{padding-top:0;font-size:.6875rem}.cert[data-kind=participation] .plate .cert__kind{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.cert[data-kind=participation] .plate__title{font-family:var(--font-sans);letter-spacing:0;margin-top:8px;font-size:.9375rem;font-weight:500;line-height:1.3}.cert[data-kind=participation] .plate__issuer{margin-top:5px;font-size:.6875rem}.cert[data-kind=participation] .plate__foot{min-height:0;padding-top:10px}.cert[data-kind=participation] .pin{display:none}.cert[data-kind=participation] .cert__kind{color:var(--mute)}.cert[data-kind=none] .plate:before{border:1px solid var(--line-strong)}.frame{padding-top:26px;position:relative}.frame__wire{width:76%;height:28px;position:absolute;top:0;left:12%;overflow:visible}.frame__wire path{fill:none;stroke:var(--ink-2);stroke-width:1px;vector-effect:non-scaling-stroke}.frame__nail{background:radial-gradient(circle at 35% 30%, var(--mute), var(--ink) 70%);border-radius:50%;width:8px;height:8px;position:absolute;top:0;left:calc(50% - 4px);box-shadow:1px 2px 2px #281e144d}.frame__glass{border:7px solid var(--ink);background:var(--paper-raised);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 30%, transparent), inset 0 2px 5px #281e1433, var(--shadow-3);cursor:zoom-in;border-radius:2px;padding:clamp(10px,1.2vw,16px);display:block;position:relative}:root.is-dim .frame__glass{border-color:#2b2926}.frame__glass img{width:100%;height:auto;box-shadow:0 0 0 1px var(--line)}:root.is-dim .frame__glass img{filter:brightness(.88)}.frame__zoom{background:var(--ink);width:38px;height:38px;color:var(--paper);box-shadow:var(--shadow-2);opacity:0;transition:opacity var(--t-ui) var(--ease-out), transform var(--t-ui) var(--ease-out);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:14px;right:14px;transform:scale(.8)}.frame__zoom svg{width:17px;height:17px}.frame__glass:hover .frame__zoom,.frame__glass:focus-visible .frame__zoom{opacity:1;transform:none}@media (hover:none){.frame__zoom{opacity:1;transform:none}}.frame__label{border-left:1.5px solid var(--ink);gap:4px;margin-top:16px;padding-left:12px;display:grid}.frame__title{font-size:1rem;font-weight:500;line-height:1.3}.frame__issuer{color:var(--ink-2);font-size:.875rem}.frame__label .proof{margin-top:4px}.cert[data-kind=award] .frame__label{border-left-color:var(--ember)}.cert[data-kind=participation] .frame__glass{box-shadow:var(--shadow-2);border-width:3px}.cert[data-kind=participation] .frame .cert__kind{color:var(--ink)}.cert[data-kind=participation] .frame__label{border-left:1px dashed var(--line-strong)}@media print{.wall__run[data-folded]>.wall__grid>*{display:block!important}.wall__more{display:none}}.zoom{width:100%;max-width:none;height:100%;max-height:none;color:var(--paper);background:0 0;border:0;margin:0;padding:clamp(14px,3vw,40px);overflow:hidden}.zoom::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0b0b0cdb}.zoom[open]{grid-template-rows:minmax(0,1fr) auto;place-items:center;gap:14px;display:grid}.zoom__img{cursor:zoom-out;background:#fff;border-radius:2px;width:auto;max-width:100%;height:auto;max-height:100%;box-shadow:0 30px 80px #00000080}.zoom__bar{color:#eceae4;max-width:100%;font-size:var(--fs-small);align-items:center;gap:18px;display:flex}.zoom__close{color:#fff;min-height:44px;font-size:var(--fs-small);border:1px solid #fff6;border-radius:24px;align-items:center;gap:8px;padding:0 16px;display:inline-flex}.zoom__close:hover{background:#ffffff1f}.zoom__close svg{width:14px;height:14px}.bills{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:clamp(24px,3.4vw,52px);display:grid}.bills:has(>:only-child){grid-template-columns:minmax(0,52rem)}.bill{padding:clamp(24px,3vw,44px)}.bill:nth-child(odd){rotate:calc(var(--lean) * -.5deg)}.bill:nth-child(2n){rotate:calc(var(--lean) * .45deg);margin-top:clamp(0px,4vw,56px)}.bill:before{content:"";--fill:color-mix(in srgb, var(--ink) 30%, transparent);background:var(--hatch);opacity:.6;border-radius:3px 3px 0 0;height:10px;position:absolute;inset:0 0 auto}.bill__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;padding-top:8px;display:flex}.bill__head .stamp{--tilt:-2deg}.bill__title{font-family:var(--font-display);letter-spacing:-.022em;text-wrap:balance;margin-top:clamp(20px,2.4vw,32px);font-size:clamp(1.875rem,3vw,2.875rem);line-height:1.02}.bill__summary{white-space:pre-line;max-width:54ch;color:var(--ink-2);margin-top:16px}.bill__nums{grid-template-columns:repeat(var(--cols,3), minmax(0, 1fr));border-top:1px solid var(--line-strong);gap:clamp(22px,2.6vw,36px) clamp(20px,2.6vw,40px);margin-top:clamp(24px,3vw,40px);padding-top:clamp(20px,2.4vw,30px);display:grid}.metric--xl{--metric-fs:clamp(3.25rem, 5.2vw, 4.75rem);gap:10px}.metric--xl:first-child .metric__value{color:var(--ember-ink)}.bill__nums[data-count="1"]{--cols:1}.bill__nums[data-count="2"],.bill__nums[data-count="4"]{--cols:2}@media (max-width:520px){.bill__nums{--cols:2}}.tally{max-width:100%;height:auto;color:var(--ink-2);display:block}.tally path{stroke-width:1.5px}.bill__foot{border-top:1px solid var(--line);flex-wrap:wrap;gap:0 24px;margin-top:18px;padding-top:8px;display:flex}@media (max-width:900px){.bills{grid-template-columns:minmax(0,1fr)}.bill:nth-child(2n){margin-top:0}}.skills{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;column-gap:clamp(28px,4.4vw,76px);display:grid}.skills__how{max-width:44ch;font-size:var(--fs-small);color:var(--ink-2);margin-bottom:clamp(24px,3vw,40px)}.sgroup{column-gap:var(--col-gap);border-top:1px solid var(--line-strong);grid-template-columns:9rem minmax(0,1fr);padding-block:clamp(18px,2vw,26px);display:grid}.sgroup:last-child{border-bottom:1px solid var(--line-strong)}.sgroup__label{color:var(--ink);padding-top:.95em}.sgroup__list{flex-wrap:wrap;align-items:baseline;gap:2px clamp(14px,1.6vw,22px);margin:0;padding:0;list-style:none;display:flex}.skill{align-items:baseline;display:inline-flex}.skill__name{min-height:44px;font-family:var(--font-display);letter-spacing:-.012em;color:var(--ink);text-align:left;transition:color var(--t-ui) var(--ease-out);padding-block:6px 4px;font-size:clamp(1.4375rem,2vw,1.8125rem);line-height:1.15;display:inline-block;position:relative}.skill__name sup{vertical-align:baseline;font-family:var(--font-mono);letter-spacing:0;color:var(--ink-2);transition:color var(--t-ui) var(--ease-out);margin-left:.3em;font-size:.6875rem;font-weight:500;line-height:1;position:relative;top:-1.05em}button.skill__name:after{content:"";background:var(--ember);transform-origin:0;height:3px;transition:transform .42s var(--ease-out);border-radius:2px;position:absolute;bottom:6px;left:0;right:1em;transform:scaleX(0)}button.skill__name:hover{color:var(--ember-ink)}button.skill__name[aria-pressed=true]:after{transform:scaleX(1)}button.skill__name[aria-pressed=true] sup{color:var(--ember-ink)}.skill--bare .skill__name{color:var(--mute)}.skill__refs{color:var(--ink-2);margin-left:.6em;font-size:.8125rem}.skill__refs a{text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:.2em}.skills:not([data-live]) .skill{flex-wrap:wrap;flex:100%}.skills:not([data-live]) .spanel{display:none}.skills:not([data-live]){grid-template-columns:minmax(0,1fr)}.skills[data-live] .skill__refs{display:none}.spanel{top:calc(var(--header-h) + 28px);rotate:calc(var(--lean) * .5deg);padding:clamp(24px,2.8vw,38px) clamp(20px,2.4vw,34px) clamp(14px,1.6vw,22px);position:sticky}.spanel__tape{top:-11px;left:calc(50% - 37px);rotate:-2deg}.spanel__name{font-family:var(--font-display);letter-spacing:-.026em;text-wrap:balance;margin-top:8px;font-size:clamp(2.25rem,3.6vw,3.375rem);line-height:.98}.spanel__list{overscroll-behavior:contain;scrollbar-width:thin;max-height:min(56vh,30rem);margin:clamp(16px,2vw,24px) 0 0;padding:0;list-style:none;overflow-y:auto}.spanel__list>li{border-top:1px solid var(--line)}.sproj{min-height:60px;transition:color var(--t-ui) var(--ease-out);grid-template-columns:2.1rem minmax(0,1fr) auto auto;align-items:center;column-gap:12px;padding-block:10px;display:grid}.sproj__rank{font-family:var(--font-mono);color:var(--mute);font-size:.75rem;font-weight:500}.sproj__main{gap:2px;min-width:0;display:grid}.sproj__title{width:-moz-fit-content;width:fit-content;max-width:100%;font-family:var(--font-display);letter-spacing:-.012em;font-size:1.4375rem;line-height:1.08}.sproj__kicker{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;line-height:1.35;overflow:hidden}.sproj__progress{font-family:var(--font-mono);color:var(--mute);align-items:center;gap:8px;font-size:.6875rem;display:inline-flex}.sproj__bar{border:1px solid var(--line-strong);border-radius:1px;width:44px;height:7px;position:relative}.sproj__bar:before{content:"";width:var(--p,0%);--fill:var(--ink-2);background:var(--hatch);background-size:auto;position:absolute;inset:0 auto 0 0}.sproj__go{width:16px;height:16px;color:var(--mute);transition:transform .32s var(--ease-out), color var(--t-ui) var(--ease-out)}.sproj:hover{color:var(--ember-ink)}.sproj:hover .sproj__go{color:var(--ember-ink);transform:translate(4px)}@media (max-width:900px){.skills{grid-template-columns:minmax(0,1fr)}.spanel{margin-block:18px 22px;position:relative;top:auto;rotate:0deg}.spanel__list{max-height:none}}@media (max-width:640px){.sgroup{grid-template-columns:minmax(0,1fr);row-gap:4px}.sgroup__label{padding-top:0}.sproj{grid-template-columns:1.9rem minmax(0,1fr) auto}.sproj__progress{display:none}}.about{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:48px clamp(28px,5vw,88px);display:grid}.about__lede{font-family:var(--font-display);letter-spacing:-.022em;text-wrap:pretty;font-size:clamp(1.875rem,3.5vw,3.25rem);line-height:1.08}.about__lede:first-letter{color:var(--ember-ink)}.about__more{max-width:54ch;color:var(--ink-2);margin-top:clamp(22px,2.6vw,34px);font-size:clamp(1.0625rem,1.3vw,1.1875rem);line-height:1.6}.about__go{margin-top:clamp(24px,3vw,36px)}.figures{border-top:1px solid var(--line-strong);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.figure{border-bottom:1px solid var(--line-strong);flex-direction:column-reverse;gap:8px;padding:clamp(16px,2vw,26px) 0 clamp(16px,2vw,24px);display:flex}.figure:nth-child(odd){border-right:1px solid var(--line-strong);padding-right:18px}.figure:nth-child(2n){padding-left:clamp(16px,2vw,26px)}.figure__value{font-family:var(--font-mono);letter-spacing:-.065em;font-variant-numeric:tabular-nums;margin:0;font-size:clamp(3rem,5vw,4.5rem);font-weight:380;line-height:.92}.figure:first-child .figure__value{color:var(--ember-ink)}.figure__label{font-size:var(--fs-small);color:var(--ink-2);line-height:1.35}.edu{margin-top:clamp(36px,4.4vw,60px)}.edu__item{padding-top:18px}.edu__degree{font-family:var(--font-display);letter-spacing:-.016em;margin-top:8px;font-size:clamp(1.5rem,2.1vw,1.9375rem);line-height:1.08}.edu__school{color:var(--ink-2);margin-top:8px}.edu__detail{white-space:pre-line;font-size:var(--fs-small);color:var(--ink-2);margin-top:8px;line-height:1.5}@media (max-width:900px){.about{grid-template-columns:minmax(0,1fr)}}.contact__card{position:relative}.contact__mark{color:var(--ember-ink);opacity:.86;mix-blend-mode:var(--ink-blend);pointer-events:none;position:absolute;top:clamp(-120px,-9vw,-52px);right:0;rotate:-9deg}.postmark{filter:url(#ink-stamp);width:auto;height:clamp(84px,10vw,132px)}.postmark__centre{font-size:13px}.contact__email{--fit:calc((100vw - 2 * var(--gutter)) / (var(--n,24) * .405));font-family:var(--font-display);font-size:clamp(2rem, min(var(--fit), calc(var(--wrap) / (var(--n,24) * .405))), 9.5rem);letter-spacing:-.03em;line-height:.95;position:relative}.contact__email a{transition:color .32s var(--ease-out), background-size .62s var(--ease-out);background:linear-gradient(currentColor,currentColor) 0 96%/0% 2px no-repeat;display:inline-block}.contact__email a:hover{color:var(--ember-ink);background-size:100% 2px}.contact__rule{margin-top:clamp(28px,4vw,56px)}.contact__grid{column-gap:var(--col-gap);grid-template-columns:repeat(12,minmax(0,1fr));row-gap:40px;margin-top:clamp(24px,3vw,40px);display:grid}.contact__col{grid-column:span 4}.contact__links{margin-top:6px}.contact__text{margin-top:10px;font-size:1.125rem}.contact__gap{margin-top:26px}.contact__actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}@media (max-width:760px){.contact__email{font-size:clamp(2.25rem, calc((100vw - 2 * var(--gutter)) / (var(--n2,14) * .42)), 6rem)}.contact__col{grid-column:1/-1}.contact__mark{top:-74px}}
