:root{--color-kinari: #f4eede;--color-beige: #e0ceaa;--color-paper: #fff;--color-paper-2: #f5f5f5;--color-canvas-soft: #fff;--color-surface-card: #fff;--color-ink: #3c3c43;--color-ink-2: #6d6d72;--color-muted: #76767b;--color-muted-2: #9d9da0;--color-rule: #d8d8d9;--color-rule-soft: #ebebec;--color-rule-strong: #d8d8d9;--color-accent: #7f0019;--color-accent-2: #7f0019;--color-accent-ink: #fff;--color-cta: #3c3c43;--color-cta-ink: #fff;--color-focus: #3c3c43;--color-success: #3c3c43;--color-error: #dd0c14;--font-display: "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", "Hiragino Kaku Gothic ProN", Meiryo, "Microsoft YaHei", sans-serif;--font-body: "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", "Hiragino Kaku Gothic ProN", Meiryo, "Microsoft YaHei", sans-serif;--font-outlier: "Helvetica Neue", Arial, "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", Meiryo, "Microsoft YaHei", sans-serif;--space-xxxxs: 4px;--space-xxxs: 8px;--space-xxs: 12px;--space-xs: 16px;--space-s: 20px;--space-sm: 24px;--space-m: 32px;--space-ml: 40px;--space-l: 48px;--space-xl: 56px;--space-xxl: 64px;--space-xxxl: 80px;--space-xxxxl: 96px;--space-3xs: 4px;--space-2xs: 4px;--space-md: 16px;--space-lg: 24px;--space-2xl: 64px;--space-3xl: 80px;--space-4xl: 96px;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-md: 16px;--text-lg: 26px;--text-xl: 32px;--text-2xl: 32px;--text-3xl: 32px;--text-4xl: 32px;--text-display: 32px;--text-display-s: 26px;--text-h1: 26px;--text-h2: 32px;--text-h3: 26px;--text-nav: 16px;--text-cta: 12px;--leading: 1.6;--leading-h3: 1.15;--tracking-h3: 2.4px;--page-gutter: max( 16px, env(safe-area-inset-left), env(safe-area-inset-right), clamp(16px, 4vw, 32px) );--page-max: 1120px;--rule-hair: 1px;--rule-heavy: 1px;--radius-card: 0;--radius-pill: 4px;--radius-input: 0;--radius-button: 4px;--pin-size: 8px;--shadow-0: none;--shadow-1: 0 1px 2px rgba(0, 0, 0, .08);--shadow-2: 0 2px 8px rgba(0, 0, 0, .1);--ease-out: cubic-bezier(.33, 1, .68, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-soft: cubic-bezier(.37, .12, .25, 1);--dur-micro: .14s;--dur-short: .28s;--dur-long: .62s;--dur-enter: 1.25s;--dur-switch: .62s;--rise-dist: 8px;--rise-stagger: .14s;--z-base: 1;--z-raised: 10;--z-dropdown: 100;--z-sticky: 200;--z-modal: 400;--z-toast: 500;--z-tooltip: 600}*,*:before,*:after{box-sizing:border-box}html{line-height:var(--leading);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}h1,h2,h3,h4,p,figure,blockquote{margin:0;font-size:inherit;font-weight:inherit}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:inherit}b,strong{font-weight:700}button{font:inherit;color:inherit;letter-spacing:inherit;margin:0;padding:0;background:none;border:0;cursor:pointer}img,svg,video,canvas{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}html{color:var(--color-ink);overflow-x:clip;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{min-width:320px;min-height:100dvh;margin:0;overflow-x:clip;padding-bottom:env(safe-area-inset-bottom);display:flex;flex-direction:column;background-color:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);font-weight:400;line-height:var(--leading);font-kerning:auto;font-feature-settings:normal;overflow-wrap:break-word;word-break:keep-all}body>main{flex:1}body.is-hub,body.is-board{position:relative;height:100dvh;max-height:100dvh;overflow:clip}body.is-hub{background-color:var(--color-paper)}body.is-hub>main,body.is-board>main{min-height:0}::selection{background:color-mix(in srgb,var(--color-ink) 14%,var(--color-paper));color:var(--color-ink)}a{color:inherit}h1,h2,h3,h4,.wordmark,.hub__name,.idx__title,.meet__title,.work__name{font-style:normal;font-weight:700;letter-spacing:normal}a:focus-visible,button:focus-visible,.cta:focus-visible,.idx__row:focus-visible,.nav-edge a:focus-visible,.wordmark:focus-visible,.skip:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.pin{display:inline-block;width:var(--pin-size);height:var(--pin-size);border-radius:0;background:var(--color-accent);flex-shrink:0}html.js [data-rise]{opacity:0;translate:0 var(--rise-dist);transition:opacity var(--dur-enter) var(--ease-soft),translate var(--dur-enter) var(--ease-soft);transition-delay:calc(var(--i, 0) * var(--rise-stagger))}html.js [data-rise].is-in{opacity:1;translate:0 0}@keyframes panels-in{0%{opacity:0;translate:0 14px}}.skip{position:absolute;inset-inline-start:var(--page-gutter);top:var(--space-xs);z-index:var(--z-tooltip);padding:var(--space-xxxs) var(--space-xxs);background:var(--color-paper);color:var(--color-ink);font-weight:700;text-decoration:none;white-space:nowrap;transform:translateY(-200%)}.skip:focus{transform:none}.nav-edge{display:flex;align-items:center;gap:var(--space-md);max-height:80px;padding:var(--space-sm) var(--page-gutter);background:transparent;border-bottom:var(--rule-hair) solid var(--color-rule)}.nav-home{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;text-decoration:none}.nav-edge__links{margin-inline-start:auto;display:flex;gap:var(--space-m)}.nav-edge__links a{display:inline-flex;align-items:center;gap:var(--space-xxxs);min-height:44px;font-size:var(--text-nav);font-weight:700;line-height:1.4;text-decoration:none;white-space:nowrap;color:var(--color-ink-2)}.nav-edge__links a[aria-current=page]:before{content:"";width:var(--pin-size);height:var(--pin-size);border-radius:0;background:var(--color-accent)}.nav-edge__links a[aria-current=page]{color:var(--color-ink)}@media(hover:hover)and (pointer:fine){.nav-edge__links a:hover{color:var(--color-ink)}}.vh{position:absolute;width:1px;height:1px;overflow:clip;clip-path:inset(50%);white-space:nowrap}.board{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0}body.is-board .meet{padding-block:var(--space-m) var(--space-sm);background:transparent}body.is-board .meet__title{font-size:var(--text-h2);font-weight:700;line-height:var(--leading)}body.is-board .meet__lead{font-size:var(--text-base)}.switch{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;padding:0 var(--page-gutter) var(--space-lg);background:transparent}.switch__radio{appearance:none;position:absolute;inset:0 auto auto 0;margin:0;padding:0;border:0;width:1px;height:1px;opacity:0;pointer-events:none}.switch__tabs{position:relative;display:flex;flex-wrap:wrap;gap:var(--space-xs);padding-top:var(--space-sm);padding-bottom:var(--space-xxs);border-bottom:var(--rule-hair) solid var(--color-rule-soft)}.switch__indicator{position:absolute;left:0;bottom:-1px;top:auto;width:var(--pill-w, 0px);height:1px;translate:var(--pill-x, 0px) 0;border-radius:0;background:var(--color-ink);transition:translate var(--dur-short) var(--ease-soft),width var(--dur-short) var(--ease-soft)}html:not(.js) .switch__indicator{display:none}.switch__tab{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 var(--space-xxs);font-family:var(--font-body);font-size:var(--text-nav);font-weight:700;line-height:1.4;letter-spacing:normal;color:var(--color-ink-2);background:transparent;white-space:nowrap;cursor:pointer;transition:color var(--dur-short) var(--ease-out)}@media(hover:hover)and (pointer:fine){.switch__tab:hover{color:var(--color-ink)}}.switch:has(#w-stack:checked) .switch__tab[for=w-stack],.switch:has(#w-projects:checked) .switch__tab[for=w-projects],.switch:has(#w-made:checked) .switch__tab[for=w-made],.switch:has(#w-path:checked) .switch__tab[for=w-path]{color:var(--color-ink)}html:not(.js) .switch:has(#w-stack:checked) .switch__tab[for=w-stack],html:not(.js) .switch:has(#w-projects:checked) .switch__tab[for=w-projects],html:not(.js) .switch:has(#w-made:checked) .switch__tab[for=w-made],html:not(.js) .switch:has(#w-path:checked) .switch__tab[for=w-path]{box-shadow:inset 0 -1px 0 var(--color-ink)}.switch__panel{animation:panels-in var(--dur-short) var(--ease-soft)}.switch:has(#w-stack:focus-visible) .switch__tab[for=w-stack],.switch:has(#w-projects:focus-visible) .switch__tab[for=w-projects],.switch:has(#w-made:focus-visible) .switch__tab[for=w-made],.switch:has(#w-path:focus-visible) .switch__tab[for=w-path]{outline:2px solid var(--color-focus);outline-offset:3px}.switch__panels{min-height:0;overflow:auto;scrollbar-width:none;padding-top:var(--space-lg)}.switch__panels::-webkit-scrollbar{display:none}.switch__panel{display:none}.switch:has(#w-stack:checked) #panel-stack,.switch:has(#w-projects:checked) #panel-projects,.switch:has(#w-made:checked) #panel-made,.switch:has(#w-path:checked) #panel-path{display:block}body.is-board .letter{height:100%;overflow:auto;padding-block:var(--space-lg) var(--space-xl)}.hub{position:relative;display:flex;flex-direction:column;justify-content:center;gap:var(--space-xxl);width:100%;max-width:var(--page-max);margin-inline:auto;height:100%;min-height:0;padding:var(--space-xxl) var(--page-gutter);box-sizing:border-box;--dur-enter: .34s;--rise-stagger: 40ms}.hub__copy{display:grid;gap:var(--space-l);min-width:0;max-width:40rem}.hub__lede{margin:0;font-size:var(--text-base);line-height:var(--leading);color:var(--color-ink-2);text-wrap:pretty}.hub__name{margin:0;min-width:0;display:flex;align-items:center;gap:var(--space-xxs);font-family:var(--font-display);font-size:var(--text-h2);font-weight:700;line-height:var(--leading);letter-spacing:normal;overflow-wrap:anywhere}.swatch{display:inline-block;width:var(--pin-size);height:var(--pin-size);background:var(--color-beige);flex-shrink:0}.idx{display:grid}.hub__intro{display:grid;gap:var(--space-md)}.hub__motto{margin:0;font-family:var(--font-display);font-size:var(--text-h3);font-weight:700;line-height:var(--leading-h3);letter-spacing:var(--tracking-h3);color:var(--color-ink)}.idx__row{display:grid;grid-template-columns:5.5rem minmax(0,1fr);column-gap:var(--space-md);align-items:start;padding-block:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule);text-decoration:none;min-width:0;transition:color var(--dur-short) var(--ease-out)}.idx__row:last-child{border-bottom:var(--rule-hair) solid var(--color-rule)}.idx__title{font-family:var(--font-display);font-size:var(--text-nav);font-weight:700;line-height:1.4;letter-spacing:normal;white-space:nowrap}.idx__desc{margin:0;font-size:var(--text-sm);line-height:var(--leading);color:var(--color-ink-2);text-wrap:pretty}@media(hover:hover)and (pointer:fine){.idx__row:hover,.idx__row:hover .idx__desc{color:var(--color-ink)}}@media(max-width:40rem){.idx__row{grid-template-columns:minmax(0,1fr);row-gap:var(--space-2xs)}}@media(min-width:60rem){.hub{position:relative;z-index:var(--z-raised);display:grid;grid-template-columns:auto minmax(24rem,44rem);gap:0;align-content:center;align-items:stretch;justify-content:start;padding-block:var(--space-xxxl)}.hub__name{font-size:var(--text-h2);line-height:var(--leading);min-width:min-content;width:max-content;padding-right:var(--space-m)}.hub__copy{display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-lg);max-width:none;border-inline-start:var(--rule-hair) solid var(--color-rule);padding-inline-start:var(--space-m)}}.cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;height:auto;padding:8px 16px;font-size:var(--text-cta);font-weight:700;line-height:1;letter-spacing:normal;text-decoration:none;white-space:nowrap;color:var(--color-cta-ink);background:var(--color-cta);border:none;border-radius:var(--radius-button);transition:background var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out)}.cta:hover,.cta.is-hover{background:var(--color-cta);color:var(--color-cta-ink);opacity:.86}.cta:active,.cta.is-active{background:var(--color-ink);transform:translateY(1px)}.cta:disabled,.cta[aria-disabled=true],.cta.is-disabled,.cta[data-state=loading]{opacity:.4;pointer-events:none}.cta[data-state=error]{background:var(--color-error)}.cta[data-state=success]{background:var(--color-cta)}.cta-secondary{color:var(--color-ink);background:transparent;border:1px solid var(--color-rule)}.cta-secondary:hover,.cta-secondary.is-hover{background:transparent;color:var(--color-ink);border-color:var(--color-ink)}.meet{padding:var(--space-2xl) var(--page-gutter) var(--space-xl);--dur-enter: .34s;--rise-stagger: 40ms}.meet__title{margin:0;font-family:var(--font-display);font-size:var(--text-h2);font-weight:700;line-height:var(--leading);letter-spacing:normal;overflow-wrap:anywhere;min-width:0}.meet__meta{margin:var(--space-md) 0 0;display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2xs) var(--space-sm);font-size:var(--text-sm);line-height:var(--leading);color:var(--color-ink-2);font-variant-numeric:tabular-nums}.meet__meta+.meet__meta{margin-top:var(--space-2xs)}.meet__mail{color:var(--color-ink);text-decoration:none;border-bottom:var(--rule-hair) solid var(--color-rule);white-space:nowrap}@media(hover:hover)and (pointer:fine){.meet__mail:hover{color:var(--color-ink);border-bottom-color:var(--color-ink)}}.meet__lead{margin:var(--space-md) 0 0;max-width:36em;font-size:var(--text-base);line-height:var(--leading);text-wrap:pretty}.meet__action{margin-top:var(--space-lg)}.doc{padding:var(--space-2xl) var(--page-gutter) var(--space-4xl)}.sec+.sec{margin-top:var(--space-3xl)}.head-hang{margin:0 0 var(--space-lg);font-family:var(--font-display);font-size:var(--text-h1);font-weight:700;letter-spacing:normal;line-height:var(--leading);overflow-wrap:anywhere;min-width:0}.adv{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-md);max-width:48rem}.adv li{font-size:var(--text-base);line-height:var(--leading);color:var(--color-ink);text-wrap:pretty}.spec{width:100%;max-width:48rem;border-collapse:collapse}.spec tr{border-top:var(--rule-hair) solid var(--color-rule)}.spec tr:first-child{border-top:none}.spec tr:last-child{border-bottom:var(--rule-hair) solid var(--color-rule)}.spec th,.spec td{padding:var(--space-md) 0;vertical-align:baseline;text-align:start}.spec th{width:8.5rem;padding-inline-end:var(--space-lg);font-size:var(--text-sm);font-weight:400;color:var(--color-muted)}.spec td{min-width:0;font-size:var(--text-base);line-height:var(--leading);text-wrap:pretty}@media(max-width:40rem){.spec,.spec tbody,.spec tr,.spec th,.spec td{display:block;width:100%}.spec th{padding-bottom:var(--space-2xs)}.spec td{padding-top:0}}.path{display:grid;max-width:48rem}.path__row{display:grid;grid-template-columns:6.5rem minmax(0,1fr);column-gap:var(--space-lg);padding-block:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule)}.path__row:last-child{border-bottom:var(--rule-hair) solid var(--color-rule)}.path__when{font-family:var(--font-body);font-size:var(--text-xs);font-weight:700;letter-spacing:normal;color:var(--color-muted);font-variant-numeric:tabular-nums}.path__row--now .path__when{color:var(--color-ink)}.path__title{display:block;font-family:var(--font-display);font-size:var(--text-base);font-weight:700;letter-spacing:normal;line-height:var(--leading);text-wrap:pretty}.path__role{display:block;margin-top:var(--space-2xs);color:var(--color-ink-2);font-size:var(--text-sm);line-height:var(--leading);text-wrap:pretty}.path__bullets{display:block;margin:var(--space-xs) 0 0;padding:0;list-style:none}.path__bullets li{position:relative;padding-left:.9em;color:var(--color-ink-2);font-size:var(--text-sm);line-height:var(--leading);text-wrap:pretty}.path__bullets li:before{content:"·";position:absolute;left:0;color:var(--color-muted)}@media(max-width:40rem){.path__row{grid-template-columns:minmax(0,1fr);row-gap:var(--space-2xs)}}.works{display:grid;max-width:48rem}.work{display:grid;align-content:start;gap:var(--space-sm);min-width:0;padding-block:var(--space-md);border-top:var(--rule-hair) solid var(--color-rule)}.work:last-child{border-bottom:var(--rule-hair) solid var(--color-rule)}.work__name{margin:0;font-family:var(--font-display);font-size:var(--text-h1);font-weight:700;letter-spacing:normal;line-height:var(--leading);overflow-wrap:anywhere;min-width:0;text-wrap:pretty}.work__name a{color:inherit;text-decoration:none}.work__context{font-size:var(--text-sm);color:var(--color-muted)}.work__background{margin:0;font-size:var(--text-xs);line-height:var(--leading);text-wrap:pretty}.work__highlights{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-2xs)}.work__highlights li{padding-left:1.1rem;text-indent:-1.1rem;font-size:var(--text-sm);line-height:var(--leading);color:var(--color-ink-2);text-wrap:pretty}.work__highlights li:before{content:"· ";color:var(--color-muted)}.work__stack{margin:var(--space-xs) 0 0;font-size:var(--text-xs);color:var(--color-muted)}.live{display:grid;max-width:36rem;border-top:var(--rule-hair) solid var(--color-rule)}.live__row{display:grid;gap:var(--space-2xs);padding-block:var(--space-md);border-bottom:var(--rule-hair) solid var(--color-rule);min-width:0}.live__title{font-family:var(--font-display);font-size:var(--text-h1);font-weight:700;letter-spacing:normal;text-decoration:none;white-space:nowrap;line-height:var(--leading)}.live__blurb{max-width:48ch;color:var(--color-ink-2);font-size:var(--text-sm);line-height:var(--leading);text-wrap:pretty}@media(hover:hover)and (pointer:fine){.work__name a:hover,.live__title:hover{color:var(--color-ink);border-bottom:var(--rule-hair) solid var(--color-ink)}}.ghlink{display:inline-flex;align-items:center;min-height:44px;font-size:var(--text-sm);text-decoration:none;border-bottom:var(--rule-hair) solid var(--color-rule);white-space:nowrap}@media(hover:hover)and (pointer:fine){.ghlink:hover{color:var(--color-ink);border-bottom-color:var(--color-ink)}}.ghimgs{margin-top:var(--space-lg);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--space-md)}.ghimgs img{display:block;width:100%;height:auto}@media(max-width:40rem){.ghimgs{grid-template-columns:minmax(0,1fr)}}.reach{margin:0;display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-lg);font-size:var(--text-base)}.reach a{text-decoration:none;border-bottom:var(--rule-hair) solid var(--color-rule);white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}@media(hover:hover)and (pointer:fine){.reach a:hover{color:var(--color-ink);border-bottom-color:var(--color-ink)}}.letter{padding:var(--space-2xl) var(--page-gutter) var(--space-4xl);max-width:calc(42ch + var(--page-gutter) * 2);--dur-enter: .34s;--rise-stagger: 40ms}.letter__h{margin:0 0 var(--space-xl);font-family:var(--font-display);font-size:var(--text-h2);font-weight:700;letter-spacing:normal;line-height:var(--leading)}.salutation{margin:0 0 var(--space-lg);font-family:var(--font-display);font-size:var(--text-h3);font-style:normal;font-weight:700;line-height:var(--leading-h3);letter-spacing:var(--tracking-h3)}.letter__lede{margin:0;font-size:var(--text-base);line-height:var(--leading);text-wrap:pretty}.letter__block{margin-top:var(--space-2xl)}.letter__block h2{margin:0 0 var(--space-sm);font-family:var(--font-display);font-size:var(--text-h1);font-weight:700;letter-spacing:normal;line-height:var(--leading)}.letter__block p{margin:0;color:var(--color-ink-2);font-size:var(--text-sm);line-height:var(--leading);text-wrap:pretty}.signoff{margin:var(--space-3xl) 0 0;font-family:var(--font-display);font-size:var(--text-base);font-weight:700;letter-spacing:normal}@media(max-width:767px){body{font-size:14px}.hub__name,.meet__title,.letter__h{font-size:26px}.hub__motto,.salutation,.work__name,.letter__block h2{font-size:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.15s!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.15s!important;transition-delay:0s!important}html.js [data-rise]{opacity:1;translate:none;transition:none}.cta:active{transform:none}}
