:root{--studio:#f4f3f0;--ink:#1d1c1a;--ink-soft:color-mix(in srgb, var(--ink) 62%, transparent);--ink-faint:color-mix(in srgb, var(--ink) 45%, transparent);--ink-line:color-mix(in srgb, var(--ink) 35%, transparent);--ink-hair:color-mix(in srgb, var(--ink) 18%, transparent)}:root[data-tone=dark]{--ink:#efe9df}html,body{background:var(--studio);color:var(--ink);margin:0;transition:background-color 1.2s cubic-bezier(.2,.7,.3,1),color .5s}body{-webkit-font-smoothing:antialiased;font-family:system-ui,sans-serif}html{scroll-behavior:smooth}.stage{height:100svh;position:relative;overflow:hidden}.stage:after{content:"";background-color:var(--studio);pointer-events:none;height:72px;transition:background-color 1.2s cubic-bezier(.2,.7,.3,1);position:absolute;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(#0000,#000);mask-image:linear-gradient(#0000,#000)}.intro-copy{z-index:2;letter-spacing:-.005em;max-width:340px;color:var(--ink);font-size:16px;line-height:1.5;transition:color .5s;position:absolute;top:80px;left:88px}.intro-copy p,.intro-copy li{margin:0}.intro-copy ul{margin:.9rem 0 0;padding:0;font-size:.9rem;list-style:none}.intro-copy a,.intro-index a{pointer-events:auto}.intro-copy[inert] a,.intro-index[inert] a{pointer-events:none}.intro-copy a{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--ink-line);text-decoration-color:var(--ink-line);text-underline-offset:3px;text-decoration-thickness:1px;transition:text-decoration-color .2s}.intro-copy a:hover,.intro-copy a:focus-visible{text-decoration-color:currentColor}.intro-index{z-index:2;font-size:.8rem;position:absolute;bottom:32px;left:88px}.intro-index a{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--ink-hair);text-decoration-color:var(--ink-hair);text-underline-offset:3px;text-decoration-thickness:1px;transition:color .2s}.intro-index a:hover,.intro-index a:focus-visible{color:var(--ink)}.speech{z-index:2;pointer-events:none;color:#1d1c1a;letter-spacing:-.005em;opacity:0;transform-origin:0 100%;background:#fbfaf8;border-radius:14px 14px 14px 4px;width:max-content;max-width:220px;margin:-34px 0 0 8px;padding:7px 12px 8px;font:13.5px/1.3 system-ui,sans-serif;transition:opacity .22s,scale .38s cubic-bezier(.3,1.6,.5,1);position:absolute;top:0;left:0;scale:.85;box-shadow:0 1px 1px #28201414,0 10px 24px -12px #28201459}.speech.is-on{opacity:1;scale:1}.zzz{z-index:2;pointer-events:none;position:absolute;top:0;left:0}.zzz span{color:var(--ink-soft);font-family:system-ui,sans-serif;animation:3.6s cubic-bezier(.2,.6,.4,1) forwards drift-z;position:absolute;bottom:0;left:0}@keyframes drift-z{0%{opacity:0;transform:translate(0)rotate(-8deg)}20%{opacity:.9}to{opacity:0;transform:translate(var(--drift), -70px) rotate(10deg)}}.stage-mode{z-index:2;font:inherit;letter-spacing:.01em;color:var(--ink-faint);cursor:pointer;background:0 0;border:0;padding:6px 2px;font-size:12.5px;transition:color .2s,opacity .8s .6s;position:absolute;bottom:24px;right:28px}.stage-sound{z-index:2;font:inherit;letter-spacing:.01em;color:var(--ink-faint);cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:12.5px;transition:color .2s,opacity .8s .7s;position:absolute;bottom:50px;right:28px}.stage-sound:hover,.stage-sound:focus-visible,.stage-sound[aria-pressed=true]{color:var(--ink)}.stage-keys button{z-index:3;background:var(--studio);font:inherit;letter-spacing:.01em;color:var(--ink);cursor:pointer;white-space:nowrap;clip-path:inset(50%);opacity:0;border:0;padding:6px 10px;font-size:12.5px;position:absolute;bottom:84px;left:50%;transform:translate(-50%)}.stage-keys button:focus-visible{clip-path:none;opacity:1;outline-offset:3px;outline:1px solid}.stage-mode span{transition:color .3s}.stage-mode span[data-on],.stage-mode:hover span,.stage-mode:focus-visible span{color:var(--ink)}.stage-hint{z-index:2;letter-spacing:.01em;color:var(--ink-faint);white-space:nowrap;pointer-events:none;opacity:0;margin:0;font-size:12.5px;transition:opacity .7s,transform .7s;position:absolute;bottom:26px;left:50%;transform:translate(-50%,4px)}.stage-hint[data-on]{opacity:1;transform:translate(-50%)}.stage-hint span{color:var(--ink-soft);display:inline-block}.stage-hint[data-on] span:first-child{animation:3.2s ease-in-out hint-nudge-left}.stage-hint[data-on] span:last-child{animation:3.2s ease-in-out hint-nudge-right}@keyframes hint-nudge-left{50%{transform:translate(-3px)}}@keyframes hint-nudge-right{50%{transform:translate(3px)}}@media (max-width:640px){.stage-hint{bottom:84px}}@media (prefers-reduced-motion:reduce){.stage-hint,.stage-hint span{transition:opacity .7s;animation:none!important}}button[data-busy]{opacity:0!important;pointer-events:none!important}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sections{letter-spacing:-.005em;padding:120px 88px 0;font-size:16px;line-height:1.5}.sections p,.sections h2,.sections dl,.sections dd{margin:0}.block{grid-template-columns:160px minmax(0,720px);gap:0 32px;scroll-margin-top:48px;display:grid}.block+.block{margin-top:176px}.block-head{align-self:start;position:sticky;top:40px}.block-body{max-width:560px}.block-body.wide{max-width:none}.label{font:inherit;color:var(--ink-faint);font-size:.8rem;line-height:1.9}.closing-line em{font-family:var(--serif), serif;letter-spacing:-.01em;color:var(--ink-soft);font-size:1.1em;font-style:italic}.row-head{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.row-head.spaced{margin-top:64px!important}.meta{color:var(--ink-faint);font-variant-numeric:tabular-nums;flex:none;font-size:.8rem}.soft{color:var(--ink-soft);font-size:.925rem;margin-top:.2rem!important}.sections a{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--ink-line);text-decoration-color:var(--ink-line);text-underline-offset:3px;text-decoration-thickness:1px;transition:text-decoration-color .2s,color .2s}.sections a:hover,.sections a:focus-visible{text-decoration-color:currentColor}.sections a.quiet{color:var(--ink-faint);-webkit-text-decoration-color:var(--ink-hair);text-decoration-color:var(--ink-hair)}.sections a.quiet:hover{color:var(--ink)}.role{border-top:1px solid var(--ink-hair);padding:28px 0 32px}.role:last-child{padding-bottom:0}.role-head{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.role h3{font:inherit;letter-spacing:-.015em;margin:0;font-size:1.125rem}.role-where{color:var(--ink-soft);margin-top:2px!important}.role-where span{color:var(--ink-faint)}.sections .role-company{color:var(--ink-soft);text-decoration:none;transition:color .2s;position:relative}.role-company span{opacity:0;font-size:.8em;transition:opacity .2s,transform .3s cubic-bezier(.2,.7,.2,1);position:absolute;left:calc(100% + 3px);transform:translate(-3px,2px)}.sections .role-company:hover{color:var(--ink)}.role-company:hover span,.role-company:focus-visible span{opacity:1;transform:none}.role-summary{max-width:36em;margin-top:16px!important}.role-points{margin:20px 0 0;padding:0;list-style:none}.role-points li{grid-template-columns:11em minmax(0,1fr);gap:4px 24px;padding:10px 0;font-size:.925rem;display:grid}.role-point{color:var(--ink)}.role-point-body{color:var(--ink-soft)}.projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.project{border:1px solid var(--ink-hair);border-radius:12px;flex-direction:column;justify-content:space-between;gap:20px;min-height:150px;padding:20px 22px 18px;transition:border-color .25s,background-color .25s,transform .4s cubic-bezier(.2,.7,.2,1);display:flex;position:relative}.project:hover{border-color:var(--ink-line);background:color-mix(in srgb, var(--ink) 3%, transparent);transform:translateY(-2px)}.project:has(:focus-visible){border-color:var(--ink-line);background:color-mix(in srgb, var(--ink) 3%, transparent);transform:translateY(-2px)}.sections .project-link{gap:6px;text-decoration:none;display:grid}.project-link:after{content:"";border-radius:inherit;position:absolute;inset:0}.project-link:focus-visible{outline:none}.project-name{letter-spacing:-.015em;justify-content:space-between;gap:12px;font-size:1.05rem;display:flex}.project-arrow{color:var(--ink-faint);transition:color .2s,transform .35s cubic-bezier(.2,.7,.2,1)}.project:hover .project-arrow{color:var(--ink);transform:translate(2px,-2px)}.project-blurb{color:var(--ink-soft);text-wrap:pretty;font-size:.9rem}.project-meta{color:var(--ink-faint);font-variant-numeric:tabular-nums;gap:14px;font-size:.8rem;display:flex}.sections .project-source{z-index:1;color:var(--ink-faint);-webkit-text-decoration-color:var(--ink-hair);text-decoration-color:var(--ink-hair);margin-left:auto;position:relative}.sections .project-source:hover{color:var(--ink)}.hover-card.project-peek,.hover-card.project-peek[data-open]{pointer-events:none}.project-peek .pop-card{transform-origin:0 0}.project-peek-shots{display:grid}.project-peek-shot{opacity:0;grid-area:1/1;transition:opacity .22s}.project-peek-shot[data-on]{opacity:1}.project-shot{display:none}@media (hover:none){.project-shot{aspect-ratio:16/9;border:1px solid var(--ink-hair);border-radius:8px;margin:-8px -10px 10px;display:block;overflow:hidden}.project-shot img{object-fit:cover;object-position:top;width:100%;height:100%;display:block}}.projects-more{border:1px solid var(--ink-hair);font:inherit;color:var(--ink-soft);cursor:pointer;background:0 0;border-radius:999px;margin-top:20px;padding:8px 16px;font-size:.85rem;transition:border-color .2s,color .2s}.projects-more:hover{border-color:var(--ink-line);color:var(--ink)}@keyframes settle{0%{opacity:0;transform:translateY(-4px)}}.posts{border-bottom:1px solid var(--ink-hair);margin:0;padding:0;list-style:none}.posts li{border-top:1px solid var(--ink-hair)}.sections .post{grid-template-columns:minmax(0,1fr) auto;gap:2px 24px;padding:16px 0;text-decoration:none;display:grid}.post-title{text-underline-offset:3px;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:1px;transition:text-decoration-color .2s}.post:hover .post-title,.post:focus-visible .post-title{text-decoration-color:currentColor}.post .meta{grid-area:1/2}.post-desc{color:var(--ink-soft);grid-column:1/-1;font-size:.9rem}.trip+.trip{margin-top:56px}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin:20px 0 0;padding:0;list-style:none;display:grid}.photo-grid button{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}.photo-grid img{aspect-ratio:3/4;object-fit:cover;background:color-mix(in srgb, var(--ink) 6%, var(--studio));border-radius:6px;width:100%;height:auto;transition:opacity .2s;display:block}.photo-grid button:hover img{opacity:.9}.lightbox{cursor:zoom-out;background:0 0;border:0;max-width:none;max-height:none;padding:0}.lightbox::backdrop{background:color-mix(in srgb, var(--studio) 90%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.lightbox[open]{animation:.4s cubic-bezier(.2,.7,.2,1) settle}.lightbox img{width:auto;max-width:92vw;height:auto;max-height:88vh;display:block;box-shadow:0 24px 60px -24px #28201466}.closing{border-top:1px solid var(--ink-hair);margin-top:220px;padding:72px 0 40px}.closing-line{letter-spacing:-.055em;font-size:clamp(72px,13vw,200px);line-height:.9;margin-left:-.04em!important}.closing-line em{letter-spacing:-.03em;font-size:1.08em}.closing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;max-width:880px;margin-top:64px;display:grid}.closing-grid .label{margin-bottom:6px!important}.closing-links{flex-wrap:wrap;gap:4px 16px;display:flex}.copy-email{align-items:baseline;gap:12px;display:inline-flex}.copy-email button{font:inherit;color:var(--ink-faint);cursor:pointer;background:0 0;border:0;padding:0;font-size:.75rem;transition:color .2s}.copy-email button:hover,.copy-email button:focus-visible,.copy-email button[data-copied]{color:var(--ink)}.colophon{color:var(--ink-faint);flex-wrap:wrap;gap:8px 28px;margin-top:120px;font-size:.8rem;display:flex}.colophon span{margin-right:auto}.section-index{z-index:30;opacity:0;pointer-events:none;gap:18px;font-size:.8rem;transition:opacity .5s,transform .6s cubic-bezier(.2,.7,.2,1);display:flex;position:fixed;top:32px;right:40px;transform:translateY(-6px)}.section-index[data-shown]{opacity:1;pointer-events:auto;transform:none}.sections .section-index a{color:var(--ink-faint);text-decoration:none;position:relative}.sections .section-index a:hover,.sections .section-index a:focus-visible,.sections .section-index a[data-on]{color:var(--ink)}.sections .section-index a[data-on]:before{content:"";background:currentColor;border-radius:50%;width:4px;height:4px;position:absolute;top:.62em;left:-9px}.sections .section-index-home{margin-right:6px}.essay-page{max-width:640px;margin:0 auto;padding:36px 24px 72px;font-size:16px;line-height:1.5}.essay-page a{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--ink-line);text-decoration-color:var(--ink-line);text-underline-offset:3px;text-decoration-thickness:1px;transition:text-decoration-color .2s,color .2s}.essay-page a:hover{text-decoration-color:currentColor}.reading-progress{z-index:10;background:var(--ink-line);transform-origin:0;pointer-events:none;height:2px;position:fixed;inset:0 0 auto;transform:scaleX(0)}.essay-nav{color:var(--ink-faint);justify-content:space-between;font-size:.8rem;display:flex}.essay-page .essay-nav a{color:var(--ink-soft);text-decoration:none}.essay-nav .back{margin-right:.3em;transition:transform .45s cubic-bezier(.2,.7,.2,1.4);transform:rotate(180deg)}.essay-nav a:hover .back{transform:rotate(180deg)translate(3px)}.essay-page .essay-nav a:hover{color:var(--ink)}.essay-head{margin:22vh 0 72px;animation:.9s cubic-bezier(.2,.7,.2,1) settle}.essay-head h1{font-family:var(--serif), serif;letter-spacing:-.02em;text-wrap:balance;margin:14px 0 0;font-size:clamp(48px,9vw,84px);font-weight:400;line-height:.95}.essay-date{color:var(--ink-faint);font-variant-numeric:tabular-nums;margin:0;font-size:.8rem}.essay-lede{max-width:30em;color:var(--ink-soft);margin:22px 0 0}.prose{letter-spacing:-.008em;font-size:18px;line-height:1.72;animation:.9s cubic-bezier(.2,.7,.2,1) .12s backwards settle}.prose p,.prose ul,.prose ol,.prose blockquote{margin:0 0 1.15em}.prose h1,.prose h2,.prose h3{font-family:var(--serif), serif;letter-spacing:-.01em;margin:2.2em 0 .6em;font-weight:400;line-height:1.1}.prose h1{font-size:2.1rem}.prose h2{font-size:1.75rem;font-style:italic}.prose h3{font-size:1.4rem}.prose strong{font-weight:600}.prose blockquote{border-left:1px solid var(--ink-line);color:var(--ink-soft);padding-left:1.2em}.prose hr{text-align:center;border:0;margin:2.6em 0}.prose hr:after{content:"∗   ∗   ∗";white-space:pre;color:var(--ink-faint)}.prose img{max-width:100%;height:auto}.essay-foot{margin-top:96px}.essay-mark{font-family:var(--serif), serif;text-align:center;color:var(--ink-faint);font-size:2rem;display:block}.essay-pager{border-top:1px solid var(--ink-hair);justify-content:space-between;gap:24px;margin-top:64px;padding-top:22px;display:flex}.essay-page .essay-pager a{max-width:48%;font-family:var(--serif), serif;flex-direction:column;gap:2px;font-size:1.35rem;line-height:1.15;text-decoration:none;display:flex}.essay-pager .label{color:var(--ink-faint);font-family:system-ui,sans-serif;font-size:.75rem}.essay-page .essay-pager a.newer{text-align:right;margin-left:auto}.essay-sign{color:var(--ink-faint);margin:72px 0 0;font-size:.8rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project{transition:none}}@media (max-width:900px){.section-index{display:none}.role-points li{grid-template-columns:minmax(0,1fr);gap:2px}}@media (max-width:640px){.stage-sound{bottom:24px;right:24px}.stage-mode{text-align:left;padding:0;bottom:50px;left:24px;right:auto}.intro-index{bottom:24px;left:24px}.sections{padding:72px 24px 0;font-size:15px}.block{grid-template-columns:minmax(0,1fr)}.block+.block{margin-top:112px}.block-head{position:static}.label{margin-bottom:.9rem!important}.projects{grid-template-columns:minmax(0,1fr)}.closing{margin-top:144px}.closing-grid{grid-template-columns:minmax(0,1fr);gap:28px}.colophon{margin-top:80px}.prose{font-size:17px}.essay-head{margin-top:14vh}.intro-copy{max-width:none;font-size:15px;top:28px;left:24px;right:24px}.intro-copy p:nth-of-type(4){margin-top:1.6rem!important}.intro-copy ul{flex-wrap:wrap;gap:0 1.1rem;display:flex}.intro-copy li+li{margin-top:0}}.phone-overlay{z-index:50;-webkit-backdrop-filter:blur();backdrop-filter:blur();perspective:1400px;background:#0a0a0c00;place-items:center;transition:background-color .42s,-webkit-backdrop-filter .42s,backdrop-filter .42s;display:grid;position:fixed;inset:0}.phone-overlay.is-open{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a0a0c52}.iphone{--h:min(812px, calc(100svh - 48px));height:var(--h);aspect-ratio:390/812;padding:calc(var(--h) * .014);border-radius:calc(var(--h) * .075);opacity:0;will-change:transform;background:linear-gradient(145deg,#3a3a3d,#1c1c1e 40%,#2c2c2f);transition:transform .46s cubic-bezier(.2,.9,.25,1),opacity .26s;box-shadow:0 0 0 1.5px #0b0b0c,inset 0 0 0 1.5px #ffffff14,0 40px 90px -30px #000000a6}.phone-overlay.is-open .iphone{opacity:1}.iphone-screen{border-radius:calc(var(--h) * .062);color:#fff;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;background:#000;flex-direction:column;height:100%;font:17px/1.3 -apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,system-ui,sans-serif;display:flex;position:relative;overflow:hidden}.ios-status{flex:none;justify-content:space-between;align-items:center;height:50px;padding:4px 30px 0 40px;font-size:16px;font-weight:600;display:flex;position:relative}.ios-island{background:#000;border-radius:20px;width:120px;height:34px;position:absolute;top:11px;left:50%;transform:translate(-50%);box-shadow:0 0 0 1px #111}.ios-icons{align-items:center;gap:6px;display:flex}.ios-header{z-index:1;-webkit-backdrop-filter:blur(20px)saturate(1.6);backdrop-filter:blur(20px)saturate(1.6);background:#1c1c1ed1;border-bottom:.5px solid #ffffff1f;flex:none;place-items:center;padding:2px 16px 10px;display:grid;position:relative}.ios-back{color:#0a84ff;cursor:pointer;background:0 0;border:0;padding:6px;position:absolute;top:16px;left:10px}.ios-contact{justify-items:center;gap:4px;display:grid}.ios-avatar{object-fit:cover;background:linear-gradient(#8e8e93,#636366);border-radius:50%;width:52px;height:52px}.ios-name{color:#fff;font-size:12px}.ios-name span{color:#8e8e93}.ios-thread{overscroll-behavior:contain;scrollbar-width:none;flex-direction:column;flex:1;gap:2px;padding:10px 14px 12px;display:flex;overflow-y:auto}.ios-stamp{text-align:center;color:#8e8e93;margin:4px 0 12px;font-size:11.5px;line-height:1.35}.ios-stamp strong{font-weight:600}.ios-bubble{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:19px;max-width:76%;padding:7px 13px 8px;font-size:16px;line-height:1.32;animation:.28s cubic-bezier(.2,.9,.3,1.2) bubble-in;position:relative}.ios-bubble.in{color:#fff;background:#26252a;align-self:flex-start}.ios-bubble.out{color:#fff;background:#0a84ff;align-self:flex-end}.ios-bubble.tail{margin-bottom:8px}.ios-bubble.tail:before,.ios-bubble.tail:after{content:"";height:20px;position:absolute;bottom:0}.ios-bubble.out.tail:before{background:#0a84ff;border-bottom-left-radius:16px 14px;width:20px;right:-7px}.ios-bubble.out.tail:after{background:#000;border-bottom-left-radius:10px;width:26px;right:-26px}.ios-bubble.in.tail:before{background:#26252a;border-bottom-right-radius:16px 14px;width:20px;left:-7px}.ios-bubble.in.tail:after{background:#000;border-bottom-right-radius:10px;width:26px;left:-26px}@keyframes bubble-in{0%{opacity:0;transform:translateY(6px)scale(.96)}}.ios-typing{gap:4px;padding:12px 14px;display:flex}.ios-typing span{background:#8e8e93;border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite typing}.ios-typing span:nth-child(2){animation-delay:.15s}.ios-typing span:nth-child(3){animation-delay:.3s}@keyframes typing{0%,60%,to{opacity:.35;transform:none}30%{opacity:1;transform:translateY(-2px)}}.ios-receipt,.ios-error{color:#8e8e93;text-align:right;margin:-4px 4px 0;font-size:11px}.ios-error{color:#ff453a}.ios-compose{background:#000;flex:none;align-items:flex-end;gap:8px;padding:6px 12px 8px;display:flex}.ios-compose textarea{color:#fff;min-height:36px;max-height:110px;font:inherit;resize:none;field-sizing:content;background:#000;border:1px solid #3a3a3c;border-radius:18px;outline:none;flex:1;padding:7px 14px;font-size:16px;line-height:1.3}.ios-compose textarea::placeholder{color:#636366}.ios-send{color:#000;cursor:pointer;background:#3a3a3c;border:0;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;margin-bottom:2px;padding:0;transition:background-color .16s,transform .16s;display:grid}.ios-send[data-ready]{color:#fff;background:#0a84ff}.ios-send:active{transform:scale(.92)}.ios-home{background:#fff;border-radius:3px;flex:none;width:134px;height:5px;margin:6px auto 8px}@media (max-width:500px){.iphone{--h:100svh;aspect-ratio:auto;width:100vw;height:100svh;box-shadow:none;background:#000;border-radius:0;padding:0}.iphone-screen{border-radius:0}.ios-status{display:none}.ios-header{padding-top:max(10px, env(safe-area-inset-top))}.ios-home{display:none}.ios-compose{padding-bottom:max(8px, env(safe-area-inset-bottom))}}.painting-overlay{z-index:50;-webkit-backdrop-filter:blur();backdrop-filter:blur();background:#0e0c0a00;place-items:center;transition:background-color .42s,-webkit-backdrop-filter .42s,backdrop-filter .42s;display:grid;position:fixed;inset:0}.painting-overlay.is-open{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0e0c0a8c}.painting-view{--h:min(calc(100svh - 110px), 900px);opacity:0;will-change:transform;flex-direction:column;align-items:center;gap:14px;margin:0;transition:transform .46s cubic-bezier(.2,.9,.25,1),opacity .26s;display:flex}.painting-overlay.is-open .painting-view{opacity:1}.painting-frame{box-sizing:border-box;height:var(--h);padding:calc(var(--h) * .022);background:linear-gradient(135deg,#2a2a2d,#151517 45%,#232326);box-shadow:inset 0 0 0 1px #ffffff0f,0 40px 90px -30px #000000b3}.painting-mat{box-sizing:border-box;height:100%;padding:calc(var(--h) * .04);background:#8f1d22;box-shadow:inset 0 2px 6px #00000073}.painting-art{--fx:50%;--fy:50%;aspect-ratio:640/2048;cursor:zoom-in;touch-action:none;height:100%;overflow:hidden;box-shadow:0 1px 3px #0006}.painting-art img{object-fit:cover;width:100%;height:100%;transform-origin:var(--fx) var(--fy);-webkit-user-select:none;user-select:none;transition:transform .36s cubic-bezier(.2,.9,.25,1);display:block}.painting-art.is-zoomed{cursor:zoom-out}.painting-art.is-zoomed img{transform:scale(2.6)}.painting-view figcaption{color:#ffffffdb;flex-direction:column;align-items:center;gap:2px;font-size:13px;display:flex}.painting-hint{color:#ffffff80;font-size:12px}.painting-close{color:#fff;cursor:pointer;opacity:0;background:#ffffff14;border:1px solid #fff3;border-radius:999px;place-items:center;width:36px;height:36px;padding:0;transition:opacity .3s;display:grid;position:fixed;top:20px;right:20px}.painting-overlay.is-open .painting-close{opacity:1}@media (prefers-reduced-motion:reduce){.painting-view,.painting-art img{transition:none}}.hover-card{z-index:40;pointer-events:none;transform-origin:50% 0;will-change:transform;text-align:left;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;position:fixed;top:0;left:0}.hover-card[data-open]{pointer-events:auto}.hover-card :where(a){color:inherit;text-decoration:none}.hover-card :where(button){color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0}.pop-card{transform-origin:50% 0;opacity:0;filter:blur(6px);transition:opacity .14s,scale .14s,translate .14s,filter .14s;translate:0 -10px;scale:.6}@media (hover:hover) and (min-width:641px){.hover-list{width:max-content}.hover-list li{position:relative}.hover-row:after{content:"";position:absolute;inset:0 -28px 0 -8px}.hover-link[data-placement=below]{position:relative}.hover-link[data-placement=below]:after{content:"";position:absolute;inset:0 -6px -16px}}.hover-row{transition:opacity .22s,text-decoration-color .2s}.hover-list:has(.hover-row[data-active]) .hover-row:not([data-active]){opacity:.4}.hover-row[data-active]{text-decoration-color:currentColor!important}.hover-stack{transition:width .36s cubic-bezier(.2,.8,.2,1),height .36s cubic-bezier(.2,.8,.2,1)}.hover-stack .pop-card{width:100%;height:100%;position:relative}.hover-stack-item{opacity:0;translate:0 var(--from,0);filter:blur(4px);pointer-events:none;transition:opacity .18s,translate .46s cubic-bezier(.2,1.25,.3,1),scale .46s cubic-bezier(.2,1.25,.3,1),filter .2s;position:absolute;top:0;left:0;scale:.97}.hover-stack-item[data-pos=before]{--from:-18px}.hover-stack-item[data-pos=after]{--from:18px}.hover-stack-item[data-pos=active]{opacity:1;filter:none;pointer-events:auto;transition-delay:30ms;translate:0;scale:1}.hover-card[data-placement=side] .pop-card{transform-origin:0 28px;translate:-12px}.hover-card[data-open] .pop-card{opacity:1;filter:blur();transition:opacity .2s,scale .52s cubic-bezier(.2,1.4,.35,1),translate .52s cubic-bezier(.2,1.4,.35,1),filter .24s;translate:0;scale:1}.hover-card p{margin:0}.window-dots{gap:6px;display:flex}.window-dots i{background:#ff5f57;border-radius:50%;width:10px;height:10px;box-shadow:inset 0 0 0 .5px #0000001f}.window-dots i:nth-child(2){background:#febc2e}.window-dots i:nth-child(3){background:#28c840}.site-card{--card:#fbfaf7;--card-ink:#1d1c1a;background:var(--card);color:var(--card-ink);box-shadow:0 0 0 1px color-mix(in srgb, var(--card-ink) 16%, transparent), 0 18px 40px -12px #00000047;border-radius:10px;overflow:hidden}:root[data-tone=dark] .site-card{--card:#22211f;--card-ink:#efe9df}.site-card-bar{border-bottom:1px solid color-mix(in srgb, var(--card-ink) 12%, transparent);align-items:center;gap:10px;height:26px;padding:0 10px;display:flex}.site-card-bar .window-dots{gap:4px}.site-card-bar .window-dots i{width:7px;height:7px}.site-card-url{background:color-mix(in srgb, var(--card-ink) 7%, transparent);text-align:center;color:color-mix(in srgb, var(--card-ink) 50%, transparent);border-radius:4px;flex:1;margin-right:30px;padding:2px 0;font-size:10px;line-height:1.2;display:grid;position:relative;overflow:hidden}.site-card-url>span{grid-area:1/1;justify-content:center;align-items:center;gap:3px;transition:translate .26s cubic-bezier(.2,.8,.2,1),opacity .2s;display:inline-flex}.site-card-url>span+span{opacity:0;color:var(--card-ink);translate:0 100%}.site-card:hover .site-card-url>span:first-child{opacity:0;translate:0 -100%}.site-card:hover .site-card-url>span+span{opacity:1;translate:0}.site-card-go{width:9px;height:9px}.site-card{cursor:pointer;display:block}.site-card-shot{aspect-ratio:16/9;background:#f7f6f2;overflow:hidden}.site-card-shot img{object-fit:cover;object-position:top;clip-path:inset(0 0 100%);width:100%;height:100%;scale:1.1;translate:var(--drift,0) 0;transition:clip-path .12s,scale .12s;display:block}[data-active] .site-card-shot img{clip-path:inset(0);transition:clip-path .62s cubic-bezier(.65,0,.35,1) 90ms,scale .9s cubic-bezier(.2,.8,.2,1) 90ms;scale:1.06}.site-card-caption{border-top:1px solid color-mix(in srgb, var(--card-ink) 12%, transparent);color:color-mix(in srgb, var(--card-ink) 64%, transparent);padding:9px 12px 10px;font-size:11.5px;line-height:1.4}.mail-card{--bg:#fff;--bar:#f6f6f6;--ink:#1d1d1f;--muted:#86868b;--line:#00000014;background:var(--bg);color:var(--ink);border-radius:10px;font-size:13px;overflow:hidden;box-shadow:0 0 0 .5px #0003,0 20px 44px -10px #00000059}:root[data-tone=dark] .mail-card{--bg:#1e1e1e;--bar:#2a2a2a;--ink:#f5f5f7;--muted:#98989d;--line:#ffffff1a}.mail-card-bar{background:var(--bar);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:36px;padding:0 12px;display:flex;position:relative}.mail-card-title{font-weight:600;position:absolute;left:50%;translate:-50%}.mail-card-send{width:26px;height:26px;color:var(--muted);border-radius:6px;place-items:center;margin-right:-5px;transition:color .16s,background-color .16s,scale .16s;display:grid}.mail-card-send svg{width:16px;height:16px}.mail-card-send:hover{color:#0a84ff;background:#0a84ff1f}.mail-card-send:active{scale:.9}.mail-card-send[data-sending] svg{animation:.9s cubic-bezier(.5,0,.2,1) mail-fly}@keyframes mail-fly{0%{opacity:1;translate:0;rotate:none}38%{opacity:0;translate:22px -18px;rotate:-18deg}39%{opacity:0;translate:0 12px;rotate:none}to{opacity:1;translate:0}}.mail-card-row{border-bottom:1px solid var(--line);height:32px;color:var(--muted);align-items:center;gap:6px;margin:0 14px;display:flex}.mail-card-chip{color:#0a84ff;cursor:copy;background:#0a84ff24;border-radius:999px;padding:1px 8px;transition:background-color .18s,color .18s,scale .16s;position:relative}.mail-card-chip:hover{background:#0a84ff3d}.mail-card-chip:active{scale:.96}.mail-card-slot{display:grid;overflow:hidden}.mail-card-slot>span{grid-area:1/1;justify-content:center;align-items:center;gap:4px;transition:translate .28s cubic-bezier(.2,1.3,.4,1),opacity .18s;display:inline-flex}.mail-card-slot>span+span{opacity:0;translate:0 -110%}.mail-card-chip svg{width:12px;height:12px}.mail-card-chip[data-copied]{color:#1f9d45;background:#30d1582e}.mail-card-chip[data-copied] .mail-card-slot>span:first-child{opacity:0;translate:0 110%}.mail-card-chip[data-copied] .mail-card-slot>span+span{opacity:1;translate:0}.mail-card-chip:after{content:"click to copy";background:var(--ink);color:var(--bg);white-space:nowrap;pointer-events:none;opacity:0;border-radius:5px;padding:3px 7px;font-size:10.5px;transition:opacity .15s,translate .15s;position:absolute;bottom:calc(100% + 6px);left:50%;translate:-50% 3px}.mail-card-chip:hover:not([data-copied]):after{opacity:1;transition-delay:.35s;translate:-50%}.mail-card-subject{color:var(--ink)}.mail-card-body{min-height:64px;padding:12px 14px 16px}.mail-card-typed{vertical-align:bottom;white-space:nowrap;border-right:1.5px solid #0a84ff;max-width:0;padding-right:1px;display:inline-block;overflow:hidden}[data-active] .mail-card-typed{animation:1.4s steps(31,end) .3s forwards mail-type,1s step-end infinite mail-caret}@keyframes mail-type{to{max-width:31ch}}@keyframes mail-caret{50%{border-right-color:#0000}}.pdf-card{--bar:#ececec;--canvas:#d9d9d9;--ink:#1d1d1f;--muted:#86868b;background:var(--canvas);color:var(--ink);border-radius:10px;overflow:hidden;box-shadow:0 0 0 .5px #00000040,0 22px 48px -10px #00000061}:root[data-tone=dark] .pdf-card{--bar:#2c2c2e;--canvas:#1c1c1e;--ink:#f5f5f7;--muted:#98989d}.pdf-card-bar{background:var(--bar);border-bottom:1px solid #0000001f;align-items:center;height:38px;padding:0 12px;display:flex;position:relative}.pdf-card-title{flex-direction:column;align-items:center;font-size:12px;font-weight:600;line-height:1.15;display:flex;position:absolute;left:50%;translate:-50%}.pdf-card-title small{color:var(--muted);font-size:10px;font-weight:400}.pdf-card-tools{gap:2px;margin-left:auto;display:flex}.pdf-card-tool{width:26px;height:24px;color:var(--muted);border-radius:6px;place-items:center;transition:background-color .15s,color .15s,scale .15s;display:grid;position:relative}.pdf-card-tool:hover{background:color-mix(in srgb, var(--ink) 9%, transparent);color:var(--ink)}.pdf-card-tool:active{scale:.9}.pdf-card-tool svg{grid-area:1/1;width:14px;height:14px}.pdf-card-tool:after{content:attr(data-tip);z-index:1;color:#fff;white-space:nowrap;pointer-events:none;opacity:0;background:#1e1e1eeb;border-radius:5px;padding:3px 7px;font-size:10.5px;transition:opacity .15s,translate .15s;position:absolute;top:calc(100% + 6px);left:50%;translate:-50% -3px}.pdf-card-tool:hover:after,.pdf-card-tool[data-saved]:after{opacity:1;translate:-50%}.pdf-card-tool .pdf-card-saved{opacity:0;color:#28c840;width:10px;height:10px;transition:scale .26s cubic-bezier(.2,1.5,.4,1) .18s,opacity .16s .18s;translate:0 -2px;scale:.4}.pdf-card-download path:last-child{transition:translate .2s cubic-bezier(.5,0,.8,.4),opacity .16s 60ms}.pdf-card-tool[data-saved] .pdf-card-download path:last-child{opacity:0;translate:0 5px}.pdf-card-tool[data-saved] .pdf-card-saved{opacity:1;scale:1}.pdf-card-canvas{cursor:zoom-in;padding:14px 16px 16px;display:block}.pdf-card-canvas img{opacity:0;background:#fff;width:100%;height:auto;transition:opacity .12s,translate .12s;display:block;translate:0 6px;box-shadow:0 0 0 .5px #00000026,0 2px 8px #0000002e}[data-active] .pdf-card-canvas img{opacity:1;transition:opacity .36s .12s,translate .52s cubic-bezier(.2,.8,.2,1) .12s,box-shadow .24s;translate:0}[data-active] .pdf-card-canvas:hover img{transition:translate .26s cubic-bezier(.2,.8,.2,1),box-shadow .26s;translate:0 -3px;box-shadow:0 0 0 .5px #00000026,0 10px 24px #00000040}.gh-card{--bg:#fff;--border:#d1d9e0;--fg:#1f2328;--muted:#59636e;--accent:#0969da;--l0:#eff2f5;--l1:#aceebb;--l2:#4ac26b;--l3:#2da44e;--l4:#116329;border:1px solid var(--border);background:var(--bg);color:var(--fg);border-radius:10px;padding:12px;font-size:12px;line-height:1.5;box-shadow:0 8px 24px #8c959f4d}:root[data-tone=dark] .gh-card{--bg:#151b23;--border:#3d444d;--fg:#f0f6fc;--muted:#9198a1;--accent:#4493f8;--l0:#212830;--l1:#033a16;--l2:#196c2e;--l3:#2ea043;--l4:#56d364;box-shadow:0 8px 24px #010409cc}.gh-card-head{align-items:center;gap:10px;display:flex}.gh-card{cursor:pointer;display:block}.gh-card:hover .gh-card-name strong{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.gh-card-plot{position:relative}.gh-card-graph rect:hover{stroke:var(--fg);stroke-width:.8px}.gh-card-tip{z-index:1;color:#fff;white-space:nowrap;pointer-events:none;background:#25292e;border-radius:6px;padding:4px 8px;font-size:11px;line-height:1.4;animation:.12s ease-out gh-tip;position:absolute;translate:-50% calc(-100% - 7px)}.gh-card-tip:after{content:"";border:4px solid #0000;border-top-color:#25292e;position:absolute;top:100%;left:50%;translate:-50%}:root[data-tone=dark] .gh-card-tip{background:#3d444d}:root[data-tone=dark] .gh-card-tip:after{border-top-color:#3d444d}@keyframes gh-tip{0%{opacity:0}}.gh-card-avatar{width:32px;height:32px;box-shadow:0 0 0 1px color-mix(in srgb, var(--fg) 15%, transparent);border-radius:50%}.gh-card-name{font-size:14px;line-height:1.25}.gh-card-name strong{font-weight:600}.gh-card-meta{color:var(--muted);margin-top:1px!important}.gh-card-meta b{color:var(--fg);font-weight:600}.gh-card-graph{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.gh-card-graph p{color:var(--fg);margin-bottom:6px!important}.gh-card-graph svg{display:block}.gh-card-graph rect{stroke:color-mix(in srgb, var(--fg) 6%, transparent);stroke-width:.5px;opacity:0}[data-active] .gh-card-graph rect{animation:.26s ease-out both gh-cell;animation-delay:calc(80ms + var(--c) * 9ms)}@keyframes gh-cell{0%{opacity:0;scale:.4}to{opacity:1;scale:1}}.gh-card-graph rect{transform-box:fill-box;transform-origin:50%}.gh-l0{fill:var(--l0);background:var(--l0)}.gh-l1{fill:var(--l1);background:var(--l1)}.gh-l2{fill:var(--l2);background:var(--l2)}.gh-l3{fill:var(--l3);background:var(--l3)}.gh-l4{fill:var(--l4);background:var(--l4)}.gh-card-legend{color:var(--muted);justify-content:flex-end;align-items:center;gap:3px;margin-top:6px;font-size:11px;display:flex}.gh-card-legend i{width:9px;height:9px;box-shadow:inset 0 0 0 .5px color-mix(in srgb, var(--fg) 8%, transparent);border-radius:2px}.gh-card-legend i:first-of-type{margin-left:3px}.gh-card-legend i:last-of-type{margin-right:3px}.x-card{--bg:#fff;--fg:#0f1419;--muted:#536471;--btn-bg:#0f1419;--btn-fg:#fff;--btn-hover:#272c30;background:var(--bg);color:var(--fg);border-radius:16px;padding:16px;font-size:15px;line-height:20px;box-shadow:0 0 15px #65778633,0 0 3px 1px #65778626}:root[data-tone=dark] .x-card{--bg:#000;--fg:#e7e9ea;--muted:#71767b;--btn-bg:#eff3f4;--btn-fg:#0f1419;--btn-hover:#d7dbdc;box-shadow:0 0 15px #fff3,0 0 3px 1px #ffffff26}.x-card-head{justify-content:space-between;align-items:flex-start;margin-bottom:4px;display:flex}.x-card-avatar{border-radius:50%;width:64px;height:64px;display:block;position:relative;overflow:hidden}.x-card-avatar img{width:100%;height:100%;display:block}.x-card-avatar:after{content:"";opacity:0;background:#1a1a1a26;transition:opacity .2s;position:absolute;inset:0}.x-card-avatar:hover:after{opacity:1}.x-card-who{display:block}.x-card-who:hover .x-card-name,.x-card-link:hover,.x-card-stats a:hover{text-decoration:underline}.x-card-follow{background:var(--btn-bg);color:var(--btn-fg);border-radius:999px;padding:0 16px;font-size:15px;font-weight:700;line-height:36px;transition:background-color .2s,scale .12s}.x-card-follow:hover{background:var(--btn-hover)}.x-card-follow:active{scale:.96}.x-card-name{align-items:center;gap:2px;font-weight:700;display:flex}.x-card-verified{color:#1d9bf0;width:18px;height:18px}.x-card-link{color:#1d9bf0}.x-card-handle{color:var(--muted)}.x-card-bio{white-space:pre-line;overflow-wrap:anywhere;margin-top:12px!important}.x-card-stats{color:var(--muted);gap:20px;font-size:14px;display:flex;margin-top:12px!important}.x-card-stats b{color:var(--fg);font-weight:700}.li-card{--bg:#fff;--fg:#000000e6;--muted:#0009;--blue:#0a66c2;--btn-fg:#fff;--banner:linear-gradient(120deg, #a0b4b7, #c7d7dc 55%, #dbe5e6);background:var(--bg);color:var(--fg);border-radius:8px;font-size:14px;line-height:1.43;overflow:hidden;box-shadow:0 0 0 1px #00000014,0 4px 16px #0000002e}:root[data-tone=dark] .li-card{--bg:#1b1f23;--fg:#ffffffe6;--muted:#fff9;--blue:#71b7fb;--btn-fg:#000;--banner:linear-gradient(120deg, #38434f, #4d5e6c 55%, #5a6b78);box-shadow:0 0 0 1px #ffffff1a,0 4px 16px #00000080}.li-card-banner{background:var(--banner);height:64px;position:relative}.li-card-logo{color:#fff;opacity:.9;width:20px;height:20px;position:absolute;top:10px;right:12px}.li-card-avatar{border:3px solid var(--bg);border-radius:50%;width:72px;height:72px;margin:-40px 0 0 16px;display:block;position:relative;overflow:hidden}.li-card-avatar img{width:100%;height:100%;display:block}.li-card-body{padding:8px 16px 16px}.li-card-name:hover,.li-card-orgs a:hover span{color:var(--blue);text-decoration:underline}.li-card-name{font-size:18px;font-weight:600;line-height:1.33;display:block}.li-card-headline{margin-top:2px!important}.li-card-muted{color:var(--muted);font-size:12px;margin-top:4px!important}.li-card-connections{color:var(--blue);font-weight:600}.li-card-orgs{gap:6px;margin:10px 0 0;padding:0;font-size:12px;font-weight:600;list-style:none;display:grid}.li-card-orgs li,.li-card-orgs a{align-items:center;gap:8px;min-width:0;display:flex}.li-card-orgs li>span:last-child,.li-card-orgs a>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.li-card-org{background:color-mix(in srgb, var(--fg) 12%, transparent);width:20px;height:20px;color:var(--muted);border-radius:3px;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid}.li-card-view{box-shadow:inset 0 0 0 1px var(--blue);color:var(--blue);border-radius:999px;margin-top:14px;padding:5px 16px;font-size:15px;font-weight:600;line-height:20px;transition:box-shadow .16s,background-color .16s,scale .12s;display:inline-block}.li-card-view:hover{background:color-mix(in srgb, var(--blue) 10%, transparent);box-shadow:inset 0 0 0 2px var(--blue)}.li-card-view:active{scale:.97}@media (prefers-reduced-motion:reduce){.pop-card,.hover-card[data-open] .pop-card,.hover-stack-item{filter:none;transition:opacity .16s;translate:0;scale:1}.site-card-shot img,[data-active] .site-card-shot img,.pdf-card-canvas img,[data-active] .pdf-card-canvas img{filter:none;clip-path:none;opacity:1;transition:opacity .16s;translate:0;scale:1}[data-active] .gh-card-graph rect{opacity:1;animation:none}.mail-card-typed,[data-active] .mail-card-typed{max-width:none;animation:none}}
