:root{--space-3xs:2px;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:64px;--space-3xl:96px;--space-4xl:144px;--text-xs:.8125rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.25rem;--text-xl:1.5625rem;--text-2xl:1.953rem;--text-3xl:2.441rem;--text-display-s:clamp(2.25rem,4vw + .5rem,3.75rem);--text-display:clamp(2.75rem,5vw + 1rem,5.25rem);--text-section:clamp(2rem,2.5vw + 1rem,3.5rem);--text-title:clamp(1.25rem,.75vw + .875rem,1.625rem);--text-lead:clamp(1.125rem,.35vw + 1rem,1.375rem);--ease-out:cubic-bezier(.16,1,.3,1);--ease-in:cubic-bezier(.7,0,.84,0);--ease-in-out:cubic-bezier(.65,0,.35,1);--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--color-error:oklch(52% .19 27);--color-success:oklch(50% .12 150);--container:1440px;--gutter:64px;--gap-columns:32px;--section-gap-s:120px;--section-gap:144px;--section-gap-l:176px;--z-base:1;--z-raised:10;--z-dropdown:100;--z-sticky:200;--z-sticky-nav:300;--z-modal:400;--z-toast:500;--z-tooltip:600;--color-paper:oklch(98.1% .006 85);--color-paper-2:oklch(95.2% .008 85);--color-paper-3:oklch(91% .01 85);--color-ink:oklch(13.6% .004 265);--color-ink-2:oklch(30% .006 265);--color-muted:oklch(47% .008 265);--color-rule:oklch(86% .008 85);--color-rule-2:oklch(70% .008 85);--color-accent:oklch(90.5% .2 119);--color-accent-ink:oklch(13.6% .004 265);--color-focus:oklch(52% .15 128);--color-night:oklch(13.6% .004 265);--color-night-2:oklch(22% .006 265);--color-night-ink:oklch(98.1% .006 85);--color-night-muted:oklch(74% .008 85);--color-night-rule:oklch(32% .006 265);--font-display:"Archivo","Arial Narrow",ui-sans-serif,sans-serif;--font-body:"Archivo",ui-sans-serif,system-ui,sans-serif;--font-outlier:"JetBrains Mono",ui-monospace,monospace;--display-width:62%;--display-weight:900;--radius-card:28px;--radius-frame:20px;--radius-pill:999px;--rule-hair:1px;--shadow-card:none;--tracking-display:-.01em}*,:after,:before{box-sizing:border-box}body,html{overflow-x:clip}html{scroll-padding-top:var(--space-3xl);scrollbar-color:var(--color-muted) var(--color-paper)}body{background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);line-height:1.55;margin:0;-webkit-font-smoothing:antialiased;caret-color:var(--color-accent)}::-moz-selection{background:color-mix(in oklab,var(--color-accent) 22%,transparent);color:var(--color-ink)}::selection{background:color-mix(in oklab,var(--color-accent) 22%,transparent);color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}a{color:inherit;text-underline-offset:.16em}h1,h2,h3{font-family:var(--font-display);font-synthesis:none;margin:0;min-width:0;overflow-wrap:break-word;text-wrap:balance}p{margin:0;text-wrap:pretty}p:not([class]){max-width:65ch}img,video{height:auto;max-width:100%}img,svg,video{display:block}[hidden]{display:none!important}button,input,select,textarea{font:inherit}.container{box-sizing:border-box;margin-inline:auto;max-width:var(--container);padding-inline:var(--gutter);width:100%}.figure,.num,td.num{font-variant-numeric:tabular-nums}.visually-hidden{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}[data-slot]{background:linear-gradient(160deg,var(--color-paper-2,var(--color-paper)),var(--color-paper-3,var(--color-paper)));overflow:hidden;position:relative}[data-slot]>img{height:100%;inset:0;-o-object-fit:cover;object-fit:cover;position:absolute;width:100%;z-index:1}[data-slot]:has(>img)>:not(img):not([data-keep]){display:none!important}@media(max-width:60rem){:root{--gutter:24px;--section-gap-s:80px;--section-gap:96px;--section-gap-l:120px}}@media(max-width:40rem){:root{--gutter:16px;--section-gap-s:56px;--section-gap:72px;--section-gap-l:96px;--gap-columns:16px}}@media(prefers-reduced-motion:reduce){:not(.keep-motion),:not(.keep-motion):after,:not(.keep-motion):before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}:root{--pride-1:oklch(58% .2 27);--pride-2:oklch(72% .17 58);--pride-3:oklch(86% .16 95);--pride-4:oklch(60% .15 150);--pride-5:oklch(50% .15 255);--pride-6:oklch(45% .17 315);--color-accent-2:oklch(84% .2 121);--color-blush:oklch(78% .12 10);--ease-spring:cubic-bezier(.34,1.56,.64,1);--text-poster:clamp(5rem,12vw + .5rem,13rem);--text-head:clamp(3rem,4.5vw + 1rem,5.75rem);--text-company:clamp(3.25rem,7vw + 1rem,9.5rem);--text-figure:clamp(4rem,4vw + 2rem,7.5rem);--text-tile:clamp(2.25rem,1.8vw + 1.25rem,3.25rem);--masthead-h:88px;--sig-ratio:1875.6/953.1}body{font-size:1.0625rem}h1,h2,h3{font-stretch:var(--display-width);line-height:.92}h2{font-size:var(--text-head);max-width:14ch}h3{line-height:.95}h4{color:var(--color-muted);font:500 var(--text-sm) /1.4 var(--font-body);margin:0}blockquote,dd,dl,figure,ol,ul{margin:0;padding:0}ol,ul{list-style:none}a{text-decoration-color:currentColor;text-decoration-thickness:1px;text-underline-offset:.2em;transition:text-decoration-color var(--dur-short) var(--ease-out)}a:hover{text-decoration-thickness:2px}a:active{opacity:.8}code{font-family:var(--font-outlier)}.muted{color:var(--color-muted)}.lead{font-size:var(--text-lead);line-height:1.4}.skip{background:var(--color-ink);border-radius:var(--radius-pill);color:var(--color-paper);left:var(--space-md);padding:var(--space-xs) var(--space-md);position:absolute;top:var(--space-md);transform:translateY(-200%);z-index:var(--z-modal)}.skip:focus-visible{transform:none}.stop{border-radius:var(--radius-pill);display:inline-block;height:.2em;margin-left:.05em;width:.2em}.btn,.stop{background:var(--color-accent)}.btn{align-items:center;border:1.5px solid var(--color-accent);border-radius:var(--radius-pill);color:var(--color-accent-ink);cursor:pointer;display:inline-flex;font:500 var(--text-md) /1 var(--font-body);justify-content:center;min-height:52px;padding:0 var(--space-lg);text-decoration:none;transition:background-color var(--dur-short) var(--ease-out),border-color var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out);white-space:nowrap}.btn:hover{background:var(--color-accent-2);border-color:var(--color-accent-2)}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.55;transform:none}.btn--line{background:transparent;border-color:currentColor;color:inherit}.btn--line:hover{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-paper)}.actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.more{margin-top:var(--space-sm)}.more summary{align-items:center;cursor:pointer;display:inline-flex;font-size:var(--text-sm);font-weight:500;gap:var(--space-xs);list-style:none;min-height:44px}.more summary::-webkit-details-marker{display:none}.more summary:after{background:var(--color-accent);border-radius:var(--radius-pill);color:var(--color-accent-ink);content:"+";display:inline-grid;font-weight:500;height:22px;line-height:1;place-items:center;transition:transform var(--dur-short) var(--ease-in-out);width:22px}.more[open] summary:after{transform:rotate(45deg)}.more summary:hover{text-decoration:underline;text-underline-offset:.25em}.more summary:active{opacity:.8}.more summary:focus-visible{border-radius:var(--radius-pill);outline:2px solid var(--color-focus);outline-offset:2px}.more__body{display:grid;gap:var(--space-md);padding-top:var(--space-xs)}.points{display:grid;gap:var(--space-xs)}.points li{max-width:62ch;padding-left:var(--space-lg);position:relative}.points li:before{background:currentColor;border-radius:var(--radius-pill);content:"";height:8px;left:0;position:absolute;top:.55em;width:8px}.tech{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.tech li{background:var(--color-paper-3);border-radius:var(--radius-pill);color:var(--color-ink-2);font-size:var(--text-sm);padding:var(--space-2xs) var(--space-sm)}.signature{aspect-ratio:var(--sig-ratio);background:var(--color-ink);display:block;-webkit-mask:url(../images/signature.svg) left center/contain no-repeat;mask:url(../images/signature.svg) left center/contain no-repeat;width:100%}.masthead{pointer-events:none;position:sticky;top:0;z-index:var(--z-sticky-nav)}.masthead__bar{align-items:center;display:flex;gap:var(--space-lg);justify-content:space-between;min-height:var(--masthead-h)}.masthead__bar>*{pointer-events:auto}.dock{background:var(--color-night);border:var(--rule-hair) solid var(--color-night-rule);border-radius:var(--radius-pill);padding:var(--space-2xs)}.dock ul{display:flex;gap:var(--space-3xs)}.dock a{border-radius:var(--radius-pill);color:var(--color-night-ink);display:block;font-size:.9375rem;font-weight:500;line-height:1;padding:var(--space-sm) var(--space-lg);text-decoration:none;transition:background-color var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out);white-space:nowrap}.dock a:hover{background:var(--color-night-2)}.dock a:active{background:var(--color-accent);color:var(--color-accent-ink)}.dock a:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.masthead__action{border-color:var(--color-ink);margin-left:auto;min-height:48px}.hero-section{align-items:center;display:grid;min-height:calc(100svh - var(--masthead-h));overflow-x:clip;padding-block:var(--space-lg) var(--space-2xl);position:relative}.hero__stage{left:max(46%,calc(50% - var(--container)/2 + 640px));top:0}.hero__panel,.hero__stage{bottom:0;position:absolute;right:0}.hero__panel{background:var(--color-night);border-top-left-radius:calc(var(--radius-card)*2);color:var(--color-night-ink);left:0;top:30%}.hero__cutout{bottom:0;height:96%;left:6%;max-width:none;-o-object-fit:contain;object-fit:contain;-o-object-position:bottom left;object-position:bottom left;position:absolute;width:auto}.hero{pointer-events:none;position:relative;z-index:var(--z-raised)}.hero__text{max-width:40rem;pointer-events:auto}.hero__mark{margin-left:-1.5%;max-width:none;position:relative;width:min(100%,560px)}.hero__lead{font:var(--display-weight) clamp(2rem,1.6vw + 1.25rem,3rem) /1 var(--font-display);font-stretch:var(--display-width);margin-top:var(--space-xl);max-width:22ch;text-wrap:balance}.hero__now{color:var(--color-muted);font-size:var(--text-lead);margin-top:var(--space-md)}.hero .actions{margin-top:var(--space-xl)}.work{overflow-x:clip;padding-block:var(--section-gap) var(--section-gap-s)}.about__head,.projects__head,.split-head,.work__head{align-items:end;-moz-column-gap:var(--gap-columns);column-gap:var(--gap-columns);display:grid;grid-template-columns:repeat(12,minmax(0,1fr))}.work__head h2{font-size:var(--text-poster);grid-column:1/span 7;line-height:.8;max-width:none}.about__head .lead,.projects__head .lead,.split-head .lead,.work__head .lead{color:var(--color-ink-2);grid-column:8/span 5;max-width:34ch}.about__head h2,.projects__head h2,.split-head h2{grid-column:1/span 7}.work__runway{margin-top:var(--space-2xl)}.work__pin{container-type:inline-size}.work__track{display:flex;gap:var(--space-xl);padding:var(--space-2xl) var(--gutter) var(--space-xl);padding-inline-start:max(var(--gutter),calc((100cqw - var(--container))/2 + var(--gutter)));width:-moz-max-content;width:max-content}.work__track:focus-visible{border-radius:var(--radius-card);outline:2px solid var(--color-focus);outline-offset:-4px}.deal{gap:var(--space-xl);position:relative}.deal,.job{display:flex}.job{--tilt:-3deg;border-radius:var(--radius-card);flex-direction:column;gap:var(--space-md);min-height:min(600px,calc(100svh - var(--masthead-h) - 200px));padding:var(--space-xl);transform:rotate(var(--tilt));transition:transform .6s var(--ease-spring);width:clamp(320px,30vw,480px)}.job:focus-within,.job:hover{transform:rotate(0) translateY(-14px) scale(1.03)}.job--1{--tilt:-3deg;background:var(--color-accent);color:var(--color-accent-ink)}.job--2{--tilt:2.5deg;background:var(--pride-2);color:var(--color-ink)}.job--3{--tilt:-2deg;background:var(--pride-6)}.job--3,.job--4{color:var(--color-night-ink)}.job--4{--tilt:3deg;background:var(--pride-5)}.job--earlier{--tilt:-1.5deg;background:var(--color-night);color:var(--color-night-ink)}.job__top{align-items:flex-start;display:flex;font-size:var(--text-sm);font-weight:500;justify-content:space-between;margin-bottom:auto;padding-bottom:var(--space-lg)}.job__index{font:var(--display-weight) clamp(5rem,6vw + 1rem,8.5rem) /.8 var(--font-display);font-stretch:var(--display-width);margin-top:calc(var(--space-sm)*-1)}.job__company{font-size:clamp(3rem,3.4vw + 1rem,5.25rem);line-height:.86}.job__company a{text-decoration:none}.job__company a:hover{text-decoration:underline;text-decoration-thickness:.07em;text-underline-offset:.08em}.job__title{font-size:var(--text-lg);font-weight:500}.job__summary{max-width:44ch}.job a:focus-visible{outline:2px solid currentColor;outline-offset:3px}.job__more{align-items:center;align-self:flex-start;background:var(--color-ink);border:0;color:var(--color-paper);cursor:pointer;display:inline-flex;font:500 var(--text-md) /1 var(--font-body);gap:var(--space-sm);height:48px;margin-top:var(--space-xs);padding:0 var(--space-2xs) 0 var(--space-lg);transition:transform var(--dur-short) var(--ease-spring)}.job__more,.job__more:after{border-radius:var(--radius-pill)}.job__more:after{background:var(--color-accent);color:var(--color-accent-ink);content:"+";display:inline-grid;font-size:var(--text-lg);height:40px;line-height:1;place-items:center;transition:transform var(--dur-long) var(--ease-spring);width:40px}.job__more:hover:after{transform:rotate(90deg) scale(1.12)}.job__more:active{transform:scale(.96)}.job__more:focus-visible{outline:2px solid var(--color-ink);outline-offset:3px}.job--3 .job__more:focus-visible,.job--4 .job__more:focus-visible{outline-color:var(--color-night-ink)}.job__more:disabled{cursor:not-allowed;opacity:.55}.role-modal{border:0;border-radius:var(--radius-card);margin:auto;max-height:calc(100svh - var(--space-2xl));opacity:1;overflow-y:auto;overscroll-behavior:contain;padding:0;transform:none;transition:opacity var(--dur-long) var(--ease-out),transform var(--dur-long) var(--ease-out),overlay var(--dur-long) allow-discrete,display var(--dur-long) allow-discrete;width:min(720px,calc(100% - var(--space-xl)))}@starting-style{.role-modal[open]{opacity:0;transform:translateY(40px) rotate(-4deg) scale(.92)}}.role-modal:not([open]){opacity:0;transform:translateY(24px) rotate(3deg) scale(.96)}.role-modal::backdrop{background:color-mix(in oklab,var(--color-night) 72%,transparent)}.role-modal__inner{display:grid;gap:var(--space-md);padding:var(--space-xl)}.role-modal__top{align-items:center;display:flex;font-size:var(--text-sm);font-weight:500;justify-content:space-between}.role-modal__close{background:transparent;border:1.5px solid;border-radius:var(--radius-pill);color:inherit;cursor:pointer;font:500 var(--text-sm) /1 var(--font-body);min-height:44px;padding:0 var(--space-lg);transition:background-color var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out)}.role-modal__close:hover{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-paper)}.role-modal__close:active{opacity:.8}.role-modal__close:focus-visible,.role-modal__link:focus-visible{outline:2px solid currentColor;outline-offset:3px}.role-modal__name{font-size:clamp(3.5rem,5vw + 1rem,6.5rem);line-height:.84;margin-top:var(--space-lg)}.role-modal__title{font-size:var(--text-lg);font-weight:500}.role-modal__about{max-width:56ch}.role-modal__head{color:inherit;font:var(--display-weight) var(--text-2xl) /1 var(--font-display);font-stretch:var(--display-width);margin-top:var(--space-md)}.role-modal .tech{margin-top:var(--space-sm)}.job .tech li,.role-modal .tech li{background:color-mix(in oklab,currentColor 14%,transparent);color:inherit}.role-modal__link{font-weight:500;justify-self:start;margin-top:var(--space-sm)}.earlier__list{display:grid;font-size:var(--text-lg);gap:var(--space-sm);margin-top:var(--space-xs)}.sticker{animation:sticker-spin 14s linear infinite;bottom:var(--space-2xl);height:116px;pointer-events:none;position:absolute;right:calc(var(--space-xl)*-1);width:116px;z-index:var(--z-raised)}.sticker__disc{fill:var(--color-ink)}.sticker__dot,.sticker__text{fill:var(--color-accent)}.sticker__text{font:500 15.5px var(--font-body)}@keyframes sticker-spin{to{transform:rotate(1turn)}}@supports (animation-timeline:view()){@media(min-width:60.0625rem)and (prefers-reduced-motion:no-preference){.work__runway{height:300svh;view-timeline:--deck block}.work__pin{display:flex;flex-direction:column;height:calc(100svh - var(--masthead-h));justify-content:center;overflow:clip;position:sticky;top:var(--masthead-h)}.work__track{animation:deck-slide linear both;animation-range:contain 0 contain 100%;animation-timeline:--deck}}}@keyframes deck-slide{0%{transform:translate(0)}to{transform:translate(calc(-100% + 100cqw))}}@supports not (animation-timeline:view()){.work__pin{overflow-x:auto;scroll-snap-type:x proximity}.deal{scroll-snap-align:start}}@media(prefers-reduced-motion:reduce){.work__pin{overflow-x:auto}}@keyframes card-tumble{0%{transform:translateY(80px) rotate(calc(var(--tilt)*4))}to{transform:rotate(var(--tilt))}}.projects{background:var(--color-night);color:var(--color-night-ink);padding-block:var(--section-gap)}.projects .projects__head .lead{color:var(--color-night-muted)}.projects ::-moz-selection{background:var(--color-accent);color:var(--color-accent-ink)}.projects ::selection{background:var(--color-accent);color:var(--color-accent-ink)}.tone-1{background:var(--color-accent);color:var(--color-accent-ink)}.tone-2{background:var(--pride-2)}.tone-2,.tone-3{color:var(--color-ink)}.tone-3{background:var(--color-blush)}.tone-4{background:var(--pride-5);color:var(--color-night-ink)}.tone-5{background:var(--pride-3)}.tone-5,.tone-6{color:var(--color-ink)}.tone-6{background:var(--color-paper)}.bento{display:grid;gap:var(--gap-columns);grid-auto-rows:380px;grid-template-columns:repeat(12,minmax(0,1fr));margin-top:var(--space-2xl)}.tile-p--1{grid-column:span 7;grid-row:span 2}.tile-p--2,.tile-p--3{grid-column:span 5}.tile-p--4,.tile-p--5,.tile-p--6{grid-column:span 4;grid-row:span 1}.tile-p{--spin:-1.2deg;--lean:3deg;border-radius:var(--radius-card);display:flex;flex-direction:column;gap:var(--space-sm);isolation:isolate;overflow:hidden;padding:var(--space-xl);position:relative;transition:transform .6s var(--ease-spring)}.tile-p:nth-child(2n){--spin:1.2deg;--lean:-3deg}.tile-p:focus-within,.tile-p:hover{transform:rotate(var(--spin)) scale(1.015)}.tile-p__top{display:flex;font-size:var(--text-sm);font-weight:500;gap:var(--space-md);padding-right:var(--space-3xl)}.tile-p__name{font-size:clamp(2.5rem,2.4vw + 1rem,4.25rem);line-height:.86;max-width:11ch;position:relative;z-index:2}.tile-p--1 .tile-p__name{font-size:clamp(3.5rem,5vw + 1rem,7.5rem)}.tile-p__name,.tile-p__plus,.tile-p__shot,.tile-p__top{pointer-events:none}.tile-p__top{position:relative;z-index:1}.tile-p__open{background:none;border:0;border-radius:var(--radius-card);color:inherit;cursor:pointer;inset:0;padding:0;position:absolute;z-index:0}.tile-p__open:focus-visible{outline:3px solid currentColor;outline-offset:-8px}.tile-p__open:active{opacity:.85}.tile-p__plus{background:var(--color-ink);border-radius:var(--radius-pill);color:var(--color-accent);display:grid;font-size:var(--text-2xl);height:52px;line-height:1;place-items:center;position:absolute;right:var(--space-lg);top:var(--space-lg);transition:transform var(--dur-long) var(--ease-spring);width:52px;z-index:2}.tile-p:hover .tile-p__plus{transform:rotate(90deg) scale(1.12)}.tile-p__shot{background:var(--color-paper-2);border-radius:var(--radius-frame);bottom:calc(var(--radius-card)*-1);box-shadow:0 24px 48px color-mix(in oklab,var(--color-night) 30%,transparent);container-type:size;left:var(--space-xl);overflow:hidden;position:absolute;right:var(--space-xl);top:56%;transform:rotate(var(--lean));transition:transform .6s var(--ease-spring)}.tile-p--1 .tile-p__shot{top:40%}.tile-p:focus-within .tile-p__shot,.tile-p:hover .tile-p__shot{transform:translateY(-24px)}.tile-p__shot>img{max-width:none;transition:transform 1.2s var(--ease-in-out);width:100%}.tile-p:hover .tile-p__shot>img{transform:translateY(calc(-100% + 100cqh));transition-duration:7s}.role-modal__shot{aspect-ratio:16/9;border-radius:var(--radius-frame);margin-top:var(--space-sm);overflow:hidden}.role-modal__shot>img{height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center;width:100%}.band{background:var(--color-paper-2);color:var(--color-ink);padding-block:var(--section-gap)}.band ::-moz-selection{background:var(--color-accent);color:var(--color-accent-ink)}.band ::selection{background:var(--color-accent);color:var(--color-accent-ink)}.quote{-moz-column-gap:var(--gap-columns);column-gap:var(--gap-columns);display:grid;grid-template-columns:repeat(12,minmax(0,1fr))}.quote__mark{color:var(--color-ink);font:var(--display-weight) clamp(9rem,14vw,18rem) /.72 var(--font-display);grid-column:1/span 2}.quote blockquote,.quote figcaption{grid-column:3/-1}.quote blockquote p{font:500 clamp(1.75rem,1.4vw + 1rem,2.75rem) /1.1 var(--font-display);font-stretch:75%;max-width:45ch;text-wrap:pretty}.quote figcaption{color:var(--color-muted);display:grid;gap:var(--space-3xs);margin-top:var(--space-xl)}.quote figcaption strong{color:var(--color-ink);font-weight:500}.band__head{border-top:2px solid var(--color-ink);font-size:var(--text-section);margin-top:var(--space-3xl);max-width:none;padding-top:var(--space-xl)}.figures{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:var(--space-xl)}.figures__item{border-left:var(--rule-hair) solid var(--color-rule-2);display:flex;flex-direction:column-reverse;gap:var(--space-sm);justify-content:flex-end;padding-inline:var(--space-lg)}.figures__item:first-child{border-left:0;padding-left:0}.figures__item:last-child{padding-right:0}.figures__value{font:var(--display-weight) var(--text-figure) /.86 var(--font-display);font-stretch:var(--display-width)}.figures__label{color:var(--color-muted);font-size:var(--text-sm)}.oss{padding-block:var(--section-gap)}.oss__aside{color:var(--color-muted);font-size:var(--text-md);margin-top:var(--space-xs)}.keys{display:grid;gap:var(--space-xl) var(--gap-columns);grid-template-columns:repeat(12,minmax(0,1fr));margin-top:var(--space-2xl);padding:0 var(--space-xs) var(--space-xs) 0}.key{grid-column:span 6;position:relative}.key--lead{grid-column:1/-1}.key:before{background:var(--color-ink);border-radius:var(--radius-card);content:"";inset:0;position:absolute;transform:translate(8px,8px)}.key__face{background:var(--color-paper);border:2px solid var(--color-ink);border-radius:var(--radius-card);display:flex;flex-direction:column;gap:var(--space-md);height:100%;padding:var(--space-xl);position:relative}.key--lead .key__face{align-content:start;background:var(--color-accent);-moz-column-gap:var(--gap-columns);column-gap:var(--gap-columns);display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.key--lead .key__face>*{grid-column:1;justify-self:start}.key--lead .key__top{align-items:flex-end;flex-direction:column;grid-column:2;grid-row:1/span 5;justify-content:space-between;justify-self:end;text-align:right}.key__top{align-items:center;display:flex;flex-wrap:wrap;font-size:var(--text-sm);gap:var(--space-md);justify-content:space-between}.key__lang{border:1.5px solid;border-radius:var(--radius-pill);font-weight:500;padding:var(--space-2xs) var(--space-sm)}.key__stats{display:flex;gap:var(--space-lg)}.key__stat{align-items:flex-end;display:flex;flex-direction:column-reverse;gap:var(--space-2xs)}.key__stat dt{font-size:var(--text-xs);white-space:nowrap}.key__stat dd{font:var(--display-weight) var(--text-2xl) /.9 var(--font-display);font-stretch:var(--display-width)}.key--lead .key__stats{align-items:flex-end;flex-direction:column;gap:var(--space-md)}.key--lead .key__stat+.key__stat{border-top:1.5px solid var(--color-ink);padding-top:var(--space-md)}.key--lead .key__stat dt{font-size:var(--text-sm)}.key--lead .key__stat:first-child dd{font-size:clamp(3.5rem,4vw + 1rem,6.5rem);line-height:.85}.key--lead .key__stat:last-child:not(:first-child) dd{font-size:var(--text-3xl)}.key__name{font:400 clamp(2.25rem,2.4vw + 1rem,3.5rem) /1 var(--font-outlier);font-stretch:normal;letter-spacing:-.04em}.key--lead .key__name{font-size:clamp(2.25rem,5.5vw + 1rem,7rem)}.key__name a{text-decoration:none}.key__name a:hover{text-decoration:underline;text-decoration-thickness:.06em;text-underline-offset:.12em}.key__name a:focus-visible{border-radius:var(--radius-frame);outline:2px solid var(--color-ink);outline-offset:4px}.key__about{max-width:52ch}.key__install{align-items:center;align-self:flex-start;background:var(--color-ink);border-radius:var(--radius-pill);color:var(--color-paper);display:flex;gap:var(--space-sm);max-width:100%;min-width:0;padding:var(--space-2xs) var(--space-2xs) var(--space-2xs) var(--space-md)}.key__install code{font-size:var(--text-sm);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.key__copy{background:var(--color-accent);border:0;border-radius:var(--radius-pill);color:var(--color-accent-ink);cursor:pointer;flex:none;font:500 var(--text-sm) /1 var(--font-body);min-height:44px;padding:0 var(--space-md);transition:background-color var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out)}.key__copy:hover{background:var(--color-accent-2)}.key__copy:active{transform:scale(.95)}.key__copy:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.key .tech{margin-top:auto;padding-top:var(--space-sm)}.key--lead .tech li{background:color-mix(in oklab,var(--color-ink) 12%,transparent)}.keys__more{align-items:center;background:var(--color-night);border-radius:var(--radius-card);color:var(--color-night-ink);display:flex;flex-wrap:wrap;gap:var(--space-lg);justify-content:space-between;margin-top:var(--space-2xl);padding:var(--space-xl)}.keys__more p{font-size:var(--text-lead);max-width:52ch}.keys__more .btn:focus-visible{outline-color:var(--color-accent)}.about{overflow-x:clip;padding-block:var(--section-gap-s) var(--section-gap)}.flag{height:clamp(150px,16vw,240px);margin-top:var(--space-2xl);overflow:hidden}.flag__wave{animation:flag-drift 10s linear infinite;height:100%;width:200%}@keyframes flag-drift{0%{transform:translate(0)}to{transform:translate(-50%)}}.flag__stripe--1{fill:var(--pride-1)}.flag__stripe--2{fill:var(--pride-2)}.flag__stripe--3{fill:var(--pride-3)}.flag__stripe--4{fill:var(--pride-4)}.flag__stripe--5{fill:var(--pride-5)}.flag__stripe--6{fill:var(--pride-6)}.proud{background:var(--color-paper);border:2px solid var(--color-ink);border-radius:var(--radius-card);box-shadow:10px 10px 0 var(--color-ink);display:grid;gap:var(--space-md);margin:calc(var(--space-3xl)*-1) var(--space-xl) 0 auto;padding:var(--space-xl);position:relative;transform:rotate(-2deg);transition:transform .6s var(--ease-spring);width:min(100%,620px)}.proud:hover{transform:rotate(0) scale(1.02)}.proud h3{font-size:clamp(2.75rem,3vw + 1rem,4.5rem);line-height:.88}.nihongo{align-items:center;-moz-column-gap:var(--gap-columns);column-gap:var(--gap-columns);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));margin-top:var(--section-gap-s);row-gap:var(--space-xl)}.nihongo__text{display:grid;gap:var(--space-md);grid-column:1/span 4}.nihongo__text h3{font-size:clamp(2.5rem,2.6vw + 1rem,4.25rem);line-height:1.1}.tategaki{border-block:2px solid var(--color-ink);display:grid;grid-column:6/-1;grid-template-columns:repeat(6,minmax(0,1fr))}.tategaki__word{align-items:center;display:flex;flex-direction:column;gap:var(--space-lg);justify-content:space-between;min-height:clamp(320px,30vw,440px);padding:var(--space-lg) var(--space-xs)}.tategaki__word+.tategaki__word{border-left:var(--rule-hair) solid var(--color-rule-2)}.tategaki__word dt{font-size:clamp(2.5rem,3vw + 1rem,4.5rem);font-weight:500;letter-spacing:.08em;line-height:1;writing-mode:vertical-rl}.tategaki__word dd{color:var(--color-muted);font-size:var(--text-sm);text-align:center;text-wrap:balance}.tategaki__word:first-child{background:var(--color-accent)}.tategaki__word:first-child dd{color:var(--color-ink-2)}.colour{-moz-column-gap:var(--gap-columns);column-gap:var(--gap-columns);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));margin-top:var(--section-gap-s);row-gap:var(--space-xl)}.colour__head{font-size:clamp(4rem,9vw + 1rem,11rem);grid-column:1/-1;line-height:.9;max-width:none}.colour__fill{display:inline-block;position:relative}.colour__fill:after{background:url(../images/pride-stripes.svg) 0 0/100% 100% no-repeat;content:"";height:.16em;left:0;position:absolute;right:0;top:96%}.colour__text{display:grid;gap:var(--space-md);grid-column:7/-1}.colour__text p:first-child{font-size:var(--text-lead);line-height:1.4}.about__place{color:var(--color-muted)}.skills{background:var(--color-accent);color:var(--color-accent-ink);padding-block:var(--section-gap-s)}.skills__head{align-items:end;-moz-column-gap:var(--gap-columns);column-gap:var(--gap-columns);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));row-gap:var(--space-lg)}.skills h2{grid-column:1/span 6;max-width:16ch}.cats{display:flex;flex-wrap:wrap;gap:var(--space-xs);justify-content:center;margin-top:var(--space-2xl)}.cat{align-items:center;background:transparent;border:2px solid var(--color-ink);border-radius:var(--radius-pill);color:var(--color-ink);cursor:pointer;display:inline-flex;font:500 var(--text-md) /1 var(--font-body);gap:var(--space-2xs);min-height:48px;padding:0 var(--space-lg);transition:background-color var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out)}.cat sup{font-size:var(--text-xs)}.cat:hover{background:color-mix(in oklab,var(--color-ink) 10%,transparent)}.cat:active{transform:scale(.97)}.cat:focus-visible{outline:2px solid var(--color-ink);outline-offset:3px}.cat[aria-pressed=true]{background:var(--color-ink);color:var(--color-accent)}.wall{display:flex;flex-wrap:wrap;font:var(--display-weight) clamp(2.75rem,5vw + 1rem,7rem) /.95 var(--font-display);font-stretch:var(--display-width);gap:.05em .32em;margin-top:var(--space-2xl)}.tool{transition:color var(--dur-long) var(--ease-out)}.tool sup{font:500 var(--text-sm) /1 var(--font-body);font-stretch:100%;margin-left:.08em;vertical-align:top}.skills:has(.cat--1:hover) .wall:not([data-cat]) .tool:not(.tool--1),.skills:has(.cat--2:hover) .wall:not([data-cat]) .tool:not(.tool--2),.skills:has(.cat--3:hover) .wall:not([data-cat]) .tool:not(.tool--3),.skills:has(.cat--4:hover) .wall:not([data-cat]) .tool:not(.tool--4),.wall[data-cat="1"] .tool:not(.tool--1),.wall[data-cat="2"] .tool:not(.tool--2),.wall[data-cat="3"] .tool:not(.tool--3),.wall[data-cat="4"] .tool:not(.tool--4){color:color-mix(in oklab,var(--color-ink) 22%,var(--color-accent))}@supports (animation-timeline:view()){@media(prefers-reduced-motion:no-preference){.tool{animation:tool-rise linear both;animation-range:entry 0 entry 100%;animation-timeline:view()}}}@keyframes tool-rise{0%{opacity:.15;transform:translateY(.35em)}to{opacity:1;transform:none}}.close{background:var(--color-night);padding-top:var(--section-gap)}.close,.close__head{color:var(--color-night-ink)}.close__head{font-size:clamp(4rem,7vw + 1rem,8.5rem);line-height:.86;max-width:15ch}.close__row{align-items:end;-moz-column-gap:var(--gap-columns);column-gap:var(--gap-columns);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));margin-top:var(--space-xl);row-gap:var(--space-lg)}.close__line{color:var(--color-night-muted);grid-column:1/span 6;max-width:48ch}.close__links{display:flex;flex-wrap:wrap;gap:var(--space-sm);grid-column:7/-1;justify-self:end}.close .btn--line:hover{background:var(--color-night-ink);border-color:var(--color-night-ink);color:var(--color-night)}.close .btn:focus-visible,.close a:focus-visible{outline-color:var(--color-accent)}.colophon{border-top:var(--rule-hair) solid var(--color-night-rule);color:var(--color-night-muted);display:flex;flex-wrap:wrap;font-size:var(--text-sm);gap:var(--space-lg);justify-content:space-between;margin-top:var(--space-2xl);padding-block:var(--space-xl)}@media(max-width:60rem){.about__head,.close__row,.projects__head,.split-head,.work__head{grid-template-columns:minmax(0,1fr);row-gap:var(--space-lg)}.about__head .lead,.about__head h2,.close__line,.close__links,.projects__head .lead,.projects__head h2,.split-head .lead,.split-head h2,.work__head .lead,.work__head h2{grid-column:1/-1;justify-self:start}.hero-section{display:flex;flex-direction:column;min-height:0;padding-bottom:0}.hero__stage{align-self:stretch;height:min(120vw,560px);inset:auto;margin-top:var(--space-xl);order:2;position:relative}.hero__panel{border-top-left-radius:0;top:26%}.hero__cutout{left:50%;transform:translate(-50%)}.hero__mark{width:min(88%,460px)}.work__track{padding:var(--space-xl) var(--gutter) 0;width:auto}.deal,.work__track{flex-direction:column}.job{min-height:0;width:auto}.role-modal__inner{padding:var(--space-lg)}.sticker{bottom:calc(var(--space-lg)*-1);height:96px;right:calc(var(--space-xs)*-1);width:96px}@supports (animation-timeline:view()){@media(prefers-reduced-motion:no-preference){.job{animation:card-tumble linear both;animation-range:entry 0 entry 90%;animation-timeline:view()}}}.bento{grid-auto-rows:440px;grid-template-columns:minmax(0,1fr)}.tile-p--1,.tile-p--2,.tile-p--3,.tile-p--4,.tile-p--5,.tile-p--6{grid-column:1/-1;grid-row:span 1}.tile-p--1 .tile-p__shot{top:56%}.quote{grid-template-columns:minmax(0,1fr)}.quote blockquote,.quote figcaption,.quote__mark{grid-column:1/-1}.quote__mark{height:.5em}.key,.key--lead{grid-column:1/-1}.key--lead .key__face{display:flex}.key--lead .key__top{align-items:flex-start;flex-direction:row;justify-self:stretch;text-align:left}.key--lead .key__stats{align-items:flex-end;flex-direction:row}.key--lead .key__stat+.key__stat{border-left:1.5px solid var(--color-ink);border-top:0;padding-left:var(--space-md);padding-top:0}.key--lead .key__stat:first-child dd{font-size:clamp(2.5rem,8vw,3.5rem)}.key--lead .key__stat{align-items:flex-start}.proud{margin-right:0}.colour__text,.nihongo__text,.tategaki{grid-column:1/-1}.figures{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:var(--space-xl)}.figures__item:nth-child(3){border-left:0;padding-left:0}.skills h2{grid-column:1/-1}}@media(max-width:40rem){.dock{bottom:var(--space-md);box-shadow:0 6px 24px color-mix(in oklab,var(--color-night) 30%,transparent);left:50%;position:fixed;transform:translate(-50%)}.dock a{font-size:var(--text-sm);padding:var(--space-sm)}.close{padding-bottom:var(--space-3xl)}.proud{box-shadow:6px 6px 0 var(--color-ink);margin-top:calc(var(--space-2xl)*-1);padding:var(--space-lg);width:calc(100% - var(--space-md))}.tategaki{grid-template-columns:repeat(3,minmax(0,1fr))}.tategaki__word{min-height:260px}.tategaki__word:nth-child(4){border-left:0}.tategaki__word:nth-child(4),.tategaki__word:nth-child(n+5){border-top:var(--rule-hair) solid var(--color-rule-2)}.figures{grid-template-columns:minmax(0,1fr)}.figures__item{border-left:0;border-top:var(--rule-hair) solid var(--color-rule-2);padding-inline:0;padding-top:var(--space-lg)}.figures__item:first-child{border-top:0;padding-top:0}}@media(prefers-reduced-motion:reduce){.btn,.job,.job__more,.job__more:after,.key__copy,.more summary:after,.proud,.role-modal,.tile-p,.tile-p__plus,.tile-p__shot,.tile-p__shot>img,a{transition:none}.flag__wave,.sticker{animation:none}.cat,.tool{transition:none}}
