@import "https://fonts.googleapis.com/css2?family=Figtree:wght@300;400;500;600;700&display=swap";:root{--zinc-900:#18181b;--zinc-800:#27272a;--zinc-700:#3f3f46;--zinc-600:#52525b;--zinc-500:#71717a;--zinc-400:#a1a1aa;--zinc-300:#d4d4d8;--zinc-200:#e4e4e7;--zinc-100:#f4f4f5;--zinc-50:#fafafa;--white:#fff;--brown-600:#68432f;--brown-500:#875b3d;--brown-400:#a97956;--brown-300:#cbaa8e;--brown-100:#ead9c9;--brown-50:#faf4ee;--emerald-500:#10b981;--green-200:#bbf7d0;--red-400:#f87171;--red-500:#ef4444;--r-sm:6px;--r-md:8px;--r-lg:12px;--r-xl:16px;--r-2xl:20px;--r-3xl:28px;--r-signature:26px;--shadow-soft:0 1px 2px #18181b0f;--shadow-default:0 1px 3px #18181b0f, 0 4px 12px #18181b0a;--shadow-default-hover:0 2px 6px #18181b14, 0 10px 24px #18181b14;--shadow-media:0 2px 8px #18181b14, 0 12px 32px #18181b1a;--shadow-elevated:0 8px 24px #18181b1f, 0 24px 64px #18181b29;--shadow-glass:0 4px 16px #18181b14, inset 0 1px 0 #fff9;--font:"Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;font-family:var(--font);color:var(--zinc-600);background:var(--white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;corner-shape:squircle;font-size:16px;line-height:1.5}*{box-sizing:border-box;corner-shape:squircle}html{scroll-behavior:smooth}body{background:var(--white);margin:0}h1,h2,h3,p,ul{margin:0;padding:0}ul{list-style:none}button{font-family:inherit}::selection{background:var(--brown-100);color:var(--brown-500)}:focus-visible{outline:2px solid var(--brown-500);outline-offset:2px}a{color:var(--brown-500);text-decoration:none;transition:color .2s}a:hover{color:var(--brown-600)}.page{flex-direction:column;min-height:100svh;display:flex}.site-heading,.site-main{font-family:var(--font)}.gutter{padding-inline:64px}.container{width:100%;max-width:1126px;margin-inline:auto}@media (width<=768px){.gutter{padding-inline:24px}}.nav-wrap{z-index:100;pointer-events:none;justify-content:center;display:flex;position:sticky;top:16px}.nav-pill{pointer-events:auto;-webkit-backdrop-filter:blur(16px);corner-shape:round;box-shadow:var(--shadow-glass);background:#fff9;border:1px solid #ffffff80;border-radius:9999px;align-items:center;gap:4px;padding:4px;display:flex}.nav-tab{color:var(--zinc-500);corner-shape:round;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9999px;padding:6px 16px;font-size:18px;font-weight:400;transition:color .2s,background .2s}.nav-tab:hover{color:var(--zinc-900)}.nav-tab.active{color:var(--zinc-600);background:var(--white);box-shadow:var(--shadow-soft)}.header{background:linear-gradient(120deg,#fffaf5,#f4e8db,#fffdf9,#efe0d1,#fffaf5) 0 0/300% 300%;margin-top:-60px;padding-top:128px;padding-bottom:64px;animation:18s infinite gradient-bg;position:relative;overflow:hidden}.header:after{content:"";pointer-events:none;opacity:.18;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.6 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:absolute;inset:0}.header>*{z-index:1;position:relative}.hero{justify-content:space-between;align-items:flex-start;gap:48px;display:flex}.logo{corner-shape:round;background:var(--white);border:1px solid var(--zinc-100);width:56px;height:56px;box-shadow:var(--shadow-soft);color:var(--zinc-700);border-radius:9999px;justify-content:center;align-items:center;margin-bottom:24px;font-size:20px;font-weight:600;display:flex}.display-name{color:var(--zinc-700);margin-bottom:12px;font-size:36px;font-weight:500;line-height:1.15}.subtitle{color:var(--zinc-600);max-width:560px;font-size:18px}.meta{color:var(--zinc-600);flex-direction:column;gap:8px;margin:20px 0 24px;font-size:16px;display:flex}.meta span{align-items:center;gap:8px;display:inline-flex}.bio{color:var(--zinc-600);max-width:560px;margin-bottom:12px;font-size:16px}.three-words{color:var(--zinc-500);margin-bottom:24px;font-size:14px}.three-words strong{color:var(--zinc-900);font-weight:500}.photo{flex-shrink:0;width:180px}.photo-frame{border-radius:var(--r-xl);border:1px solid var(--zinc-100);background:var(--zinc-50);width:180px;height:220px;box-shadow:var(--shadow-media);color:var(--zinc-300);justify-content:center;align-items:center;font-size:48px;font-weight:500;display:flex}.caption{color:var(--zinc-400);margin-top:8px;font-size:12px}@media (width<=768px){.hero{flex-direction:column-reverse;gap:32px}}.btn{corner-shape:round;cursor:pointer;border:1px solid var(--zinc-900);background:var(--zinc-900);color:var(--white);border-radius:9999px;align-items:center;gap:8px;padding:10px 20px;font-size:16px;font-weight:500;transition:background .2s,border-color .2s,color .2s,transform .2s;display:inline-flex}.btn:hover{background:var(--brown-600);border-color:var(--brown-600);color:var(--white);transform:scale(1.02)}.badge{color:var(--zinc-600);corner-shape:round;background:var(--white);border:1px solid var(--zinc-100);box-shadow:var(--shadow-soft);border-radius:9999px;align-items:center;gap:8px;margin-bottom:24px;padding:6px 12px;font-size:14px;display:inline-flex}.dot{background:var(--emerald-500);border-radius:9999px;width:8px;height:8px;position:relative}.dot:after{content:"";border-radius:inherit;border:2px solid var(--green-200);animation:1.8s ease-out infinite pulse-ring;position:absolute;inset:0}.section-nav-wrap{z-index:90;padding-block:16px;display:flex;position:sticky;top:76px}.segmented{background:var(--zinc-50);border:1px solid var(--zinc-100);corner-shape:round;border-radius:9999px;gap:4px;max-width:100%;padding:4px;display:inline-flex;overflow-x:auto}.seg{color:var(--zinc-500);corner-shape:round;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:9999px;padding:6px 14px;font-size:14px;transition:color .2s,background .2s}.seg:hover{color:var(--zinc-900)}.seg.active{color:var(--zinc-900);background:var(--white);box-shadow:var(--shadow-soft)}section{margin-bottom:80px;scroll-margin-top:140px}.h2{color:var(--zinc-700);margin-bottom:8px;font-size:30px;font-weight:500;line-height:1.2}.section-sub{color:var(--zinc-500);margin-bottom:32px;font-size:18px}.divider{background:var(--zinc-100);border:0;height:1px}.row{border-bottom:1px solid var(--zinc-100);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;padding:18px 0;display:flex}.row-title{color:var(--zinc-900);font-size:20px;font-weight:500}.row-sub{color:var(--zinc-500);margin-left:12px;font-size:16px}.row-end{align-items:center;gap:12px;display:flex}.experience-identity{align-items:center;gap:16px;min-width:0;display:flex}.experience-row{align-items:center}.experience-row .period{white-space:nowrap}.experience-logo{border:1px solid var(--zinc-100);border-radius:12px;flex:0 0 56px;place-items:center;width:56px;height:56px;padding:8px;display:grid;overflow:hidden}.experience-logo img{object-fit:contain;width:100%;height:100%;display:block}.period{color:var(--zinc-400);font-size:14px}.tag{corner-shape:round;border:1px solid var(--zinc-100);background:var(--zinc-50);color:var(--zinc-600);border-radius:9999px;padding:2px 10px;font-size:12px;display:inline-block}.grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.card{background:var(--white);border:1px solid var(--zinc-100);border-radius:var(--r-2xl);box-shadow:var(--shadow-default);padding:20px;transition:box-shadow .3s,transform .3s}.card:hover{box-shadow:var(--shadow-default-hover);transform:translateY(-2px)}.card-title{color:var(--zinc-900);margin-bottom:4px;font-size:20px;font-weight:500}.card-desc{color:var(--zinc-500);font-size:14px}.lore-card{align-items:flex-start;gap:14px;display:flex}.lore-emoji{flex-shrink:0;font-size:30px;line-height:1}.lore-text{color:var(--zinc-600);font-size:16px}.quotes{flex-direction:column;gap:24px;display:flex}.quote-card{background:var(--zinc-50);border:1px solid var(--zinc-100);border-radius:var(--r-3xl);padding:28px}.quote-text{color:var(--zinc-800);border-bottom:1px solid var(--zinc-300);margin-bottom:12px;padding-bottom:12px;font-size:24px;font-weight:400;line-height:1.35}.quote-author{color:var(--zinc-400);font-size:14px}.shelf{margin-top:24px}.shelf-item{border-bottom:1px solid var(--zinc-100);justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;animation:.4s both shelfItemFadeUp;display:flex}.shelf-title{color:var(--zinc-800);font-size:18px}.star{color:var(--brown-500);margin-right:4px}.shelf-author{color:var(--zinc-400);flex-shrink:0;font-size:14px}.legend{color:var(--zinc-400);margin-bottom:16px;font-size:14px}.footer{border-top:1px solid var(--zinc-100);background:var(--white);padding-block:40px 32px}.footer-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:32px;display:flex}.footer-brand{align-items:center;gap:10px;display:flex}.footer-mark{color:#171717;border:1px solid #171717;border-radius:6px;flex:0 0 26px;place-items:center;width:26px;height:29px;font:italic 18px/1 Georgia,Times New Roman,serif;transition:transform .22s,background-color .22s,color .22s;display:grid}.footer-mark:hover,.footer-mark:focus-visible{color:#fff;background:#171717;transform:rotate(-12deg)}.footer-mark:focus-visible{outline:2px solid var(--brown-500,#875b3d);outline-offset:4px}@media (prefers-reduced-motion:reduce){.footer-mark{transition:none}.footer-mark:hover,.footer-mark:focus-visible{transform:none}}.footer-name{color:var(--zinc-700);font-size:28px;font-weight:500;line-height:1.2}.footer-local-time{max-width:280px;color:var(--zinc-400);align-items:flex-start;gap:5px;margin:9px 0 12px;font-size:15px;line-height:1.5;display:flex}.footer-local-time svg{flex:0 0 13px;width:13px;height:13px;margin-top:4px}.footer-location{white-space:nowrap}.footer-email{color:var(--brown-500);overflow-wrap:anywhere;font-size:16px;font-weight:500;display:inline-block}.footer-email:hover{color:var(--brown-600);text-underline-offset:3px;text-decoration:underline}.footer-links{flex-wrap:wrap;gap:24px;display:flex}.footer-links a{letter-spacing:.04em;color:var(--zinc-400);font-size:14px}.footer-links a:hover{color:var(--zinc-900)}.footer-bottom{color:var(--zinc-400);flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:12px;display:flex}.scroll-reveal{opacity:0;transition:opacity .5s,transform .5s;transform:translateY(24px)}.scroll-reveal.in{opacity:1;transform:none}@keyframes gradient-bg{0%,to{background-position:0%}50%{background-position:100%}}@keyframes pulse-ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}@keyframes shelfItemFadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes blink{to{visibility:hidden}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.scroll-reveal{opacity:1;transform:none}}.project-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.project-card{aspect-ratio:1.85;cursor:pointer;border:1px solid var(--zinc-100);border-radius:var(--r-signature);background:var(--zinc-50);width:100%;box-shadow:var(--shadow-soft);padding:0;transition:transform .3s,box-shadow .3s;animation:.6s both projectCardEnter;display:block;position:relative;overflow:hidden}.project-card:hover{box-shadow:var(--shadow-media);transform:scale(1.01)}.cover{border-radius:inherit;position:absolute;inset:0;overflow:hidden}.cover video,.cover img{object-fit:cover;width:100%;height:100%;display:block}.cover-fallback{justify-content:center;align-items:center;width:100%;height:100%;animation:14s infinite gradient-bg;display:flex}.cover-fallback span{color:#ffffffd9;letter-spacing:-.02em;font-size:clamp(28px,4vw,48px);font-weight:500}.project-card-static{cursor:default}.company-cover{padding:20px 28px 100px}.cover .company-cover-logo{object-fit:contain;width:70%;height:100%;max-height:88px}.project-pill{corner-shape:round;max-width:calc(100% - 24px);box-shadow:var(--shadow-soft);background:#ffffffeb;border-radius:9999px;align-items:center;gap:6px;padding:6px 12px;font-size:16px;line-height:1.2;display:inline-flex;position:absolute;bottom:12px;left:12px}.project-pill b{color:var(--zinc-900);font-weight:500}.project-pill i{color:var(--zinc-400);font-size:12px;font-style:normal}.project-pill em{color:var(--zinc-400);font-style:normal}.company-pill{flex-direction:column;align-items:flex-start;gap:4px}.company-pill em{font-size:12px}@media (width<=768px){.project-grid{grid-template-columns:1fr;gap:16px}}.scrim{z-index:200;-webkit-backdrop-filter:blur(4px);background:#18181b33;animation:.2s both fadeIn;position:fixed;inset:0}.modal{background:var(--white);border-radius:var(--r-signature);box-shadow:var(--shadow-elevated);transition:top .3s,bottom .3s,left .3s,right .3s;animation:.3s cubic-bezier(.2,.8,.2,1) both modalScaleIn;position:absolute;inset:48px 8.5%;overflow-y:auto}.modal.expanded{inset:0}.icon-btn{z-index:2;width:32px;height:32px;color:var(--zinc-400);corner-shape:round;cursor:pointer;background:0 0;border:0;border-radius:9999px;justify-content:center;align-items:center;transition:color .2s,background .2s;display:inline-flex;position:sticky;top:24px}.icon-btn:hover{color:var(--zinc-900);background:var(--zinc-100)}.icon-btn.left{float:left;margin:24px 0 0 24px}.icon-btn.right{float:right;margin:24px 24px 0 0}.modal-body{clear:both;max-width:736px;margin:0 auto;padding:32px 24px 96px}.modal-mark{corner-shape:round;background:var(--zinc-900);width:64px;height:64px;color:var(--white);border-radius:9999px;justify-content:center;align-items:center;margin-bottom:32px;font-size:28px;font-weight:500;display:flex}.modal-title{color:var(--zinc-900);margin-bottom:40px;font-size:36px;font-weight:400;line-height:1.15}.modal-meta{grid-template-columns:repeat(4,1fr);gap:24px;padding-bottom:32px;display:grid}.modal-meta span{color:var(--zinc-400);margin-bottom:16px;font-size:16px;display:block}.modal-meta p{color:var(--zinc-700);font-size:16px}.modal-meta .block{color:inherit;margin:0}.modal-media{aspect-ratio:1.85;border-radius:var(--r-signature);border:1px solid var(--zinc-50);margin:32px 0 64px;position:relative;overflow:hidden}.modal-cols{grid-template-columns:1fr 1fr;gap:48px;display:grid}.eyebrow{color:var(--zinc-300);text-transform:uppercase;margin-bottom:16px;font-size:16px;display:block}.mission{color:var(--zinc-900);font-size:24px;line-height:1.4}.prose p{color:var(--zinc-700);margin-bottom:24px;font-size:16px;line-height:1.5}.prose p.lead{color:var(--zinc-400)}@media (width<=768px){.modal{inset:16px 8px}.modal-meta{grid-template-columns:1fr 1fr}.modal-cols{grid-template-columns:1fr;gap:24px}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalScaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@keyframes projectCardEnter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.container{max-width:1380px}.site-main.gutter,.header.gutter{padding-inline:clamp(24px,3.7vw,58px)}.content-layout{grid-template-columns:144px minmax(0,1fr);align-items:start;gap:48px;max-width:1520px;margin:0 auto;display:grid}.content-layout>.container{min-width:0;max-width:none}.content-layout>.container>section{width:min(100%,1066px);margin-inline:auto}@media (width>=1151px){.about-cursor-page .content-layout>.container{position:relative;left:-24px}}.side-nav{align-self:start;max-height:calc(100vh - 108px);padding-top:30px;position:sticky;top:88px;overflow-y:auto}.side-nav-inner{flex-direction:column;align-items:flex-start;gap:7px;display:flex}.side-nav-group{width:100%}.side-nav-link,.side-nav-sublink{color:#92929e;cursor:pointer;text-align:left;font-family:var(--font);letter-spacing:.005em;background:0 0;border:0;padding:3px 0;font-size:15px;font-weight:500;line-height:1.45;display:block}.side-nav-link:hover,.side-nav-sublink:hover{color:var(--zinc-700)}.side-nav-link.active{color:var(--brown-500);font-weight:500}.side-nav-subsections{opacity:0;visibility:hidden;pointer-events:none;transform-origin:0 0;grid-template-rows:0fr;margin:0 0 0 10px;transition:grid-template-rows .34s,opacity .24s,transform .38s cubic-bezier(.2,1.35,.4,1),margin .34s,visibility .34s;display:grid;transform:translateY(-8px)scale(.96)}.side-nav-subsections.expanded{opacity:1;visibility:visible;pointer-events:auto;grid-template-rows:1fr;margin-top:6px;margin-bottom:5px;transform:translateY(0)scale(1)}.side-nav-subsections-inner{gap:3px;min-height:0;display:grid;overflow:hidden}.side-nav-subsections.expanded .side-nav-sublink{animation:.32s cubic-bezier(.2,1.35,.4,1) both sidebarPop}.side-nav-subsections.expanded .side-nav-sublink:nth-child(2){animation-delay:45ms}.side-nav-subsections.expanded .side-nav-sublink:nth-child(3){animation-delay:90ms}@keyframes sidebarPop{0%{opacity:0;transform:translateY(-6px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.side-nav-sublink{color:var(--zinc-400)}.side-nav-sublink.active{color:var(--brown-500);font-weight:600}.side-nav-sublink span{color:var(--zinc-300);font-weight:400}.site-main .section-nav-wrap{display:none}.site-main section{scroll-margin-top:100px}.site-main .h2{font-size:28px;line-height:1.25}.site-main :is(#community,#philosophy)>.scroll-reveal>.h2{font-weight:600}.site-main .section-sub{font-size:16px;line-height:1.5}.site-main .legend{font-size:16px}.shelf-collection{scroll-margin-top:105px}.header .hero{grid-template-columns:168px 300px minmax(0,1fr);align-items:start;gap:64px;max-width:1520px;display:grid}.header .hero:before{content:"";grid-area:1/1}.header .hero .photo{grid-area:1/2;width:300px;margin-top:44px}.header .hero .photo-frame{width:300px;height:350px}.header .hero>div:first-child{grid-area:1/3;min-width:0}.header .display-name{font-weight:600}.header .subtitle,.header .bio,.header .three-words{font-weight:500;line-height:1.55}.header .meta,.site-main .section-sub,.site-main .row-sub,.site-main .card-desc,.site-main .quote-text,.shelf-kind,.shelf-year,.shelf-source{font-weight:500}.hero>:first-child{flex:1}.hero .meta{flex-flow:wrap;column-gap:30px}.hero .display-name{font-size:clamp(38px,4vw,60px)}.hero .photo,.hero .photo-frame{width:clamp(190px,22vw,300px)}.hero .photo-frame{height:clamp(240px,28vw,350px)}@media (width>=1000px){.quotes{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}}.community-layout{grid-template-columns:minmax(200px,245px) minmax(0,1fr);align-items:start;gap:clamp(28px,5vw,72px);display:grid}.community-sidebar{border-left:1px solid var(--zinc-200);flex-direction:column;gap:6px;display:flex}.community-tab{appearance:none;text-align:left;cursor:pointer;color:var(--zinc-500);background:0 0;border:0;border-left:2px solid #0000;justify-content:space-between;align-items:center;gap:8px;margin-left:-1px;padding:13px 15px;font-size:15px;display:flex}.community-tab.active{border-left-color:var(--brown-500);background:var(--brown-50);color:var(--zinc-900);font-weight:600}.community-tab:hover{color:var(--zinc-900)}.community-panel[hidden]{display:none}.community-heading{margin:0 0 26px}.community-heading h3{color:var(--zinc-900);letter-spacing:-.025em;font-size:clamp(21px,2.4vw,30px);font-weight:500}.community-heading p{color:var(--zinc-500);margin-top:6px}.polaroid-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:clamp(12px,2vw,26px);padding:10px 8px 24px;display:grid}.polaroid-card{min-width:0;transform:rotate(var(--tilt));background:#fff;border:1px solid #f0f0f0;border-radius:15px;margin:0;padding:10px 10px 0;transition:transform .25s,box-shadow .25s;box-shadow:0 4px 10px #18181b0f,0 16px 32px #18181b17}.polaroid-card:hover{box-shadow:var(--shadow-elevated);z-index:2;position:relative;transform:rotate(0)translateY(-7px)}.polaroid-image{aspect-ratio:4/5;background:var(--zinc-50);border-radius:7px;overflow:hidden}.polaroid-image img{object-fit:cover;width:100%;height:100%;display:block}.polaroid-placeholder{color:#9a8b7d;background:linear-gradient(145deg,#faf6f1,#efe8df 58%,#f8f4ee);flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;height:100%;display:flex}.polaroid-placeholder span{font-size:30px}.polaroid-placeholder small{text-align:center;font-size:11px}.polaroid-caption{text-align:center;min-height:66px;color:var(--zinc-700);overflow-wrap:anywhere;justify-content:center;align-items:center;padding:12px 4px 15px;font-size:14px;display:flex}.shelf-collections{gap:56px;display:grid}.shelf-collection-top{border-bottom:1px solid var(--zinc-100);justify-content:space-between;align-items:center;gap:18px;min-height:42px;padding:0 0 8px;display:flex}.shelf-filters{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.shelf-kind,.shelf-year{appearance:none;cursor:pointer;white-space:nowrap;border:0;font-family:inherit}.shelf-kind{background:var(--zinc-50);color:var(--zinc-500);border-radius:999px;align-items:center;gap:5px;padding:7px 12px;font-size:16px;line-height:1;display:inline-flex}.shelf-kind span{color:var(--zinc-400)}.shelf-kind:hover,.shelf-kind.selected{background:var(--zinc-100);color:var(--zinc-600)}.shelf-year{color:var(--zinc-400);background:0 0;border-radius:999px;padding:7px 9px;font-size:16px;line-height:1}.shelf-year span{color:var(--zinc-300);font-size:13px}.shelf-year:hover,.shelf-year.selected{background:var(--zinc-50);color:var(--zinc-600)}.shelf-source{color:var(--zinc-400);white-space:nowrap;font-size:16px}a.shelf-source:hover{color:var(--brown-500)}.shelf-gallery{grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:clamp(12px,2vw,24px);max-width:1200px;margin:28px auto 0;display:grid}.shelf-entry{width:100%;min-width:0;margin:0}.shelf-cover{aspect-ratio:2/3;background:var(--cover-a);border-radius:11px;transition:transform .25s,box-shadow .25s;position:relative;overflow:hidden;box-shadow:0 5px 16px #18181b1f}.shelf-cover.square{aspect-ratio:1}.shelf-entry:hover .shelf-cover{transform:translateY(-4px);box-shadow:0 9px 25px #18181b2b}.shelf-cover img{object-fit:cover;width:100%;height:100%;display:block}.shelf-cover-placeholder{color:#fff;background:radial-gradient(circle at 75% 25%, #ffffff94, transparent 31%), linear-gradient(135deg, var(--cover-a), var(--cover-b));text-shadow:0 1px 12px #00000038;flex-direction:column;justify-content:flex-end;padding:12% 10%;display:flex;position:absolute;inset:0}.shelf-cover-placeholder .cover-symbol{opacity:.45;font-size:50px;position:absolute;top:5%;left:8%}.shelf-cover-placeholder strong{letter-spacing:-.03em;overflow-wrap:anywhere;font-size:21px;font-weight:600;line-height:1.08}.shelf-cover-placeholder small{opacity:.85;margin-top:10px;font-size:12px}.shelf-caption{color:var(--zinc-500);overflow-wrap:anywhere;margin:10px 0 0;font-size:14px;line-height:1.4}@media (width<=1150px){.header .hero{grid-template-columns:minmax(210px,300px) minmax(0,1fr);gap:36px}.header .hero:before{display:none}.header .hero .photo{grid-column:1;width:100%}.header .hero .photo-frame{width:100%}.header .hero>div:first-child{grid-column:2}}@media (width<=1000px){.content-layout{grid-template-columns:112px minmax(0,1fr);gap:24px}.polaroid-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=800px){.content-layout{display:block}.side-nav{display:none}.site-main .section-nav-wrap{display:flex}.header .hero{flex-direction:column-reverse;gap:28px;display:flex}.header .hero .photo{width:min(100%,300px);margin-top:0}.header .hero .photo-frame{width:100%}}@media (width<=700px){.community-layout{grid-template-columns:1fr;gap:20px}.community-sidebar{border-left:0;border-bottom:1px solid var(--zinc-200);flex-direction:row;overflow-x:auto}.community-tab{white-space:nowrap;border-bottom:2px solid #0000;border-left:0;margin:0 0 -1px}.community-tab.active{border-left:0;border-bottom-color:var(--brown-500)}.shelf-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.shelf-collection-top{align-items:flex-start}.shelf-source{padding-top:8px}.gutter{padding-inline:20px}}@media (width<=420px){.shelf-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.polaroid-grid{gap:10px;padding-inline:2px}.polaroid-card{padding:7px 7px 0}.polaroid-caption{min-height:50px;font-size:11px}}@media (prefers-reduced-motion:reduce){.polaroid-card,.polaroid-card:hover,.shelf-entry:hover .shelf-cover{transform:none}}.site-heading{background:#fff;padding-top:32px}.site-heading-inner{border-bottom:1px solid var(--zinc-100);width:100%;max-width:1520px;margin:0 auto;padding-bottom:10px}.identity-logo{aspect-ratio:1588/1032;width:136px;margin-top:16px;margin-left:-12px;text-decoration:none;display:block;position:relative}.identity-logo img{mix-blend-mode:multiply;pointer-events:none;width:100%;height:auto;display:block}.identity-logo:hover img,.identity-logo:focus-visible img{animation:2.4s cubic-bezier(.45,0,.18,1) both introInkReveal}.identity-logo:focus-visible{outline:2px solid var(--brown-500);outline-offset:8px;border-radius:2px}.identity-copy{margin-top:32px}.identity-copy h1{color:var(--zinc-700);letter-spacing:-.025em;font-size:34px;font-weight:500;line-height:1.2}.identity-copy p{color:var(--zinc-400);margin-top:10px;font-size:18px;font-weight:400;line-height:1.5}.top-links{flex-wrap:wrap;align-items:center;gap:5px;margin:14px 0 0 -12px;display:flex}.top-links a{color:var(--zinc-500);font-family:var(--font);border-radius:999px;padding:6px 12px;font-size:16px;font-weight:500}.top-links a:hover{color:var(--brown-600)}.top-links a.active{color:var(--brown-600);background:var(--brown-50);box-shadow:var(--shadow-default)}@media (width<=480px){.top-links{gap:2px;margin-left:-8px}.top-links a{padding:6px 8px;font-size:14px}}.site-main .about-section{grid-template-columns:270px minmax(0,700px);justify-content:start;align-items:start;gap:96px;margin-top:34px;margin-bottom:90px;display:grid}.about-photo{justify-self:start;padding:8px 0 0 6px}.about-photo-frame{background:linear-gradient(145deg,#ede9e4,#faf8f5);border:10px solid #fff;border-radius:3px;place-items:center;width:260px;height:340px;display:grid;transform:rotate(3deg);box-shadow:0 2px 6px #18181b29}.about-photo-frame img{object-fit:cover;object-position:center;width:100%;height:100%;min-height:0;display:block}.about-photo-frame span{color:var(--zinc-300);font-size:48px;font-weight:400}.about-photo-caption{max-width:240px;color:var(--zinc-400);text-align:center;margin:26px auto 0;font-size:13px;line-height:1.55}.about-copy{max-width:730px;padding-top:19px}.about-copy h2{color:var(--zinc-700);margin-bottom:27px;font-size:30px;font-weight:500;line-height:1.2}.about-meta{color:var(--zinc-400);flex-wrap:wrap;gap:12px 24px;margin-bottom:28px;font-size:14px;font-weight:400;display:flex}.about-meta span{align-items:center;gap:8px;display:inline-flex}.about-meta .meta-icon{width:18px;height:18px;color:var(--zinc-400);flex:none}.about-copy p{color:var(--zinc-600);margin-bottom:17px;font-size:15px;font-weight:400;line-height:1.6}@media (width<=1150px){.site-main .about-section{grid-template-columns:260px minmax(0,1fr);gap:48px}.about-photo{width:100%;padding-left:0}.about-photo-frame{box-sizing:border-box;width:100%;height:340px}}@media (width<=900px){.site-heading{padding-top:24px}.identity-logo{width:116px;margin-top:10px;margin-left:-6px}.identity-copy{margin-top:24px}.site-main .about-section{grid-template-columns:1fr;gap:28px;margin-top:18px}.about-photo{order:1;justify-self:start;width:min(290px,100%);padding:0}.about-copy{order:2;padding-top:0}.about-photo-frame{width:100%}.about-photo-caption{margin-left:0}}@media (prefers-reduced-motion:reduce){.identity-logo:hover img,.identity-logo:focus-visible img{animation:none}}.blank-page{background:#fff;flex:1}.site-heading .identity-mark{box-sizing:border-box;border:1px solid var(--zinc-900,#18181b);background:var(--white,#fff);width:40px;height:40px;color:var(--zinc-900,#18181b);box-shadow:none;border-radius:12px;place-items:center;margin-top:26px;margin-left:0;font-family:Georgia,Times New Roman,serif;font-size:22px;font-style:italic;font-weight:400;line-height:1;text-decoration:none;transition:transform .22s,background-color .22s,color .22s;display:grid}@supports (corner-shape:squircle){.site-heading .identity-mark{corner-shape:squircle;border-radius:50%}}.site-heading .identity-mark:hover,.site-heading .identity-mark:focus-visible{color:#fff;background:var(--zinc-900,#18181b);border-color:var(--zinc-900,#18181b);transform:rotate(-12deg)}.site-main .about-photo-frame{transform:rotate(-3deg)}.site-heading .identity-mark:focus-visible{outline:2px solid var(--brown-500,#875b3d);outline-offset:4px}.site-heading .identity-mark{font-size:18px}.site-heading .identity-mark span{display:block;transform:translateY(-1px)}.site-heading{padding-top:16px}.site-heading .identity-mark{margin-top:13px}.site-heading .identity-copy{margin-top:16px}.site-heading .top-links{margin-top:7px}.about-cursor-page .site-main .about-section{margin-top:17px}@media (width<=900px){.site-heading{padding-top:12px}.site-heading .identity-copy{margin-top:12px}.about-cursor-page .site-main .about-section{margin-top:9px}}@media (prefers-reduced-motion:reduce){.site-heading .identity-mark{transition:none}.site-heading .identity-mark:hover,.site-heading .identity-mark:focus-visible{transform:none}}:root{--motion-150:.15s;--motion-200:.2s;--motion-300:.24s;--motion-500:.24s;--motion-enter:.22s;--motion-exit:.176s;--motion-move:.24s;--motion-stagger:30ms;--motion-out:cubic-bezier(.2, .8, .2, 1);--motion-in-out:cubic-bezier(.4, 0, .2, 1)}.scroll-reveal{transition:opacity var(--motion-500) var(--motion-out), transform var(--motion-500) var(--motion-out)}.project-card{transition:transform var(--motion-300) var(--motion-out), box-shadow var(--motion-300) var(--motion-out);animation:none}.scroll-reveal.in .project-card{animation:projectCardEnter var(--motion-500) var(--motion-out) both}.scroll-reveal.in .project-pill{animation:fadeSlideUp var(--motion-300) var(--motion-out) .12s both}.shelf-entry{animation:shelfItemFadeUp var(--motion-enter) var(--motion-out) both}.shelf-cover{transition:transform var(--motion-300) var(--motion-out), box-shadow var(--motion-300) var(--motion-out)}.shelf-kind,.shelf-year,.community-tab,.top-links a{transition:color var(--motion-200) ease-out, background-color var(--motion-200) ease-out, box-shadow var(--motion-200) ease-out}.scrim{animation:fadeIn var(--motion-200) ease-out both}.modal{animation:modalScaleIn var(--motion-300) var(--motion-out) both}.modal-body>.modal-mark,.modal-body>.modal-title,.modal-body>.modal-meta,.modal-body>.modal-media,.modal-body>.modal-cols{animation:fadeSlideUp var(--motion-300) var(--motion-out) both}.modal-body>.modal-title{animation-delay:40ms}.modal-body>.modal-meta{animation-delay:80ms}.modal-body>.modal-media{animation-delay:.12s}.modal-body>.modal-cols{animation-delay:.16s}.modal-media .cover{animation:scaleIn var(--motion-300) var(--motion-out) .16s both}.icon-btn.right{animation:fadeSlideDown var(--motion-300) var(--motion-out) .1s both}.community-panel:not([hidden]) .community-heading,.community-panel:not([hidden]) .polaroid-caption{animation:fadeSlideUp var(--motion-300) var(--motion-out) both}.community-panel:not([hidden]) .polaroid-card:nth-child(2) .polaroid-caption{animation-delay:50ms}.community-panel:not([hidden]) .polaroid-card:nth-child(3) .polaroid-caption{animation-delay:.1s}.community-panel:not([hidden]) .polaroid-card:nth-child(4) .polaroid-caption{animation-delay:.15s}.cover-fallback{animation:18s infinite gradient-bg}.colon{animation:1s steps(2,start) infinite blink}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.project-card,.shelf-entry,.scroll-reveal.in .project-card,.scroll-reveal.in .project-pill,.scrim,.modal,.modal-body>*,.modal-media .cover,.icon-btn.right,.community-panel:not([hidden]) .community-heading,.community-panel:not([hidden]) .polaroid-caption,.cover-fallback,.colon{animation:none!important}}.intro-page{--intro-ink:#51473f;--intro-muted:#95877b;min-height:100svh;color:var(--intro-ink);isolation:isolate;background:#fbfaf8;flex-direction:column;display:flex;overflow:hidden}.intro-topline,.intro-bottomline{z-index:7;justify-content:space-between;align-items:center;gap:24px;width:min(100% - 88px,1500px);margin-inline:auto;display:flex;position:relative}.intro-topline{--compact-mark-background:#fbfaf8;width:calc(100% - 2*clamp(20px,4.5vw,64px));padding-top:23px}.intro-stage{box-sizing:border-box;flex:1;place-items:center;width:min(100%,1400px);min-height:72svh;margin:0 auto;padding:32px 20px 40px;transition:opacity .4s,transform .4s;display:grid;position:relative}.intro-stage:before{content:"";pointer-events:none;background:radial-gradient(#d6c8b82e,#0000 68%);border-radius:50%;position:absolute;inset:10% 11%}.intro-painting-showcase{width:min(68vw,510px,max(200px,72svh - 216px));animation:.85s cubic-bezier(.2,.8,.2,1) both introArtworkIn;position:relative;transform:rotate(-2deg)}.intro-artwork{appearance:none;text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:block}.intro-artwork:focus-visible{outline:2px solid var(--intro-ink);outline-offset:6px}.intro-artwork-visual{aspect-ratio:4/5;isolation:isolate;filter:drop-shadow(0 10px 14px #4636271f);width:100%;display:block;position:relative}.intro-artwork-window{background:#eee5d5;display:block;position:absolute;inset:6.5% 8.5%;overflow:hidden}.intro-artwork-image{object-fit:fill;opacity:0;width:100%;height:100%;transition:opacity .9s ease-in-out;display:block;position:absolute;inset:0}.intro-artwork-image.is-active{opacity:1}.intro-artwork-image--framed-source{width:125%;height:116.96%;inset:-8.77% auto auto -12.5%}.intro-artwork-frame{z-index:1;box-sizing:border-box;border:1px solid #0000;pointer-events:none;border-image-slice:25%;border-image-width:14%;border-image-repeat:stretch;width:100%;height:100%;display:block;position:absolute;inset:0}.intro-artwork-signature{z-index:2;pointer-events:none;width:48%;height:auto;animation:2.4s cubic-bezier(.45,0,.18,1) .35s both introInkReveal;position:absolute;top:-3%;left:-12%;transform:rotate(-43deg)}.intro-artwork-controls{gap:2px;display:flex;position:absolute;top:calc(100% + 6px);right:4%}.intro-artwork-controls button{width:36px;height:36px;color:var(--intro-muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;font:400 17px/1 Arial,Helvetica,sans-serif;display:grid}.intro-artwork-controls button:hover{color:var(--intro-ink)}.intro-artwork-controls button:focus-visible{outline-offset:2px;outline:2px solid}.intro-bottomline{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);padding-bottom:30px;display:grid}.intro-bottomline p,.intro-bottomnote{color:var(--intro-muted);font-size:12px;line-height:1.45}.intro-bottomnote{text-align:right}.intro-studies{flex-wrap:wrap;gap:12px 20px;display:flex}.page:focus{outline:none}.intro-study-link{color:var(--intro-muted);font-size:12px;text-decoration:none;transition:color .2s}.intro-study-link:hover{color:var(--intro-ink);text-underline-offset:4px;text-decoration:underline}.intro-enter{box-sizing:border-box;color:#fff;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;white-space:nowrap;background:#171717;border:1px solid #171717;border-radius:0;grid-column:2;justify-content:center;justify-self:center;align-items:center;gap:10px;min-width:132px;padding:11px 20px;font-family:Arial,Helvetica,sans-serif;font-size:10px;font-weight:600;line-height:1;text-decoration:none;transition:transform .18s,background-color .18s;display:inline-flex}.intro-enter:hover{background:#303030;transform:translateY(-2px)}.intro-enter:focus-visible{outline-offset:4px;outline:2px solid #171717}.intro-enter span{font-size:12px;font-weight:400;line-height:1}.intro-page--leaving{pointer-events:none}.intro-page--leaving .intro-stage{opacity:0;transform:scale(1.04)}.intro-page--leaving .intro-topline,.intro-page--leaving .intro-bottomline{opacity:0;transition:opacity .3s}@keyframes introArtworkIn{0%{opacity:0;transform:translateY(20px)rotate(1deg)scale(.94)}to{opacity:1;transform:translateY(0)rotate(-2deg)scale(1)}}@keyframes introInkReveal{0%{opacity:0;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0)}}@media (width<=760px){.intro-bottomline{width:calc(100% - 40px)}.intro-stage{min-height:62svh}.intro-bottomline{grid-template-columns:minmax(0,1fr);padding-bottom:20px}.intro-bottomline p{width:100%}.intro-bottomnote{text-align:left;display:inline}.intro-enter{grid-column:1;margin-left:0}}@media (prefers-reduced-motion:reduce){.intro-artwork-signature,.intro-painting-showcase{animation:none}.intro-stage,.intro-topline,.intro-bottomline,.intro-enter,.intro-artwork-image{transition:none}}@media (width<=700px){.intro-topline{width:calc(100% - 32px);padding-top:17px}}.creation-page{--creation-paper:#f7f7f5;--creation-ink:#171717;--creation-muted:#555551;min-height:100svh;color:var(--creation-ink);box-sizing:border-box;background:0 0;flex-direction:column;padding:23px clamp(20px,4.5vw,64px) 22px;font-family:Arial,Helvetica,sans-serif;transition:background-color .35s,color .35s;display:flex}.creation-page *{box-sizing:border-box}.creation-page--dark{--creation-paper:#171717;--creation-ink:#f3f0e9;--creation-muted:#b9b7b1}.creation-page a{color:inherit}.creation-background-shell{isolation:isolate;background:#f7f7f5;min-height:100svh;position:relative;overflow-x:hidden}.creation-background-shell .creation-page{z-index:1;background:0 0;position:relative}.creation-background-shell .creation-page--dark{background:#171717}.creation-header{justify-content:space-between;align-items:center;gap:30px;padding:0 0 20px;display:flex}.creation-emblem{border:1px solid;border-radius:50%;flex:0 0 40px;place-items:center;width:40px;height:40px;font-family:Georgia,serif;font-size:19px;font-style:italic;line-height:1;transition:transform .3s,background-color .3s,color .3s;display:grid}.creation-emblem:hover{background:var(--creation-ink);color:var(--creation-paper);transform:rotate(-14deg)scale(1.08)}.creation-header nav{align-items:center;gap:clamp(15px,2.5vw,32px);display:flex}.creation-header nav a{letter-spacing:-.01em;font-size:13px;font-weight:500;text-decoration:none;transition:opacity .2s}.creation-header nav a:hover{opacity:.48}.creation-frame{border:1px solid var(--creation-ink);isolation:isolate;flex:auto;width:100%;min-height:min(770px,78svh);position:relative;overflow:hidden}.creation-ascii{z-index:0;width:100%;height:100%;display:block;position:absolute;inset:0}.creation-frame-label{z-index:1;letter-spacing:-.04em;pointer-events:none;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:15px;position:absolute;top:19px;left:18px}.creation-tools{z-index:3;flex-direction:column;align-items:center;gap:14px;display:flex;position:absolute;top:16px;right:17px}.creation-tools button{border:1px solid var(--creation-ink);width:34px;height:34px;color:var(--creation-ink);background:var(--creation-paper);border-radius:50%;font-size:22px;line-height:1;transition:transform .2s}.creation-tools button:hover{transform:rotate(45deg)}.creation-tools input{appearance:slider-vertical;writing-mode:vertical-lr;width:22px;height:95px;accent-color:var(--creation-ink);direction:rtl}.creation-intro{z-index:2;pointer-events:none;max-width:min(570px,70%);position:absolute;bottom:clamp(48px,8%,86px);left:clamp(30px,7.7%,110px)}.creation-kicker{letter-spacing:.16em;margin-bottom:13px;font-size:10px;font-weight:600}.creation-intro h1{letter-spacing:-.075em;margin:0 0 22px -.065em;font-size:clamp(68px,9vw,145px);font-weight:400;line-height:.9}.creation-cursor{font-size:.65em}.creation-subtitle{margin-bottom:15px;font-size:clamp(17px,2vw,23px);line-height:1.3}.creation-description{max-width:540px;color:var(--creation-muted);font-size:clamp(13px,1.2vw,15px);line-height:1.55}.creation-enter{border-bottom:3px solid var(--creation-ink);pointer-events:auto;align-items:center;gap:12px;margin-top:22px;padding-bottom:7px;font-size:13px;font-weight:600;text-decoration:none;transition:gap .25s;display:inline-flex}.creation-enter:hover{gap:20px}.creation-coordinate{z-index:1;letter-spacing:.08em;color:var(--creation-muted);pointer-events:none;font:9px ui-monospace,Menlo,monospace;position:absolute;bottom:18px;right:18px}.creation-footer{color:var(--creation-muted);justify-content:space-between;align-items:center;gap:16px;padding-top:15px;font:11px ui-monospace,Menlo,monospace;display:flex}.creation-footer a{border-bottom:1px solid}.creation-page--study{cursor:auto;padding:23px clamp(20px,4.5vw,64px) 22px}.creation-page--study *{cursor:auto!important}.creation-page--study .creation-header{padding:0 0 20px}.creation-page--study .creation-emblem{width:40px;min-width:40px;height:40px;min-height:40px;font-size:19px}.creation-page--study .creation-frame--study{border:1px solid var(--creation-ink);flex:auto;width:100%;min-height:min(770px,78svh);overflow:hidden}.creation-page--study .creation-frame--study .creation-ascii{width:100%;height:100%;display:block;position:absolute;inset:0}.creation-page--study .creation-intro--study{max-width:min(550px,62%);bottom:clamp(45px,7%,76px);left:clamp(30px,6.2%,88px)}.creation-page--study .creation-intro--study h1{margin-bottom:18px;font-size:clamp(58px,7vw,112px)}.creation-page--study .creation-subtitle{margin-bottom:12px;font-size:clamp(16px,1.7vw,21px)}.creation-page--study .creation-description{max-width:490px;font-size:clamp(12px,1.05vw,14px);line-height:1.52}.creation-study-links{pointer-events:auto;flex-wrap:wrap;align-items:flex-end;gap:22px;display:flex}.creation-study-link{border-bottom:1px solid;padding-bottom:5px;font:11px ui-monospace,Menlo,monospace;text-decoration:none;color:var(--creation-muted)!important}.creation-page--study .creation-enter{margin-top:17px}@media (width<=700px){.creation-page{padding:17px 16px 16px}.creation-header{padding-bottom:17px}.creation-header nav{flex-wrap:wrap;justify-content:flex-end;gap:10px}.creation-header nav a{font-size:10px}.creation-frame{min-height:74svh}.creation-intro{max-width:calc(100% - 50px);bottom:45px;left:24px}.creation-intro h1{font-size:clamp(56px,15vw,92px)}.creation-description{max-width:320px}.creation-coordinate{display:none}.creation-footer{font-size:9px}.creation-page--study{padding:17px 16px 16px}.creation-page--study .creation-header{padding-bottom:17px}.creation-page--study .creation-frame--study{min-height:74svh}.creation-page--study .creation-intro--study{max-width:calc(100% - 44px);bottom:40px;left:22px}.creation-page--study .creation-intro--study h1{font-size:clamp(48px,13vw,72px)}}@media (pointer:coarse){.creation-page,.creation-page *{cursor:auto!important}}@media (prefers-reduced-motion:reduce){.creation-page,.creation-emblem,.creation-tools button,.creation-enter{transition:none}}.ripple-page{isolation:isolate;color:#dce8ff;min-height:max(850px,100svh);font-family:var(--font);background:#030611;position:relative;overflow:hidden}.ripple-canvas{touch-action:pan-y;width:100%;height:100%;display:block;position:absolute;inset:0}.ripple-page a{color:inherit}.ripple-page button{color:inherit;cursor:pointer;font:inherit}.ripple-page button:disabled{opacity:.4;cursor:default}.ripple-header{z-index:2;pointer-events:none;justify-content:space-between;align-items:center;gap:20px;padding:24px clamp(24px,5vw,80px);display:flex;position:relative}.ripple-header a{pointer-events:auto}.ripple-brand{align-items:center;gap:16px;display:flex}.ripple-brand img{filter:invert();mix-blend-mode:screen;width:93px;height:auto}.ripple-brand span{letter-spacing:.16em;color:#8f9bb8;font-size:9px}.ripple-header nav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#10182c99;border:1px solid #648bff38;border-radius:99px;gap:4px;padding:5px;display:flex}.ripple-header nav a{border-radius:99px;padding:7px 13px;font-size:11px}.ripple-header nav a[aria-current],.ripple-header nav a:hover{color:#fff;background:#29479370}.ripple-heading{z-index:1;pointer-events:none;position:absolute;top:143px;left:clamp(24px,5vw,80px)}.ripple-eyebrow{letter-spacing:.18em;color:#97afdf;align-items:center;gap:8px;font-size:9px;display:flex}.ripple-eyebrow i{background:#537aff;border-radius:50%;width:5px;height:5px;box-shadow:0 0 12px #4875ff}.ripple-heading h1{letter-spacing:-.055em;margin-top:19px;font-size:clamp(34px,4.3vw,65px);font-weight:400;line-height:1.03}.ripple-heading em{color:#8aaeff;font-family:Georgia,serif;font-weight:400}.ripple-aside{color:#8b9dbf;pointer-events:none;font-size:12px;line-height:1.6;position:absolute;top:172px;right:clamp(24px,5vw,80px)}.ripple-bottom{z-index:2;pointer-events:none;position:absolute;bottom:20px;left:clamp(24px,5vw,80px);right:clamp(24px,5vw,80px)}.ripple-controls{justify-content:center;align-items:center;gap:20px;margin-bottom:23px;display:flex;position:relative}.ripple-shapes{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto;background:#0a1023ab;border:1px solid #5276d54a;border-radius:99px;padding:5px;display:flex}.ripple-shapes button{text-transform:capitalize;background:0 0;border:0;border-radius:99px;align-items:center;gap:10px;padding:10px 19px;font-size:12px;transition:background .25s,box-shadow .25s;display:flex}.ripple-shapes button small{color:#8b9dbc;font-size:8px}.ripple-shapes button[aria-pressed=true]{color:#fff;background:#315ef3;box-shadow:0 0 24px #2356ff65}.ripple-shapes button[aria-pressed=true] small{color:#c4d4ff}.ripple-playback{pointer-events:auto;gap:12px;display:flex;position:absolute;right:0}.ripple-playback button{color:#99acd5;background:0 0;border:0;padding:8px 0;font-size:10px}.ripple-playback button:hover{color:#fff}.ripple-cards{grid-template-columns:repeat(3,1fr);gap:13px;display:grid}.ripple-cards>div{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(145deg,#22489750,#0e17368f);border:1px solid #738fe246;border-radius:14px;padding:20px 23px}.ripple-cards span{letter-spacing:.14em;color:#7f9dd8;font-size:8px}.ripple-cards h2{color:#d7e5ff;letter-spacing:-.02em;margin:13px 0 7px;font-size:15px;font-weight:500}.ripple-cards p{color:#8fa4cc;max-width:255px;font-size:11px;line-height:1.6}.ripple-bottom footer{color:#8395b9;letter-spacing:.1em;justify-content:space-between;padding-top:18px;font-size:9px;display:flex}.ripple-bottom footer a{pointer-events:auto;letter-spacing:0}@media (width<=1000px){.ripple-playback{position:static}.ripple-controls{flex-wrap:wrap}.ripple-aside{display:none}.ripple-heading h1{font-size:42px}}@media (width<=700px){.ripple-page{min-height:max(820px,100svh)}.ripple-header{padding:18px 20px}.ripple-brand span{display:none}.ripple-brand img{width:72px}.ripple-header nav a{padding:6px 9px;font-size:10px}.ripple-heading{top:112px;left:24px}.ripple-heading h1{font-size:37px}.ripple-eyebrow{font-size:8px}.ripple-bottom{bottom:20px;left:20px;right:20px}.ripple-controls{gap:6px;margin-bottom:15px}.ripple-shapes button{padding:9px 16px}.ripple-playback{justify-content:center;width:100%}.ripple-cards{grid-template-columns:1fr}.ripple-cards>div{padding:13px 17px}.ripple-cards>div:not(:first-child){display:none}.ripple-cards h2{margin-top:7px}.ripple-cards p{max-width:none}.ripple-bottom footer{letter-spacing:.025em;gap:10px;font-size:8px}}@media (prefers-reduced-motion:reduce){.ripple-shapes button{transition:none}}.landing-root{color:#171717;background:#fff;width:100%;min-height:100svh;margin:0;padding:0;position:relative}.landing-hero{box-sizing:border-box;--creation-paper:#fff;--creation-ink:#171717;background:#fff;flex-direction:column;width:100%;height:100svh;margin:0;padding:23px clamp(20px,4.5vw,64px) 0;display:flex;position:relative;overflow:hidden}.landing-hero *{box-sizing:border-box}.landing-topbar{flex:none;justify-content:space-between;align-items:center;gap:30px;height:40px;min-height:40px;margin:0 0 20px;padding:0;display:flex}.landing-mark{color:#171717;background:#fff;border:1px solid #171717;border-radius:50%;flex:0 0 40px;place-items:center;width:40px;height:40px;font-family:Georgia,serif;font-size:18px;font-style:italic;line-height:1;text-decoration:none;transition:transform .22s,background-color .22s,color .22s;display:grid}.landing-mark:hover{color:#fff;background:#171717;transform:rotate(-12deg)}.landing-nav{align-items:center;gap:clamp(20px,2.5vw,36px);display:flex}.landing-nav a{color:#171717;font-size:13px;font-weight:500;text-decoration:none;transition:opacity .18s}.landing-nav a:hover{opacity:.45}.landing-frame{isolation:isolate;--creation-paper:#fff;--creation-ink:#171717;width:100%;height:calc(100svh - 137px);min-height:0;color:var(--creation-ink);background:#fff;border:1px solid #171717;flex:none;margin:0;padding:0;transition:background-color .35s,color .35s;position:relative;overflow:hidden}.landing-frame--dark{--creation-paper:#111;--creation-ink:#fff;color:#fff;background:#111;border-color:#171717}.floating-background--contained{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.landing-ascii{z-index:1;width:100%;height:100%;display:block;position:absolute;inset:0}.landing-scene-label{z-index:4;color:var(--creation-ink);letter-spacing:.08em;text-transform:uppercase;pointer-events:none;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;font-weight:500;transition:color .35s;position:absolute;top:18px;left:18px}.landing-tools{z-index:5}.landing-tools button{color:var(--creation-ink);background:var(--creation-paper);border-color:var(--creation-ink)}.landing-tools input{accent-color:var(--creation-ink)}.landing-copy{z-index:3;width:min(590px,70%);color:var(--creation-ink);pointer-events:none;transition:color .35s;position:absolute;bottom:clamp(82px,10vh,110px);left:clamp(22px,3.5vw,58px)}.landing-copy h1{letter-spacing:-.072em;margin:0 0 12px;font-size:clamp(74px,8.2vw,138px);font-weight:400;line-height:.84}.landing-roles{letter-spacing:-.025em;margin:0 0 10px;font-size:clamp(17px,1.7vw,23px);line-height:1.25}.landing-description{max-width:560px;color:inherit;margin:0;font-size:clamp(12px,1.05vw,15px);line-height:1.48}.landing-next{z-index:6;border:1px solid var(--creation-ink);background:var(--creation-paper);width:42px;height:42px;color:var(--creation-ink);border-radius:50%;place-items:center;padding:0;font-size:21px;line-height:1;transition:transform .18s,background-color .18s,color .18s;display:grid;position:absolute;bottom:20px;right:22px}.landing-next:hover{background:var(--creation-ink);color:var(--creation-paper);transform:translate(4px)}.landing-enter-site--canvas{z-index:7;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.landing-enter-site{color:#fff;letter-spacing:.11em;white-space:nowrap;background:#171717;border:1px solid #171717;justify-content:center;align-items:center;min-width:132px;margin:0;padding:11px 20px;font-family:Arial,Helvetica,sans-serif;font-size:10px;font-weight:600;line-height:1;text-decoration:none;transition:transform .18s,background-color .18s,color .18s;display:inline-flex}.landing-enter-site:after{content:"↓";margin-left:10px;font-size:12px;line-height:1;transition:transform .18s}.landing-enter-site--canvas:hover{color:#171717;background:#fff;transform:translate(-50%,-2px)}.landing-enter-site:hover:after{transform:translateY(3px)}.landing-frame--dark .landing-enter-site--canvas{color:#fff;background:#000;border-color:#fff}.landing-frame--dark .landing-enter-site--canvas:hover{color:#111;background:#fff}.landing-enter-spacer{pointer-events:none;background:#fff;flex:0 0 54px;width:100%;height:54px;min-height:54px;margin:0;padding:0}@media (width<=700px){.landing-hero{height:100svh;padding:17px 16px 0}.landing-topbar{height:34px;min-height:34px;margin:0 0 17px;padding:0}.landing-mark{flex-basis:34px;width:34px;height:34px;font-size:15px}.landing-nav{gap:16px}.landing-nav a{font-size:10px}.landing-frame{height:calc(100svh - 113px);min-height:0}.landing-scene-label{max-width:60%;font-size:9px;top:15px;left:14px}.landing-copy{width:calc(100% - 68px);bottom:76px;left:17px}.landing-copy h1{font-size:clamp(58px,17vw,86px)}.landing-roles{font-size:16px}.landing-description{max-width:330px;font-size:12px}.landing-next{width:38px;height:38px;bottom:15px;right:15px}.landing-enter-site--canvas{bottom:14px}.landing-enter-site{min-width:118px;padding:9px 15px;font-size:9px}.landing-enter-spacer{flex-basis:45px;height:45px;min-height:45px}}@media (prefers-reduced-motion:reduce){.landing-mark,.landing-next,.landing-enter-site,.landing-enter-site:after{transition:none}}:root{--entrance-duration:var(--motion-enter);--entrance-easing:var(--motion-out)}@keyframes pageEntranceDown{0%{opacity:0;visibility:hidden;transform:translateY(-20px)}to{opacity:1;visibility:visible;transform:none}}@keyframes pageEntranceUp{0%{opacity:0;visibility:hidden;transform:translateY(20px)}to{opacity:1;visibility:visible;transform:none}}@keyframes pageEntranceFade{0%{opacity:0;visibility:hidden}to{opacity:1;visibility:visible}}@keyframes pageEntranceGate{0%{visibility:hidden}to{visibility:visible}}@media (prefers-reduced-motion:no-preference){.landing-topbar,.site-heading-inner{animation:1ms step-end .1s backwards pageEntranceGate}.landing-mark,.landing-nav>*,.site-heading .identity-mark,.site-heading .identity-copy>*,.site-heading .header-origin,.site-heading .top-links>*{animation:pageEntranceDown var(--entrance-duration) var(--entrance-easing) .1s backwards}.landing-nav>:first-child{animation-delay:.1s}.landing-nav>:nth-child(2){animation-delay:.13s}.landing-nav>:nth-child(3){animation-delay:.16s}.landing-nav>:nth-child(4){animation-delay:.19s}.landing-frame{animation:pageEntranceUp var(--entrance-duration) var(--entrance-easing) .22s backwards}.site-heading .identity-copy>h1{animation-delay:.13s}.site-heading .identity-copy>p{animation-delay:.16s}.site-heading .header-origin,.site-heading .top-links>:first-child{animation-delay:.19s}.site-heading .top-links>:nth-child(2){animation-delay:.22s}.site-heading .top-links>:nth-child(3){animation-delay:.25s}.site-heading .top-links>:nth-child(4){animation-delay:.28s}.site-main{animation:1ms step-end .1s backwards pageEntranceGate}.site-main .side-nav,.site-main .section-nav-wrap,.site-main .about-photo,.site-main .about-copy>h2,.site-main .about-copy>.about-meta,.site-main .about-copy>p,.site-main .content-layout>.container>section:not(.about-section){animation:pageEntranceUp var(--entrance-duration) var(--entrance-easing) .22s backwards}.site-main .about-photo,.site-main .about-copy>.about-meta{animation-delay:.25s}.site-main .about-copy>p{animation-delay:.28s}.site-main .about-copy>p+p{animation-delay:.31s}.site-main .about-copy>p+p+p{animation-delay:.34s}.site-main .about-copy>p+p+p+p,.site-main .content-layout>.container>section:not(.about-section){animation-delay:.37s}.page>.footer{animation:pageEntranceFade var(--entrance-duration) var(--entrance-easing) .4s backwards}}.portfolio-agents{z-index:70;pointer-events:none;position:fixed;inset:0;overflow:hidden}.portfolio-agent{color:var(--agent-color)}.portfolio-agent-frame{background:var(--agent-tint);opacity:0;outline:1px solid;width:0;height:0;position:absolute;top:0;left:0}.portfolio-agent-cursor{opacity:0;will-change:transform;width:18px;height:21px;position:absolute;top:0;left:0}.portfolio-agent-cursor svg{filter:drop-shadow(0 1px 1px #30271e44);width:18px;height:21px;display:block}.portfolio-agent-press{corner-shape:round;opacity:0;border:1px solid;border-radius:50%;width:14px;height:14px;position:absolute;top:-5.5px;left:-4.75px}@media (prefers-reduced-motion:no-preference){:is(.portfolio-page,.about-cursor-page,[data-cursor-root]) [data-cursor-reveal]:not([data-cursor-revealed=true]){opacity:0;visibility:hidden}.site-heading[data-cursor-root] .header-origin,.site-heading[data-cursor-root] .top-links>*{animation:none}}@media (prefers-reduced-motion:reduce){.portfolio-agents{display:none}}.work-main{flex:1;padding-block:24px 72px}.work-container{width:100%;max-width:1520px;margin-inline:auto}.work-intro{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;margin-bottom:24px;display:flex}.work-intro h2{color:#3f3f46;font-size:18px;font-weight:500}.work-intro p{color:#71717a;font-size:14px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px;display:grid}.work-additional-projects{margin-top:48px}.work-card{width:100%;min-width:0;font:inherit;text-align:left;cursor:pointer;color:#18181b;background:0 0;border:0;border-radius:26px;flex-direction:column;padding:0;display:flex}.work-card-frame{border-radius:26px;width:100%;transition:transform .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.work-card-frame:after{content:"";border-radius:inherit;pointer-events:none;border:1px solid #18181b09;position:absolute;inset:0}.work-card:hover .work-card-frame,.work-card:focus-visible .work-card-frame,.work-related-card:hover .work-card-frame,.work-related-card:focus-visible .work-card-frame{transform:scale(.99)}.work-card-pill{corner-shape:round;color:#18181b;background:#fff;border:1px solid #f4f4f5;border-radius:999px;max-width:calc(100% - 24px);padding:4px 12px;font-size:15px;font-weight:500;line-height:1.4;position:absolute;bottom:12px;left:12px}.work-card-pill>span,.work-card-mobile-title>span{color:#71717a}.work-card-description{color:#71717a;opacity:0;padding:8px 13px 0;font-size:16px;line-height:1.4;transition:opacity .3s ease-out,transform .3s ease-out;display:block;transform:translateY(8px)}.work-card:hover .work-card-description,.work-card:focus-visible .work-card-description{opacity:1;transform:none}.work-card-mobile-title{display:none}.work-main[data-cursor-root] .work-card[data-cursor-reveal]{animation:none}.work-cover{isolation:isolate;aspect-ratio:678/367.625;border-radius:inherit;background:#e4e4e7;width:100%;position:relative;overflow:hidden}.work-company-cover{place-items:center;padding:12% 16%;display:grid;position:absolute;inset:0}.work-company-cover img{object-fit:contain;width:100%;height:100%;min-height:0;display:block}.work-cover-media{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .5s ease-out;position:absolute;inset:0}.work-cover-media.is-ready{opacity:1}.work-art{background:radial-gradient(ellipse at 22% 10%, var(--cover-a), transparent 70%), radial-gradient(ellipse at 78% 80%, var(--cover-b), transparent 70%), var(--cover-c);place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.work-art-grain{opacity:.12;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.28' filter='url(%23g)'/%3E%3C/svg%3E");position:absolute;inset:0}.work-art-glass{aspect-ratio:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(135deg,#ffffff75,#ffffff18);border:1px solid #ffffff80;border-radius:28%;place-items:center;width:26%;display:grid;box-shadow:0 14px 40px #25374a13,inset 0 1px 2px #fff}.work-art-glass span{letter-spacing:-.12em;color:#fff;text-shadow:0 1px 8px #4c67743b;margin-right:.12em;font-family:ui-monospace,monospace;font-size:clamp(24px,4vw,62px)}.work-art-grid{background-image:linear-gradient(#ffffff12 1px,#0000 1px),linear-gradient(90deg,#ffffff12 1px,#0000 1px);background-size:38px 38px;position:absolute;inset:-40%;transform:rotate(-20deg)}.work-pipeline{z-index:1;align-items:center;width:74%;display:flex}.work-pipeline span{aspect-ratio:1;color:#eef5fa;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(135deg,#ffffff2b,#ffffff08);border:1px solid #ffffff61;border-radius:22%;flex:0 0 24%;place-items:center;font:400 clamp(15px,2.3vw,35px)/1 ui-monospace,monospace;display:grid;box-shadow:0 15px 30px #0b192f22}.work-pipeline i{background:#b5cfddb3;flex:1;height:1px}.work-art-word{color:#d7e4edc4;letter-spacing:.02em;font:400 clamp(11px,1.1vw,16px)/1.2 ui-monospace,monospace;position:absolute;bottom:21%}.work-art-dashboard{background:#fcfdfaf2;border:1px solid #ffffffc4;border-radius:14px;width:68%;transform:rotate(-4deg);box-shadow:0 22px 50px #45695724}.work-art-windowbar{border-bottom:1px solid #e6ece7;gap:5px;padding:10px 12px;display:flex}.work-art-windowbar i{background:#c7d1cb;border-radius:50%;width:5px;height:5px}.work-art-dashboard-body{padding:12px 16px 16px}.work-art-metrics{gap:8px;margin-bottom:15px;display:flex}.work-art-metrics i{background:#eaf0eb;border-radius:5px;flex:1;height:25px}.work-art-bars{border-bottom:1px solid #d5ded7;align-items:flex-end;gap:8%;height:clamp(55px,9vw,120px);padding:0 3%;display:flex}.work-art-bars i{background:linear-gradient(#93b3a3,#ccdcd2);border-radius:5px 5px 0 0;flex:1}.work-art-query{z-index:1;aspect-ratio:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff16;border:1px solid #fff6;border-radius:20%;flex-direction:column;justify-content:center;align-items:center;gap:10px;width:33%;display:flex;position:relative;box-shadow:0 20px 30px #15233238}.work-art-query>span{color:#eff4f7;margin-bottom:4px;font:400 clamp(23px,4vw,58px)/1 ui-monospace,monospace}.work-art-query>i{background:#d4e2ec61;border-radius:4px;width:50%;height:3px}.work-art-query>i:last-child{width:32%}.work-art-snippet{background:#c3d4e514;border:1px solid #ffffff30;border-radius:10px;gap:7px;width:24%;padding:16px 12px;display:grid;position:absolute}.work-art-snippet--one{top:22%;left:10%;transform:rotate(-10deg)}.work-art-snippet--two{bottom:22%;right:8%;transform:rotate(8deg)}.work-art-snippet i{background:#b2c7d541;border-radius:3px;height:3px}.work-art-snippet i:last-child{width:65%}.work-dialog{color:#52525b;background:#fff;border:0;border-radius:26px;width:88vw;max-width:1400px;height:calc(100svh - 48px);max-height:calc(100svh - 48px);margin:auto;padding:0;transition:width .3s,height .3s,max-height .3s,border-radius .3s;overflow:hidden;box-shadow:0 24px 90px #18181b1a}.work-dialog::backdrop{-webkit-backdrop-filter:blur(4px);background:#18181b33}.work-dialog--expanded{border-radius:0;width:100vw;max-width:none;height:100svh;max-height:100svh}.work-dialog.is-closing{pointer-events:none}.work-dialog-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;height:100%;overflow-y:auto}.work-dialog-toolbar{z-index:2;background:linear-gradient(#fff 75%,#fff0);justify-content:space-between;padding:20px 24px;display:flex;position:sticky;top:0}.work-dialog-control{color:#71717a;corner-shape:round;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;transition:background .2s,color .2s;display:grid}.work-dialog-control:hover{color:#27272a;background:#f4f4f5}.work-dialog-control svg{stroke:currentColor;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.work-dialog-body{max-width:960px;margin-inline:auto;padding:48px 48px 80px}.work-project-mark{color:#52525b;background:#fafafa;border:1px solid #e4e4e7;border-radius:18px;place-items:center;width:64px;height:64px;margin-bottom:32px;font:400 24px/1 ui-monospace,monospace;display:grid}.work-project-company-logo{border:0;width:88px;height:88px;margin-bottom:40px;padding:12px}.work-project-company-logo img{object-fit:contain;width:100%;height:100%;display:block}.work-project-title{color:#18181b;margin:0 0 52px;font-size:36px;font-weight:400;line-height:1.15}.work-template-label{color:#71717a;margin:-22px 0 32px;font-size:13px}.work-project-meta{border-bottom:1px solid #f4f4f5;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin:0;padding-bottom:36px;display:grid}.work-project-meta dt{color:#a1a1aa;margin-bottom:16px;font-size:16px}.work-project-meta dd{color:#52525b;overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.6}.work-project-person{display:block}.work-project-links{flex-wrap:wrap;gap:12px 24px;padding-top:20px;font-size:15px;display:flex}.work-project-links a{color:#52525b;text-underline-offset:4px}.work-project-links a:hover{color:#18181b;text-decoration:underline}.work-project-hero{border-radius:26px;margin:32px 0 64px;overflow:hidden}.work-detail-split{grid-template-columns:1fr 1fr;gap:48px;display:grid}.work-eyebrow{color:#71717a;text-transform:uppercase;letter-spacing:.015em;margin-bottom:20px;font-size:14px;font-weight:400}.work-detail-split h3{color:#18181b;margin:0;font-size:22px;font-weight:400;line-height:1.4}.work-prose{color:#52525b;font-size:16px;line-height:1.6}.work-prose p{margin-bottom:22px}.work-prose p:last-child{margin-bottom:0}.work-prose ul{margin-top:20px;padding-left:20px;list-style:outside}.work-prose li{margin-bottom:10px;padding-left:3px}.work-detail-section,.work-gallery{border-top:1px solid #f4f4f5;margin-top:64px;padding-top:56px}.work-gallery-item{margin:0 0 48px}.work-gallery-item h3{color:#27272a;margin-bottom:18px;font-size:20px;font-weight:400}.work-gallery-item img,.work-gallery-item video{background:#fafafa;border-radius:22px;width:100%;height:auto;display:block}.work-gallery-item figcaption{color:#71717a;margin-top:14px;font-size:14px;line-height:1.5}.work-related{border-top:1px solid #f4f4f5;margin-top:80px;padding-top:40px}.work-related-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.work-related-card{text-align:left;color:#18181b;min-width:0;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:26px;flex-direction:column;gap:12px;padding:0;font-size:15px;display:flex}.work-related-card>span{padding-inline:8px}.work-related-year{color:#71717a}@media (width<=767px){.work-main{padding-block:22px 48px}.work-grid{grid-template-columns:1fr;gap:28px}.work-intro{margin-bottom:20px}.work-card-pill{display:none}.work-card-mobile-title{padding:10px 13px 0;font-size:16px;line-height:1.4;display:block}.work-card-description{opacity:1;padding-top:4px;font-size:15px;transform:none}.work-dialog{border-radius:22px;width:calc(100vw - 16px);height:calc(100svh - 32px);max-height:calc(100svh - 32px)}.work-dialog--expanded{border-radius:0;width:100vw;height:100svh;max-height:100svh}.work-dialog-toolbar{padding:14px 16px}.work-dialog-body{padding:18px 24px 56px}.work-project-title{font-size:30px}.work-project-meta{grid-template-columns:1fr 1fr;gap:24px}.work-detail-split{grid-template-columns:1fr;gap:24px}.work-detail-section,.work-gallery{margin-top:48px;padding-top:36px}.work-project-hero{margin-bottom:44px}.work-dialog-control{width:44px;height:44px}.work-project-links a{align-items:center;min-height:44px;display:inline-flex}.work-related-grid{gap:16px}}@media (hover:none){.work-card-description{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.work-intro{animation:.45s cubic-bezier(.25,.46,.45,.94) 1s backwards workCardEnter}.work-card{animation:workCardEnter .45s cubic-bezier(.25,.46,.45,.94) calc(1.1s + var(--work-stagger,0s)) backwards}.work-dialog[open]{animation:.28s cubic-bezier(.16,1,.3,1) both workDialogIn}.work-dialog.is-closing{animation:.2s cubic-bezier(.4,0,1,1) both workDialogOut}.work-dialog[open]::backdrop{animation:.2s ease-out both workBackdropIn}.work-dialog.is-closing::backdrop{animation:.2s ease-in both workBackdropOut}.work-dialog-body{animation:.3s ease-out 80ms backwards workDetailEnter}}@keyframes workCardEnter{0%{opacity:0;visibility:hidden;transform:translateY(12px)}to{opacity:1;visibility:visible;transform:none}}@keyframes workDialogIn{0%{opacity:0;scale:.95}to{opacity:1;scale:1}}@keyframes workDialogOut{0%{opacity:1;scale:1}to{opacity:0;scale:.95}}@keyframes workBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes workBackdropOut{0%{opacity:1}to{opacity:0}}@keyframes workDetailEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.work-card-frame,.work-card-description,.work-cover-media,.work-dialog{transition:none}.work-card:hover .work-card-frame,.work-card:focus-visible .work-card-frame,.work-related-card:hover .work-card-frame,.work-related-card:focus-visible .work-card-frame{transform:none}}.projects-main{padding-top:40px}.projects-container,.project-study-inner{width:100%;max-width:1126px;margin-inline:auto}.featured-project{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:clamp(28px,4vw,56px);display:grid}.featured-project-cover{min-width:0}.featured-project-cover .work-card-frame{background:#101513}.featured-project-cover img{width:100%;height:auto;display:block}.featured-project:hover .work-card-frame{transform:scale(.99)}.featured-project-copy{min-width:0}.project-kicker{color:var(--brown-500);font:500 12px/1.5 var(--font);letter-spacing:.06em}.featured-project-copy h3{font:600 30px/1.2 var(--font);color:var(--zinc-800);letter-spacing:-.025em;margin:8px 0 4px}.featured-project-copy h3 a{color:inherit}.featured-project-subtitle{color:var(--zinc-700);font-size:17px;line-height:1.4}.featured-project-copy>p:not(.project-kicker):not(.featured-project-subtitle){color:var(--zinc-600);margin-top:20px;font-size:15px;line-height:1.65}.project-stack{flex-wrap:wrap;gap:7px 16px;margin:20px 0 24px;display:flex}.project-stack li{color:var(--zinc-500);font-size:13px}.featured-project-links{flex-wrap:wrap;align-items:center;gap:8px 20px;display:flex}.project-action{border:1px solid var(--brown-500);border-radius:var(--r-md);background:var(--brown-500);color:#fff;justify-content:center;align-items:center;gap:16px;min-height:44px;padding:10px 18px;font-size:14px;font-weight:500;display:inline-flex}.project-action:hover{color:#fff;background:var(--brown-600);border-color:var(--brown-600)}.project-action-secondary{color:var(--brown-600);border-color:var(--brown-300);background:#fff}.project-action-secondary:hover{color:var(--brown-600);background:var(--brown-50);border-color:var(--brown-500)}.project-text-link{min-height:44px;color:var(--zinc-600);align-items:center;gap:7px;font-size:14px;display:inline-flex}.project-text-link:hover,.project-source a:hover{text-underline-offset:4px;text-decoration:underline}.project-study{flex:1;min-width:0;padding-block:24px 72px}.project-study.gutter{padding-inline:clamp(24px,3.7vw,58px)}.project-back{min-height:44px;color:var(--zinc-500);align-items:center;gap:10px;font-size:14px;display:inline-flex}.project-back:hover{color:var(--brown-600)}.project-study-intro{margin:24px 0 32px}.project-study-intro h2{color:var(--zinc-800);letter-spacing:-.035em;margin:7px 0 8px;font-size:clamp(36px,4vw,48px);font-weight:600;line-height:1.1}.project-study-subtitle{color:var(--zinc-700);font-size:clamp(18px,2vw,23px);line-height:1.4}.project-study-lead{max-width:72ch;color:var(--zinc-600);margin:20px 0 24px;font-size:17px;line-height:1.65}.project-study-meta{border-top:1px solid var(--zinc-100);grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 36px;margin:30px 0 0;padding-block:24px;display:grid}.project-study-meta dt{color:var(--zinc-500);margin-bottom:7px;font-size:13px}.project-study-meta dd{color:var(--zinc-700);margin:0;font-size:15px;line-height:1.5}.project-screenshot{min-width:0;margin:0}.project-screenshot>a{border:1px solid var(--zinc-200);border-radius:var(--r-signature);background:#101513;display:block;overflow:hidden}.project-screenshot img{width:100%;height:auto;display:block}.project-screenshot figcaption,.project-architecture figcaption{max-width:90ch;color:var(--zinc-500);margin-top:13px;font-size:13px;line-height:1.6}.project-image-hint{margin-top:3px;font-size:12px;display:block}.project-study-nav{z-index:20;border-block:1px solid var(--zinc-100);background:#fff;align-items:center;gap:8px 24px;margin-top:38px;padding-block:12px;display:flex;position:sticky;top:0;overflow-x:auto}.project-study-nav button{min-height:36px;color:var(--zinc-600);cursor:pointer;background:0 0;border:0;flex:none;padding:5px 0;font-size:14px}.project-study-nav button:hover,.project-study-nav button:focus-visible{color:var(--brown-600)}.project-study-section{border-bottom:1px solid var(--zinc-100);grid-template-columns:minmax(0,.8fr) minmax(0,1.8fr);gap:24px 56px;padding-block:56px;scroll-margin-top:76px;display:grid}.project-study-section:focus{outline:none}.project-section-heading h3{max-width:26ch;color:var(--zinc-700);letter-spacing:-.02em;text-wrap:balance;margin-top:7px;font-size:clamp(23px,2.3vw,29px);font-weight:600;line-height:1.25}.project-prose{min-width:0;font-size:16px;line-height:1.7}.project-prose p+p{margin-top:18px}.project-study code{color:var(--brown-600);overflow-wrap:anywhere;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace}.project-chart-key{gap:12px;margin-top:22px;font-size:14px;display:grid}.project-chart-key li{align-items:baseline;gap:12px;display:flex}.project-key-swatch{background:#c9737740;border:1px solid #b65459;border-radius:2px;flex:0 0 12px;width:12px;height:12px;display:inline-block}.project-key-prediction{corner-shape:round;background:#d86f82;border:0;border-radius:50%}.project-study .project-note{color:var(--zinc-500);font-size:13px;line-height:1.65}.project-chart-key+.project-note{margin-top:22px}.project-study-section-wide{display:block}.project-study-section-wide>.project-section-heading{margin-bottom:28px}.project-study-section-wide>.project-section-heading h3{max-width:36ch}.project-contributions{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;display:grid}.project-study h4{color:var(--zinc-700);font-size:17px;font-weight:600;line-height:1.4}.project-contributions p,.project-method p,.project-finding p,.project-result-block>p,.project-section-lead,.project-implementation dd{margin-top:12px;font-size:15px;line-height:1.7}.project-methods{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px;display:grid}.project-method{border-top:1px solid var(--brown-100);padding-top:18px}.project-method .project-method-detail{color:var(--brown-500);margin:0 0 8px;font-size:12px}.project-finding{border-left:2px solid var(--brown-300);background:var(--brown-50);margin-top:32px;padding:22px 26px}.project-result-block+.project-result-block{border-top:1px solid var(--zinc-100);margin-top:42px;padding-top:32px}.project-result-block .project-note{margin-top:16px}.project-table-wrap{border:1px solid var(--zinc-200);border-radius:var(--r-lg);max-width:100%;margin-block:22px;overflow-x:auto}.project-table-wrap table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.project-table-wrap caption{text-align:left;color:var(--zinc-500);border-bottom:1px solid var(--zinc-100);padding:14px 18px;font-size:12px}.project-table-wrap th,.project-table-wrap td{text-align:right;border-bottom:1px solid var(--zinc-100);white-space:nowrap;padding:13px 18px}.project-table-wrap th:first-child{text-align:left}.project-table-wrap thead{color:var(--zinc-700);background:var(--brown-50)}.project-table-wrap tbody th{color:var(--zinc-600);font-weight:500}.project-table-wrap tbody tr:last-child>*{border-bottom:0}.project-development-table{min-width:680px}.project-source{flex-wrap:wrap;gap:6px 24px;display:flex}.project-source a{min-height:36px;color:var(--brown-600);align-items:center;gap:4px;font-size:13px;display:inline-flex}.project-result-block+.project-screenshot{margin-top:32px}.project-section-lead{max-width:80ch;margin-bottom:28px}.project-architecture{margin:0}.project-pipeline-group{border:1px solid var(--brown-100);border-radius:var(--r-xl);background:var(--brown-50);grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr);align-items:center;gap:12px;padding:22px;display:grid}.project-pipeline-group>.project-kicker{grid-column:1/-1;margin-bottom:6px}.project-pipeline-node{border:1px solid var(--zinc-200);border-radius:var(--r-md);background:#fff;flex-direction:column;justify-content:center;gap:7px;min-width:0;padding:14px;display:flex}.project-pipeline-node strong{color:var(--zinc-700);font-size:14px;font-weight:600}.project-pipeline-node span{color:var(--zinc-500);font-size:12px;line-height:1.5}.project-pipeline-branches{gap:10px;display:grid}.project-pipeline-arrow{width:18px;height:18px;stroke:var(--brown-400);stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;margin:12px auto;display:block}.project-pipeline-group>.project-pipeline-arrow{transform:rotate(-90deg)}.project-pipeline-serving{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr)}.project-implementation{margin:0}.project-implementation>div{border-top:1px solid var(--zinc-100);grid-template-columns:minmax(0,.8fr) minmax(0,1.8fr);gap:20px 56px;padding-block:24px;display:grid}.project-implementation dt{color:var(--zinc-700);font-size:16px;font-weight:600}.project-implementation dt code{color:var(--zinc-500);margin-top:8px;font-size:11px;font-weight:400;display:block}.project-implementation dd{margin:0}.project-endpoints{background:var(--zinc-50);border-radius:var(--r-lg);margin-top:24px;padding:22px 26px}.project-endpoints ul{flex-wrap:wrap;gap:6px 22px;margin:12px 0;display:flex}.project-endpoints>a{min-height:36px;padding-top:6px;font-size:14px;display:inline-block}.project-limits-copy{max-width:82ch}.project-study-outro{margin-top:28px}.project-study-outro>.project-note{margin-top:14px}.project-study-outro>a{min-height:36px;margin-top:12px;font-size:14px;display:inline-block}.project-study-section+.project-back{margin-top:28px}@media (width<=950px){.featured-project{grid-template-columns:1fr;gap:22px;max-width:760px;margin-inline:auto}.project-study-section,.project-implementation>div{grid-template-columns:1fr;gap:20px}.project-section-heading h3{max-width:36ch}.project-methods{grid-template-columns:1fr;gap:22px}.project-pipeline-group{flex-direction:column;gap:0;display:flex}.project-pipeline-group>.project-kicker{align-self:flex-start;margin-bottom:16px}.project-pipeline-group>.project-pipeline-arrow{transform:none}.project-pipeline-node,.project-pipeline-branches{width:100%}.project-pipeline-branches{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}@media (width<=600px){.project-study.gutter{padding-inline:20px}.project-study{padding-top:12px}.featured-project-copy h3{font-size:28px}.featured-project-cover .work-card-pill{display:none}.featured-project-cover .work-card-description{padding-inline:0;font-size:14px}.project-stack{margin-block:16px}.featured-project-links{gap:8px 16px}.project-action{padding-inline:14px}.project-study-intro{margin-top:18px}.project-study-lead{font-size:16px}.project-study-meta{grid-template-columns:1fr;gap:16px;padding-bottom:0}.project-study-meta dt{margin-bottom:3px}.project-screenshot>a{border-radius:var(--r-xl)}.project-study-nav{gap:22px;margin-top:24px}.project-study-section{padding-block:36px}.project-contributions{grid-template-columns:1fr;gap:24px}.project-finding,.project-endpoints{padding:18px}.project-table-wrap th,.project-table-wrap td{padding:12px;font-size:13px}.project-pipeline-group{padding:16px}.project-pipeline-node{padding:12px}.project-pipeline-node strong{font-size:13px}}@media (prefers-reduced-motion:no-preference){.project-action{transition:scale .12s var(--motion-out), background-color var(--motion-enter) var(--motion-out), border-color var(--motion-enter) var(--motion-out)}.project-action:active{transition-duration:0s;scale:.97}}.typed-tagline{white-space:nowrap;display:inline-block}.typed-tagline-role{font-weight:700}.typed-tagline-cursor{vertical-align:-.1em;background:currentColor;width:1px;height:.9em;margin-left:3px;animation:.8s step-end infinite typedTaglineBlink;display:inline-block}@keyframes typedTaglineBlink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.typed-tagline-cursor{display:none}}.top-links--sliding{isolation:isolate;position:relative}.top-links--sliding>a{z-index:1;position:relative}.navigation-sliding-pill{border:1px solid var(--brown-100);corner-shape:round;background:var(--brown-50);width:0;height:0;box-shadow:var(--shadow-default);pointer-events:none;opacity:0;border-radius:999px;position:absolute;top:0;left:0}.top-links--sliding[data-pill-ready]>.navigation-sliding-pill{opacity:1}.top-links--sliding[data-pill-ready]>a.active{box-shadow:none;background:0 0}@media (pointer:fine){html.has-googly-cursor,html.has-googly-cursor *{cursor:none!important}html.googly-cursor-native-dialog dialog[open],html.googly-cursor-native-dialog dialog[open] *{cursor:auto!important}}.googly-cursor{pointer-events:none;z-index:999999;opacity:0;will-change:transform;mix-blend-mode:difference;background:0 0;border:0;width:34px;height:34px;margin:0;padding:0;transition:opacity .12s;position:fixed;inset:0 auto auto 0;overflow:visible;transform:translate(-100px,-100px)}.googly-cursor-layer{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.googly-cursor-ring{fill:none;stroke:#fff;stroke-width:.9px}.googly-cursor-dot{fill:#fff}@media (pointer:coarse){.googly-cursor{display:none}}.shelf-collection-label{cursor:default;margin:0}.shelf-collection[data-kind=music] .shelf-cover,.shelf-collection[data-kind=movies] .shelf-cover{border-radius:3px}.shelf-collection[data-kind=restaurants] .shelf-cover{background:#f2ece5;border-radius:3px}.shelf-cover img.shelf-cover-contained{object-fit:contain;box-sizing:border-box;padding:12px}.shelf-caption-detail{color:var(--zinc-400);margin-top:3px;font-size:12px;display:block}.shelf-cover-link{display:block}.shelf-cover-link:focus-visible{outline:2px solid var(--brown-500);outline-offset:4px}.shelf-empty{color:var(--zinc-400);grid-column:1/-1;margin:0;font-size:14px}.experience-intro{text-align:left;margin-bottom:26px}.site-main .experience-intro .h2{margin-bottom:5px;font-size:clamp(28px,2.5vw,34px);font-weight:600}.experience-intro p{color:var(--zinc-500);font-size:15px}.experience-layout{--experience-panel-height:clamp(580px, calc(100vh - 220px), 760px);grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:start;gap:22px;display:grid}.experience-tabs{height:var(--experience-panel-height);scrollbar-color:var(--zinc-300) transparent;scrollbar-width:thin;align-content:start;gap:10px;padding:2px 8px 2px 2px;display:grid;overflow-y:auto}.experience-tab{border:1px solid var(--zinc-200);width:100%;min-height:82px;box-shadow:var(--shadow-soft);color:var(--zinc-700);cursor:pointer;text-align:left;background:#fff;border-radius:14px;gap:8px;padding:15px 16px;transition:border-color .18s,background-color .18s,box-shadow .18s;display:grid}.experience-tab:hover{border-color:var(--brown-300)}.experience-tab.is-selected{border-color:var(--brown-500);background:var(--brown-50);box-shadow:0 0 0 1px var(--brown-500), var(--shadow-soft)}.experience-tab:focus-visible{outline:2px solid var(--brown-500);outline-offset:2px}.experience-tab-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.experience-tab-top strong{min-width:0;font-size:15px;font-weight:600;line-height:1.3}.experience-tab-top small{color:var(--zinc-400);white-space:nowrap;flex:none;font-size:12px}.experience-tab.is-selected .experience-tab-top strong{color:var(--brown-600)}.experience-tab-company{color:var(--zinc-500);font-size:14px;line-height:1.35}.experience-detail{min-width:0;min-height:var(--experience-panel-height);border:1px solid var(--zinc-200);box-shadow:var(--shadow-default);background:#fff;border-radius:18px;padding:clamp(22px,3vw,34px)}.experience-detail-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.experience-detail-heading>div{min-width:0}.experience-detail-heading h3{color:var(--zinc-900);margin:0 0 9px;font-size:clamp(22px,2vw,28px);font-weight:600;line-height:1.2}.experience-detail-meta{color:var(--zinc-500);flex-wrap:wrap;gap:5px 16px;font-size:14px;line-height:1.5;display:flex}.experience-detail-meta span:first-child{color:var(--brown-600);font-weight:600}.experience-detail-logo{border:1px solid var(--zinc-100);border-radius:12px;flex:0 0 66px;place-items:center;width:66px;height:66px;padding:9px;display:grid}.experience-detail-logo img{object-fit:contain;width:100%;height:100%;display:block}.experience-detail-summary{color:var(--zinc-600);margin:30px 0 24px;font-size:16px;line-height:1.55}.experience-detail :is(.experience-detail-body,.experience-detail-skills,.experience-detail-achievements) h4{color:var(--zinc-700);margin:0 0 11px;font-size:15px;font-weight:600}.experience-detail-body ul{gap:9px;margin:0;padding:0;list-style:none;display:grid}.experience-detail-body li{color:var(--zinc-600);padding-left:17px;font-size:14px;line-height:1.5;position:relative}.experience-detail-body li:before{content:"";background:var(--brown-500);border-radius:50%;width:5px;height:5px;position:absolute;top:.6em;left:1px}.experience-detail-skills,.experience-detail-achievements{margin-top:24px}.experience-detail-tools{flex-wrap:wrap;gap:7px;display:flex}.experience-detail-tools span{background:var(--brown-50);color:var(--brown-600);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:600;line-height:1.3}.experience-achievement-list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.experience-achievement-list li{color:var(--zinc-600);padding-left:20px;font-size:14px;line-height:1.5;position:relative}.experience-achievement-list li:before{content:"✓";color:var(--brown-500);font-weight:700;position:absolute;left:0}@keyframes experienceBulletEnter{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@keyframes experienceSkillEnter{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:no-preference){.experience-bullet-list li,.experience-achievement-list li{animation:.3s ease-out both experienceBulletEnter}.experience-bullet-list li{animation-delay:.12s}.experience-bullet-list li:nth-child(2){animation-delay:.22s}.experience-bullet-list li:nth-child(n+3){animation-delay:.32s}.experience-achievement-list li{animation-delay:.26s}.experience-achievement-list li:nth-child(2){animation-delay:.36s}.experience-achievement-list li:nth-child(n+3){animation-delay:.46s}.experience-detail-tools span{animation:.3s ease-out both experienceSkillEnter}.experience-detail-tools span:nth-child(2){animation-delay:50ms}.experience-detail-tools span:nth-child(3){animation-delay:.1s}.experience-detail-tools span:nth-child(n+4){animation-delay:.15s}}@media (width<=900px){.experience-layout{grid-template-columns:minmax(0,1fr);gap:16px}.experience-tabs{scroll-snap-type:x proximity;gap:9px;height:auto;padding:2px 2px 10px;display:flex;overflow:auto hidden}.experience-tab{scroll-snap-align:start;flex:0 0 min(235px,68vw)}.experience-detail{min-height:0}}@media (width<=520px){.experience-intro{margin-bottom:20px}.experience-detail{padding:20px}.experience-detail-logo{flex-basis:52px;width:52px;height:52px;padding:7px}.experience-detail-heading h3{font-size:21px}.experience-detail-summary{margin:24px 0 20px;font-size:15px}}.communities-section{font-family:var(--font)}.community-stories{margin-top:36px}.community-story{border-bottom:1px solid var(--zinc-100);padding:30px 0 68px;scroll-margin-top:100px}.community-story+.community-story{padding-top:72px}.community-archive{margin-top:32px}.community-archive>summary{width:fit-content;color:var(--zinc-400);font:500 18px/1.4 var(--font);cursor:pointer;align-items:center;gap:8px;list-style:none;display:flex}.community-archive>summary::-webkit-details-marker{display:none}.community-archive>summary svg{width:16px;height:16px;stroke:var(--zinc-300);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;transition:transform .18s}.community-archive[open]>summary svg{transform:rotate(90deg)}.community-archive>summary:focus-visible{outline:2px solid var(--brown-500);outline-offset:5px;border-radius:3px}#past-club-stories>.community-story:first-child{padding-top:32px}.community-story-heading{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:center;gap:clamp(24px,5vw,72px);display:grid}.community-story-identity{align-items:center;gap:clamp(18px,3vw,34px);min-width:0;display:flex}.community-story-logo{corner-shape:round;color:#fff;letter-spacing:-.05em;background:#19191d;border:9px solid #f4f4f6;border-radius:50%;flex:0 0 84px;place-items:center;width:84px;height:84px;font-size:14px;font-weight:700;display:grid;box-shadow:0 1px 4px #18181b22,inset 0 0 0 3px #fff}.community-story-logo img{object-fit:cover;corner-shape:round;border-radius:50%;width:100%;height:100%;display:block}.community-story-identity h3{color:var(--zinc-700);letter-spacing:-.025em;font-size:clamp(20px,1.9vw,24px);font-weight:500;line-height:1.2}.community-story-heading>p{width:100%;max-width:40ch;color:var(--zinc-400);justify-self:end;font-size:clamp(14px,1.25vw,16px);line-height:1.55}.community-instagram{color:#d4d4d8;flex:0 0 24px;justify-content:center;align-items:center;width:24px;height:24px;transition:color .2s;display:inline-flex}.community-instagram:hover,.community-instagram:focus-visible{color:#3f3f46}.community-instagram svg{width:20px;height:20px;display:block}.community-social-links{flex-shrink:0;align-items:center;gap:10px;display:inline-flex}.community-gallery-controls{justify-content:flex-end;margin-top:24px;display:flex}.community-gallery-next{border:1px solid var(--zinc-200);width:44px;height:44px;color:var(--brown-600);cursor:pointer;background:#fff;border-radius:50%;place-items:center;padding:0;transition:color .18s,background-color .18s,border-color .18s;display:grid}.community-gallery-next svg{stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:21px;height:21px}.community-gallery-next:hover:not(:disabled){background:var(--brown-50);border-color:var(--brown-300)}.community-gallery-next:focus-visible{outline:2px solid var(--brown-500);outline-offset:4px}.community-gallery-next:disabled{color:var(--zinc-400);cursor:default}.community-gallery-status{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.community-polaroids{isolation:isolate;justify-content:center;align-items:flex-end;height:400px;margin-top:46px;padding:0 16px;display:flex}.communities-section .polaroid-card{width:288px;top:var(--offset-y,0px);left:var(--offset-x,0px);box-shadow:none;background:0 0;border:0;border-radius:0;flex:none;margin:0;padding:0;position:relative;transform:none}.communities-section .polaroid-card+.polaroid-card{margin-left:-8px}.communities-section .polaroid-card:first-child{z-index:1;--offset-y:-14px;width:240px}.communities-section .polaroid-card:nth-child(2){z-index:2;--offset-y:22px}.communities-section .polaroid-card:nth-child(3){z-index:3;--offset-y:28px}.communities-section .polaroid-card:nth-child(4){z-index:4;--offset-y:-8px}.communities-section .polaroid-card:hover{box-shadow:none;transform:none}.polaroid-content{transform:rotate(var(--tilt));flex-direction:column;gap:4px;margin:0;transition:transform .24s cubic-bezier(.2,.7,.2,1);display:flex}.polaroid-photo{height:240px;transition:transform .2s;position:relative}.polaroid-photo:before{content:"";background:#fff;border:1px solid #f4f4f5;border-radius:2px;transition:box-shadow .24s;position:absolute;inset:-8px;box-shadow:0 2px 7px #18181b14,0 12px 24px #18181b12}.polaroid-card:first-child .polaroid-photo{height:288px}.communities-section .polaroid-image{aspect-ratio:auto;width:100%;height:100%;box-shadow:none;background:#fff;border:0;border-radius:2px;position:relative}.communities-section .polaroid-caption{color:#71717a;min-height:2.5em;font:400 14px/1.25 var(--font);text-align:left;overflow-wrap:normal;margin:10px 0 0;padding:0 12px;display:block}.communities-section .polaroid-image{overflow:hidden}.communities-section .polaroid-image img{position:absolute;inset:0}.polaroid-open{cursor:zoom-in;background:0 0;border:0;border-radius:2px;width:calc(100% + 16px);padding:0;position:absolute;inset:-8px}.polaroid-open:focus-visible{outline:2px solid var(--brown-500);outline-offset:5px}.community-photo-dialog{width:100%;max-width:none;height:100%;max-height:none;color:var(--zinc-600);background:0 0;border:0;margin:0;padding:64px 24px 40px;position:fixed;inset:0;overflow:auto}.community-photo-dialog[open]{justify-content:center;align-items:center;display:flex}.community-photo-dialog::backdrop{background:#f7f7f9f0}.community-photo-full{text-align:center;flex:0 auto;min-width:0;margin:auto}.community-photo-full-frame{background:#fff;border-radius:2px;width:fit-content;max-width:100%;margin:auto;padding:10px;box-shadow:0 10px 32px #18181b1c}.community-photo-full img{object-fit:contain;width:auto;max-width:min(1100px,100vw - 68px);height:auto;max-height:calc(100dvh - 172px);display:block}.community-photo-full figcaption{font:400 14px/1.5 var(--font);margin-top:16px}.community-photo-close{width:44px;height:44px;color:var(--zinc-500);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:fixed;top:16px;right:20px}.community-photo-close svg{width:20px;height:20px}.community-photo-close:hover{color:var(--brown-600)}@media (width>=1280px){.community-polaroids{height:360px;padding-inline:48px}.communities-section .polaroid-card{flex:0 252px;width:252px;min-width:0}.communities-section .polaroid-card:first-child{flex-basis:210px;width:210px}.communities-section .polaroid-photo{aspect-ratio:6/5;height:auto}.communities-section .polaroid-card:first-child .polaroid-photo{aspect-ratio:5/6;height:auto}}@media (width>=1024px) and (width<=1279px){.community-polaroids{grid-template-columns:repeat(2,minmax(0,1fr));justify-items:center;gap:32px;height:auto;display:grid}.communities-section .polaroid-card{width:224px}.communities-section .polaroid-card:first-child{width:192px}.communities-section .polaroid-card:nth-child(n){--offset-y:0px;--offset-x:0px;margin-left:0}.polaroid-photo{height:192px}.polaroid-card:first-child .polaroid-photo{height:224px}.communities-section .polaroid-caption{margin-top:12px;line-height:20px}}@media (width<=1023px){.community-polaroids{flex-direction:column;align-items:center;gap:40px;height:auto;margin-top:34px}.communities-section .polaroid-card{width:208px}.communities-section .polaroid-card:first-child{width:176px}.communities-section .polaroid-card:nth-child(n){--offset-y:0px;--offset-x:0px;margin-left:0}.polaroid-photo{height:176px}.polaroid-card:first-child .polaroid-photo{height:208px}.communities-section .polaroid-caption{line-height:20px}}@media (width<=900px){.community-story-heading{grid-template-columns:1fr;gap:18px}.community-story-heading>p{justify-self:start;max-width:none}}@media (width<=800px){.site-main .communities-section{scroll-margin-top:155px}}@media (width<=520px){.community-stories{margin-top:22px}.community-story{padding:20px 0 40px}.community-story+.community-story{padding-top:42px}.community-story-identity{gap:15px}.community-story-logo{border-width:7px;flex-basis:64px;width:64px;height:64px;font-size:11px}.community-story-identity h3{font-size:20px}.community-instagram{flex-basis:44px;width:44px;height:44px;margin-left:auto}}#community-wdb .community-polaroids{height:auto;padding:24px 24px 30px}#community-wdb .polaroid-card:nth-child(n){flex:0 240px;width:240px;min-width:0}#community-wdb .polaroid-card:first-child{flex-basis:460px;width:460px}#community-wdb .polaroid-card:nth-child(3){flex-basis:340px;width:340px}@media (width<=1279px){#community-wdb .polaroid-card:nth-child(n){flex:none;width:min(260px,100%)}#community-wdb .polaroid-card:first-child{width:min(380px,100%)}#community-wdb .polaroid-card:nth-child(3){width:min(300px,100%)}}@media (hover:hover) and (pointer:fine){.communities-section .polaroid-card:hover{z-index:10}.communities-section .polaroid-card:hover .polaroid-content{transform:translateY(-12px)rotate(0)scale(1.055)}.communities-section .polaroid-card:hover .polaroid-photo:before{box-shadow:0 10px 20px #18181b20,0 20px 36px #18181b20}}@media (prefers-reduced-motion:reduce){.community-gallery-next,.community-archive>summary svg,.polaroid-content,.polaroid-photo:before{transition:none}.communities-section .polaroid-card:hover .polaroid-content{transform:rotate(var(--tilt))}.polaroid-photo,.polaroid-photo:hover{transition:none;transform:none}}.philosophy-eyebrow{color:#74747f;font:500 11px/1.4 var(--font);text-transform:uppercase;letter-spacing:.16em;margin-bottom:6px;display:block}.philosophy-notes{column-count:3;column-gap:12px;margin-top:20px}.philosophy-note{break-inside:avoid;isolation:isolate;color:#504940;background:#f8f6f2;border:1px solid #e9e5df;border-radius:4px;min-width:0;margin-bottom:12px;padding:12px 14px;display:flow-root;position:relative}.philosophy-note blockquote{z-index:1;letter-spacing:-.015em;text-wrap:pretty;margin:0;font-family:Georgia,Times New Roman,serif;font-size:16px;font-weight:400;line-height:1.45;position:relative}.philosophy-note em{color:var(--brown-600)}.philosophy-sketch{float:right;color:currentColor;stroke:currentColor;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;opacity:.5;width:24px;height:24px;margin:0 0 6px 10px;display:block}.philosophy-note-direction,.philosophy-note-future,.philosophy-note-moon{background:#f7f1ea;border-color:#eaded2}.philosophy-note-belief,.philosophy-note-pressure{background:#fbf7f2;border-color:#eee5db}.philosophy-note-ambition,.philosophy-note-courage{background:#f8f5f0;border-color:#eae3da}@media (width<=1000px){.philosophy-notes{column-count:2}}@media (width<=560px){.philosophy-notes{column-count:1}.philosophy-note{margin-bottom:10px}}@font-face{font-family:Patrick Hand Local;src:url(/fonts/PatrickHand-Regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Yuji Boku Name;src:url(/fonts/YujiBoku-name.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap;unicode-range:U+4FCA,U+6607}@font-face{font-family:Yuji Boku Name;src:url(/fonts/MaShanZheng-surname.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap;unicode-range:U+8BB8}.about-name-heading{isolation:isolate;width:min(100%,430px);position:relative}.about-copy .about-name-heading h2{z-index:1;width:max-content;max-width:100%;font-size:clamp(30px,2.35vw,34px);position:relative}.site-heading{--header-mist-tan:211, 179, 146;--header-mist-sand:233, 209, 185;--header-mist-cream:249, 236, 218;isolation:isolate;position:relative;overflow:clip}.site-heading:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 100% 0%, rgba(var(--header-mist-tan), .38), rgba(var(--header-mist-tan), 0) 72%), radial-gradient(ellipse at 68% -10%, rgba(var(--header-mist-sand), .34), rgba(var(--header-mist-sand), 0) 68%), radial-gradient(ellipse at 36% -15%, rgba(var(--header-mist-cream), .4), rgba(var(--header-mist-cream), 0) 68%);width:100%;height:240px;position:absolute;top:0;right:0}.site-heading-inner{position:relative}.header-origin-signature{justify-content:flex-end;align-items:center;gap:18px;padding-top:6px;display:flex}.header-sleeping-dog{object-fit:contain;mix-blend-mode:multiply;pointer-events:none;flex:none;width:56px;height:56px;display:block}.header-origin{pointer-events:none;justify-items:end;gap:5px;display:grid;position:absolute;top:32px;right:8px}.header-origin-flight{width:100%;height:35px;display:block;position:relative}.header-origin-flight svg{width:calc(100% - 16px);height:35px;stroke:var(--brown-500);stroke-width:1.8px;stroke-dasharray:1 5;stroke-linecap:round;display:block;overflow:visible}.header-origin-plane{color:var(--brown-500);font-size:17px;line-height:1;position:absolute;bottom:2px;right:calc(50% - 138px);transform:rotate(15deg)}.header-origin-route{color:#81808a;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;font-size:10px;font-weight:500;display:flex}.header-origin-state{white-space:nowrap;background:#ffffff94;border:1px solid #875b3d61;border-radius:999px;padding:7px 10px}.header-origin-transition{flex:none;justify-items:center;gap:2px;width:34px;display:grid;transform:translateY(-5px)}.header-origin-transition>span{color:var(--brown-500);letter-spacing:0;font-size:10px;line-height:1}.header-origin-transition svg{width:100%;height:10px;stroke:var(--brown-500);stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;display:block}.header-origin-name{color:#977a5752;font-family:Yuji Boku Name,STKaiti,KaiTi,serif;font-size:clamp(36px,3.4vw,48px);line-height:1.1;transform:rotate(-4deg)}@media (width<=1000px){.header-origin{top:23px}.header-origin-name{font-size:36px}}@media (width<=560px){.header-origin{gap:3px;top:0;right:0}.header-origin-flight,.header-origin-flight svg{height:26px}.header-origin-plane{font-size:14px;bottom:1px;right:calc(50% - 101px)}.header-origin-route{letter-spacing:.03em;gap:3px;font-size:7px}.header-origin-state{padding:5px 6px}.header-origin-transition{gap:0;width:22px;transform:translateY(-4px)}.header-origin-transition>span{font-size:8px}.header-origin-transition svg{height:8px}.header-origin-name{font-size:29px}.header-origin-signature{gap:12px;padding-top:3px}.header-sleeping-dog{width:40px;height:40px}}.site-main .about-photo{margin-top:72px;position:relative;left:-28px}.site-main .about-photo-frame{width:300px;height:400px}.photo-greeting{color:#71717a;text-align:left;white-space:nowrap;pointer-events:none;width:max-content;margin:50px 0 0 16px;font:400 21px/1.15 Patrick Hand Local,Segoe Print,cursive;position:relative}.photo-greeting svg{width:64px;height:44px;margin:0;display:block;position:absolute;top:-28px;left:calc(100% + 12px)}.photo-greeting path{stroke:currentColor;stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round}.about-extras{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px;margin-top:22px;display:flex}.recruiter-links{color:#52525b;flex-wrap:wrap;align-items:center;gap:0;margin-bottom:17px;font-size:15px;font-weight:500;display:flex}.recruiter-link-item{align-items:center;min-height:44px;display:inline-flex}.recruiter-link-separator{color:#a1a1aa;margin-inline:13px}.recruiter-links a{min-height:44px;color:inherit;text-underline-offset:5px;align-items:center;text-decoration:none;display:inline-flex}.recruiter-links a:hover,.recruiter-links a:focus-visible{color:#27272a;text-decoration:underline}.about-cat{text-align:center;color:#71717a;flex:0 0 138px;width:138px;margin-left:auto;position:relative}.about-cat-button{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:12px;width:138px;min-height:83px;padding:0;display:block}.about-cat-button svg{width:138px;height:83px;display:block;overflow:visible}.about-cat-button:hover .cat-ear{fill:#c4c9d0}.about-cat-response{height:22px;font:400 12px/1.6 var(--font,system-ui, sans-serif);display:block}.about-cat-hint{font:400 12px/1.5 var(--font,system-ui, sans-serif);margin-top:-7px;display:block}.cat-fur{fill:#b5bac2;stroke:#525862;stroke-width:1.65px;stroke-linejoin:round}.cat-line{stroke:#525862;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round}.cat-ear{fill:#d0d4da;transition:fill .18s}.cat-nose{fill:#6b7280}.cat-tail-outline{stroke:#525862;stroke-width:9px;stroke-linecap:round}.cat-tail-fill{stroke:#b5bac2;stroke-width:5.8px;stroke-linecap:round}.cat-soft-patch{fill:#d4d7dd}.cat-eyes{fill:#414852}.cat-eye-shine{fill:#f8fafc}.cat-tabby-lines{stroke:#969da7;stroke-width:2px;stroke-linecap:round}.cat-purr-lines{stroke:#9298a2;stroke-width:1.5px;stroke-linecap:round}.is-purring .cat-pet-motion{transform-origin:90px 86px;animation:.42s ease-out aboutCatPet}.is-purring .cat-tail{transform-origin:127px 66px;animation:.65s ease-in-out 2 aboutCatTail}.is-purring .cat-purr-lines{animation:1.1s ease-out both aboutCatPurr}@keyframes aboutCatPet{50%{transform:translateY(2px)scaleY(.97)}}@keyframes aboutCatTail{50%{transform:rotate(-8deg)}}@keyframes aboutCatPurr{0%{opacity:0;transform:translateY(3px)}25%{opacity:1}to{opacity:0;transform:translateY(-5px)}}@media (width<=1150px){.site-main .about-photo{margin-top:48px;left:-16px}.site-main .about-photo-frame{width:280px;height:370px}.photo-greeting{margin-left:0}}@media (width<=900px){.site-main .about-photo{width:min(320px,100%);margin-top:24px;left:0}.site-main .about-photo-frame{aspect-ratio:3/4;width:100%;height:auto}.photo-greeting{margin-left:0}}@media (width<=800px){.photo-greeting{margin-bottom:8px}.about-extras{margin-top:12px}}@media (prefers-reduced-motion:no-preference){.site-heading:before{animation:aboutHeaderMistEnter var(--motion-enter) var(--motion-out) .1s backwards}.site-main .about-extras{animation:aboutDetailsEnter var(--motion-enter) var(--motion-out) .22s backwards}}@keyframes aboutHeaderMistEnter{0%{opacity:0}to{opacity:1}}@keyframes aboutDetailsEnter{0%{opacity:0;visibility:hidden;transform:translateY(20px)}to{opacity:1;visibility:visible;transform:none}}@media (prefers-reduced-motion:reduce){.is-purring .cat-pet-motion,.is-purring .cat-tail,.is-purring .cat-purr-lines{animation:none}}.about-cursor-page{flex-direction:column;flex:1;min-width:0;display:flex}.about-cursor-page .site-main,.about-cursor-page .site-main :is(.side-nav,.section-nav-wrap,.about-photo,.about-copy>h2,.about-meta,.about-copy>p),.about-cursor-page .site-main .content-layout>.container>section,.about-cursor-page .site-main :is(.project-card,.side-nav-sublink){animation:none}.about-cursor-page .scroll-reveal{opacity:1;transition:none;transform:none}.compact-topbar{justify-content:space-between;align-items:center;gap:30px;width:100%;height:40px;min-height:40px;display:flex}.compact-mark{box-sizing:border-box;border:1px solid var(--compact-mark-border,var(--compact-ink,#171717));background:var(--compact-mark-background,#fff);width:40px;height:40px;color:var(--compact-ink,#171717);border-radius:50%;flex:0 0 40px;place-items:center;font:italic 400 18px/1 Georgia,serif;text-decoration:none;transition:transform .22s,background-color .22s,color .22s;display:grid}.compact-mark:hover{background:var(--compact-mark-hover-background,#171717);color:var(--compact-mark-hover-ink,#fff);transform:rotate(-12deg)}.compact-nav{align-items:center;gap:clamp(20px,2.5vw,36px);display:flex}.compact-nav a{color:var(--compact-nav-ink,var(--compact-ink,#171717));letter-spacing:normal;font-size:13px;font-weight:500;line-height:1.5;text-decoration:none;transition:opacity .18s}.compact-nav a:hover{opacity:.45}.compact-mark:focus-visible,.compact-nav a:focus-visible{outline-offset:5px;outline:2px solid}@media (width<=700px){.compact-topbar{height:34px;min-height:34px}.compact-mark{flex-basis:34px;width:34px;height:34px;font-size:15px}.compact-nav{gap:16px}.compact-nav a{font-size:10px}}@media (prefers-reduced-motion:reduce){.compact-mark,.compact-nav a{transition:none}}.portfolio-page{--portfolio-ink:#393b36;--portfolio-muted:#96988f;--portfolio-paper:#fff;--portfolio-cover:#ad9776;--portfolio-accent:#ad7359;--gallery-gutter:clamp(20px, 4.3vw, 72px);--photo-gap:clamp(16px, 3.3vw, 48px);background:var(--portfolio-paper);color:var(--portfolio-ink)}.portfolio-main section{margin:0}.portfolio-page button{font:inherit}.portfolio-skip-link{z-index:100;color:#393b36;background:#fff;padding:12px 18px;position:fixed;top:-70px;left:20px}.portfolio-skip-link:focus{top:12px}.portfolio-cover{min-height:100svh;padding:132px var(--gallery-gutter) 140px;background:var(--portfolio-cover);color:#fffdf5;place-items:center;display:grid;position:relative;overflow:clip}.portfolio-topbar{--compact-ink:#fffdf5;--compact-nav-ink:#fffdf5bf;--compact-mark-border:#fffdf580;--compact-mark-background:transparent;--compact-mark-hover-background:#ffffff15;--compact-mark-hover-ink:#fff;position:absolute;top:23px;left:clamp(20px,4.5vw,64px);right:clamp(20px,4.5vw,64px)}.portfolio-topbar .compact-nav a[aria-current=page]{color:#fff}.portfolio-cover-layout{grid-template-columns:20px minmax(0,1fr) 175px;align-items:center;gap:28px;width:100%;max-width:1160px;display:grid}.portfolio-cover-credit{writing-mode:vertical-rl;letter-spacing:.16em;white-space:nowrap;justify-self:center;font-size:10px;line-height:1.5;transform:rotate(180deg)}.portfolio-cover-photo{aspect-ratio:3/2;position:relative}.portfolio-cover-image{position:absolute;inset:0;overflow:hidden}.portfolio-cover-photo img{object-fit:cover;width:100%;height:100%;display:block}.portfolio-cover-copy{padding-left:2px}.portfolio-cover-eyebrow{letter-spacing:.22em;text-transform:uppercase;opacity:.7;margin-bottom:17px;font-size:9px;display:block}.portfolio-cover-copy h1{letter-spacing:-.025em;white-space:pre-line;font:400 clamp(25px,2.2vw,34px)/1.18 Georgia,Times New Roman,serif}.portfolio-cover-rule{background:#fffdf5a6;width:35px;height:1px;margin:25px 0 22px;display:block}.portfolio-cover-copy p{letter-spacing:.1em;max-width:170px;font-size:10px;line-height:1.9}.portfolio-scroll{width:46px;height:46px;color:inherit;background:0 0;border:0;place-items:center;padding:5px;transition:transform .25s;display:grid;position:absolute;bottom:43px;left:calc(50% - 23px)}.portfolio-scroll svg{width:32px;height:32px}.portfolio-scroll:hover{transform:translateY(5px)}.portfolio-cover-index{right:var(--gallery-gutter);letter-spacing:.15em;opacity:.65;font:9px/1.5 ui-monospace,monospace;position:absolute;bottom:52px}.portfolio-gallery-nav{z-index:40;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffed;border-bottom:1px solid #e7e7e2;scroll-margin-top:0;position:sticky;top:0}.portfolio-gallery-nav-inner{max-width:1664px;min-height:82px;padding:0 var(--gallery-gutter);justify-content:space-between;align-items:center;gap:30px;margin:0 auto;display:flex}.portfolio-gallery-signature{color:#7f8178;letter-spacing:.16em;flex:0 0 120px;font-size:9px;line-height:1.5}.portfolio-gallery-signature span{color:#aaa99f;font-size:8px;display:block}.portfolio-categories{align-self:stretch;align-items:stretch;gap:clamp(20px,3vw,44px);display:flex}.portfolio-category{color:#a6a69f;letter-spacing:.15em;text-transform:uppercase;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:16px 0;transition:color .2s,border-color .2s;position:relative;font-size:11px!important}.portfolio-category.is-selected{border-bottom-color:var(--portfolio-ink);color:var(--portfolio-ink)}.portfolio-category:hover{color:var(--portfolio-ink)}.portfolio-photo-count{color:#a4a59b;letter-spacing:.04em;white-space:nowrap;font:9px/1.4 ui-monospace,monospace}.portfolio-collection{padding:0 var(--gallery-gutter);scroll-margin-top:84px}.portfolio-collection-heading{text-align:center;padding:78px 0 75px}.portfolio-heading-content{display:inline-block}.portfolio-eyebrow{color:#adada4;letter-spacing:.2em;text-transform:uppercase;margin-bottom:16px;font-size:8px;display:block}.portfolio-collection-heading h2{color:#484a44;letter-spacing:.16em;text-transform:uppercase;font-size:clamp(18px,2vw,25px);font-weight:400;line-height:1.3}.portfolio-gallery-inner{max-width:1520px;margin:0 auto;container-type:inline-size}.portfolio-photo{text-align:left;isolation:isolate;background:#f1f0ec;border:0;width:100%;min-width:0;min-height:0;padding:0;display:block;position:relative}.portfolio-photo-placeholder{color:#bebeb2;border:1px solid #e8e7df;justify-content:space-between;padding:14px;font:10px/1 ui-monospace,monospace;display:flex;position:absolute;inset:0}.portfolio-photo-image{display:block;position:absolute;inset:0;overflow:hidden}.portfolio-photo-image img{object-fit:cover;width:100%;height:100%;transition:transform .9s cubic-bezier(.2,.65,.2,1);display:block}.portfolio-photo:hover .portfolio-photo-image img{transform:scale(1.035)}.portfolio-photo-corners{opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:-6px}.portfolio-photo-corners i{border:0 solid var(--portfolio-accent);width:13px;height:13px;position:absolute}.portfolio-photo-corners i:first-child{border-width:1px 0 0 1px;top:0;left:0}.portfolio-photo-corners i:nth-child(2){border-width:1px 1px 0 0;top:0;right:0}.portfolio-photo-corners i:nth-child(3){border-width:0 1px 1px 0;bottom:0;right:0}.portfolio-photo-corners i:nth-child(4){border-width:0 0 1px 1px;bottom:0;left:0}.portfolio-photo:hover .portfolio-photo-corners,.portfolio-photo:focus-visible .portfolio-photo-corners{opacity:.9}.portfolio-photo-caption{color:#fff;letter-spacing:.025em;opacity:0;pointer-events:none;background:linear-gradient(#0000,#0006);justify-content:space-between;align-items:flex-end;gap:8px;padding:28px 14px 13px;font-size:11px;transition:opacity .25s,transform .25s;display:flex;position:absolute;inset:auto 0 0;transform:translateY(4px)}.portfolio-photo:hover .portfolio-photo-caption,.portfolio-photo:focus-visible .portfolio-photo-caption{opacity:1;transform:none}.portfolio-endnote{justify-content:space-between;align-items:center;gap:24px;padding:90px 0 76px;display:flex}.portfolio-endnote>span{color:#8b8c82;font:italic 20px/1.4 Georgia,serif}.portfolio-endnote button{color:#8b8c82;letter-spacing:.1em;text-transform:uppercase;background:0 0;border:0;padding:10px 0 10px 15px;font-size:10px}.portfolio-endnote button span{margin-left:14px}.portfolio-page>.footer{border-color:#eeeeea}@media (prefers-reduced-motion:no-preference){.portfolio-photo:has(.portfolio-photo-image:not([data-cursor-revealed=true])) .portfolio-photo-caption{opacity:0}}.portfolio-lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--portfolio-ink);background:#f7f6f1;border:0;margin:0;padding:0;position:fixed;inset:0}.portfolio-lightbox[open]{flex-direction:column;display:flex}.portfolio-lightbox::backdrop{background:#18181bd9}html.has-googly-cursor .portfolio-lightbox,html.has-googly-cursor .portfolio-lightbox *{cursor:auto!important}html.has-googly-cursor .portfolio-lightbox button,html.has-googly-cursor .portfolio-lightbox button *{cursor:pointer!important}.portfolio-lightbox-header{letter-spacing:.08em;justify-content:space-between;align-items:center;gap:20px;padding:20px 30px;font-size:11px;display:flex}.portfolio-lightbox-divider{color:#b6b5ab;margin:0 12px}.portfolio-lightbox-close,.portfolio-lightbox-previous,.portfolio-lightbox-next{width:44px;height:44px;color:inherit;background:0 0;border:0;place-items:center;display:grid}.portfolio-lightbox button svg{width:24px;height:24px}.portfolio-lightbox-stage{flex:1;place-items:center;min-height:0;padding:0 85px;display:grid;position:relative}.portfolio-lightbox-stage>img{object-fit:contain;width:100%;height:100%;min-height:0;display:block}.portfolio-lightbox-previous{position:absolute;top:calc(50% - 22px);left:20px}.portfolio-lightbox-next{position:absolute;top:calc(50% - 22px);right:20px}.portfolio-lightbox-caption{justify-content:space-between;align-items:center;gap:24px;padding:24px 85px 28px;display:flex}.portfolio-lightbox-caption h2{font:400 23px/1.3 Georgia,serif}.portfolio-lightbox-caption div>span{color:#939489;font-size:11px}.portfolio-lightbox-count{color:#939489;white-space:nowrap;font:11px/1.5 ui-monospace,monospace}@media (width<=1000px){.portfolio-cover-layout{grid-template-columns:16px minmax(0,1fr) 145px;gap:20px}.portfolio-gallery-signature{flex-basis:95px;font-size:8px}.portfolio-gallery-nav-inner{gap:20px}.portfolio-photo-count{display:none}}@media (width<=700px){.portfolio-page{--photo-gap:14px}.portfolio-cover{min-height:100svh;padding-top:122px;padding-bottom:122px}.portfolio-topbar{top:17px;left:16px;right:16px}.portfolio-cover-layout{grid-template-columns:14px minmax(0,1fr);gap:15px}.portfolio-cover-photo{aspect-ratio:4/3}.portfolio-cover-credit{letter-spacing:.11em;font-size:8px}.portfolio-cover-copy{grid-column:2;padding:21px 0 0}.portfolio-cover-copy h1{white-space:normal;font-size:31px}.portfolio-cover-eyebrow{margin-bottom:11px;font-size:8px}.portfolio-cover-rule{margin:17px 0 14px}.portfolio-cover-copy p{max-width:none;font-size:9px}.portfolio-scroll{bottom:30px}.portfolio-cover-index{font-size:8px;bottom:43px}.portfolio-gallery-nav-inner{min-height:66px;padding-inline:var(--gallery-gutter);justify-content:center;gap:0}.portfolio-gallery-signature{display:none}.portfolio-categories{justify-content:space-between;gap:10px;width:100%}.portfolio-category{letter-spacing:.09em;font-size:9px!important}.portfolio-collection{scroll-margin-top:68px}.portfolio-collection-heading{padding:48px 0 43px}.portfolio-eyebrow{margin-bottom:12px;font-size:7px}.portfolio-collection-heading h2{letter-spacing:.11em;font-size:17px}.portfolio-photo-placeholder{padding:9px}.portfolio-photo-caption{padding:22px 9px 8px;font-size:9px}.portfolio-endnote{gap:14px;padding:55px 0 48px}.portfolio-endnote>span{font-size:17px}.portfolio-endnote button{font-size:8px}.portfolio-lightbox-header{padding:12px 14px;font-size:10px}.portfolio-lightbox-stage{padding-inline:18px}.portfolio-lightbox-previous,.portfolio-lightbox-next{z-index:1;top:auto;bottom:-52px}.portfolio-lightbox-previous{left:calc(50% - 47px)}.portfolio-lightbox-next{right:calc(50% - 47px)}.portfolio-lightbox-caption{padding:65px 20px 24px}.portfolio-lightbox-caption h2{font-size:20px}}@media (prefers-reduced-motion:reduce){.portfolio-agents,.portfolio-photo-corners{display:none}.portfolio-scroll,.portfolio-photo-caption{transition:none}}.portfolio-gallery-inner{max-width:1180px}.portfolio-spread-toolbar{color:#8d887d;justify-content:space-between;align-items:center;gap:20px;padding:0 0 24px;font-size:12px;display:flex}.portfolio-spread-toolbar>span:first-child{font:italic 19px/1.4 Georgia,serif}.portfolio-page .portfolio-spread-toolbar button{color:#80674f;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;padding:9px 0 9px 16px;font-size:11px}.portfolio-spread-toolbar button span{margin-left:10px;font-size:16px}.portfolio-spread-toolbar button:hover{color:#393b36}.portfolio-spread-toolbar button:focus-visible{outline-offset:4px;outline:2px solid #ad7359}.portfolio-spread-status{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.portfolio-spreads{gap:clamp(36px,5vw,76px);display:grid}.portfolio-spread-paper{background:#f8f6f1;border:1px solid #ede9e1;padding:clamp(12px,2.2vw,32px)}.portfolio-spread-canvas{--spread-gap:clamp(8px, 1.2vw, 18px);width:100%;aspect-ratio:var(--spread-ratio);position:relative}.portfolio-spread-canvas>.portfolio-photo{left:calc(var(--spread-x) + var(--spread-gap) / 2);top:calc(var(--spread-y) + var(--spread-gap) / 2);width:calc(var(--spread-width) - var(--spread-gap));height:calc(var(--spread-height) - var(--spread-gap));position:absolute}.portfolio-spread-caption{color:#8d887d;border-top:1px solid #e5dfd5;justify-content:space-between;align-items:baseline;gap:16px;margin-top:20px;padding:22px calc(clamp(8px,1.2vw,18px)/2) 3px;display:flex}.portfolio-spread-caption>span:first-child{color:#62594e;font:italic 20px/1.3 Georgia,serif}.portfolio-spread-caption>span:last-child{letter-spacing:.08em;white-space:nowrap;font-size:10px}.portfolio-spread-caption>span:last-child span{margin-inline:8px}@media (width<=700px){.portfolio-spread-canvas{aspect-ratio:.85}.portfolio-spread-canvas>.portfolio-photo{left:calc(var(--spread-mobile-x) + var(--spread-gap) / 2);top:calc(var(--spread-mobile-y) + var(--spread-gap) / 2);width:calc(var(--spread-mobile-width) - var(--spread-gap));height:calc(var(--spread-mobile-height) - var(--spread-gap))}.portfolio-spread-caption{gap:8px;margin-top:12px;padding-top:14px}.portfolio-spread-caption>span:first-child{font-size:15px}.portfolio-spread-caption>span:last-child{letter-spacing:.02em;font-size:8px}.portfolio-spread-caption>span:last-child span{margin-inline:4px}.portfolio-spread-toolbar>span:first-child{font-size:17px}}.experience-detail,.work-dialog-scroll,.community-story,.portfolio-gallery-inner{position:relative}.motion-snapshot{z-index:2}.motion-snapshot,.motion-snapshot *{transition:none!important;animation:none!important}.community-archive[data-animating] #past-club-stories{overflow:clip}#past-club-stories{transform-origin:0 0}.community-archive[data-closing]>summary svg{transform:rotate(0)}.experience-tab{isolation:isolate;position:relative}.experience-tab.is-selected{background:#fff}.experience-tab:before{content:"";z-index:-1;border-radius:inherit;background:var(--brown-50);clip-path:inset(0 100% 0 0);transition:clip-path var(--motion-exit) var(--motion-out);position:absolute;inset:0}.experience-tab.is-selected:before{clip-path:inset(0 0% 0 0);transition-duration:var(--motion-enter)}.motion-icon-stack{place-items:center;display:grid}.motion-icon-stack>.motion-icon{opacity:0;filter:blur(2px);transition:opacity var(--motion-exit) var(--motion-out), filter var(--motion-exit) var(--motion-out), transform var(--motion-exit) var(--motion-out);grid-area:1/1;transform:scale(.95)}.motion-icon-stack>.motion-icon.is-active{opacity:1;filter:blur();transition-duration:var(--motion-enter);transform:scale(1)}.landing-tools button:hover{transform:none}.creation-tools .motion-range{appearance:none;transform:translateY(var(--range-pull,0px));transition:transform var(--motion-exit) var(--motion-out);background:0 0}.motion-range::-webkit-slider-runnable-track{background:linear-gradient(to top, var(--creation-ink) var(--range-fill), color-mix(in srgb, var(--creation-ink) 18%, var(--creation-paper)) var(--range-fill));border-radius:999px;width:4px;height:100%}.motion-range::-moz-range-track{background:linear-gradient(to top, var(--creation-ink) var(--range-fill), color-mix(in srgb, var(--creation-ink) 18%, var(--creation-paper)) var(--range-fill));border-radius:999px;width:4px;height:100%}.motion-range::-webkit-slider-thumb{appearance:none;background:var(--creation-ink);width:11px;height:11px;transform:scaleY(var(--range-stretch,1));transition:transform var(--motion-exit) var(--motion-out);border:0;border-radius:50%;margin-left:-3.5px}.motion-range::-moz-range-thumb{background:var(--creation-ink);width:11px;height:11px;transform:scaleY(var(--range-stretch,1));transition:transform var(--motion-exit) var(--motion-out);border:0;border-radius:50%}.creation-tools .motion-range[data-held]{--range-stretch:1.12;transition:none}.motion-range[data-held]::-webkit-slider-thumb{transition:none}.motion-range[data-held]::-moz-range-thumb{transition:none}@media (prefers-reduced-motion:no-preference){:is(button,summary,.intro-enter,.landing-enter-site,.top-links a,.compact-nav a,.shelf-cover-link){transition:scale .12s var(--motion-out), transform var(--motion-move) var(--motion-in-out), opacity var(--motion-exit) var(--motion-out), background-color .18s var(--motion-out), border-color .18s var(--motion-out), box-shadow .18s var(--motion-out), color .18s var(--motion-out)}:is(button,summary,.intro-enter,.landing-enter-site,.top-links a,.compact-nav a,.shelf-cover-link):active:not(:disabled):not([aria-disabled=true]){transition-duration:0s;scale:.97}.site-main .side-nav-subsections{transition:grid-template-rows var(--motion-exit) var(--motion-out), opacity var(--motion-exit) var(--motion-out), transform var(--motion-exit) var(--motion-out), margin var(--motion-exit) var(--motion-out), visibility var(--motion-exit);transform:translateY(-4px)scale(.95)}.site-main .side-nav-subsections.expanded{transition-duration:var(--motion-enter);transform:none}.site-main .side-nav-subsections.expanded .side-nav-sublink{animation:motionRowIn var(--motion-enter) var(--motion-out) calc(var(--row-index,0) * var(--motion-stagger)) both}.community-archive>summary svg{transition:transform var(--motion-move) var(--motion-in-out)}.experience-detail-content>.experience-detail-heading{animation:motionRowIn var(--motion-enter) var(--motion-out) both}.experience-detail-content>.experience-detail-summary{animation:motionRowIn var(--motion-enter) var(--motion-out) 30ms both}.experience-detail-content :is(.experience-detail-body,.experience-detail-skills,.experience-detail-achievements) h4{animation:motionRowIn var(--motion-enter) var(--motion-out) 60ms both}.experience-detail .experience-bullet-list li{animation:motionRowIn var(--motion-enter) var(--motion-out) calc(90ms + var(--row-index,0) * var(--motion-stagger)) both}.experience-detail .experience-detail-tools span{animation:motionRowIn var(--motion-enter) var(--motion-out) calc(.12s + var(--row-index,0) * var(--motion-stagger)) both}.experience-detail .experience-achievement-list li{animation:motionRowIn var(--motion-enter) var(--motion-out) calc(.15s + var(--row-index,0) * var(--motion-stagger)) both}.work-dialog[open],.work-dialog.is-closing{animation:none}.work-dialog{transition:width var(--motion-move) var(--motion-in-out), height var(--motion-move) var(--motion-in-out), max-height var(--motion-move) var(--motion-in-out), border-radius var(--motion-move) var(--motion-in-out)}.work-dialog[open]::backdrop{animation:workBackdropIn var(--motion-enter) var(--motion-out) both}.work-dialog.is-closing::backdrop{animation:workBackdropOut var(--motion-exit) var(--motion-in-out) both}.work-dialog-body{animation:motionRowIn var(--motion-enter) var(--motion-out) both}.work-dialog-body>.work-project-title{animation:motionRowIn var(--motion-enter) var(--motion-out) 30ms both}.work-prose li{animation:motionRowIn var(--motion-enter) var(--motion-out) calc(90ms + var(--row-index,0) * var(--motion-stagger)) both}.work-project-meta>div{animation:motionRowIn var(--motion-enter) var(--motion-out) both}.work-project-meta>div:nth-child(2){animation-delay:30ms}.work-project-meta>div:nth-child(3){animation-delay:60ms}.work-project-meta>div:nth-child(4){animation-delay:90ms}.work-card-description,.work-card-frame{transition:opacity var(--motion-enter) var(--motion-out), transform var(--motion-move) var(--motion-in-out)}.portfolio-photo-caption{transition:opacity var(--motion-enter) var(--motion-out), transform var(--motion-enter) var(--motion-out)}.intro-artwork-image{transition:opacity var(--motion-move) var(--motion-in-out)}.intro-painting-showcase{animation-duration:var(--motion-move);animation-timing-function:var(--motion-out)}.polaroid-content{transition:transform var(--motion-move) var(--motion-in-out)}}@keyframes motionRowIn{0%{opacity:0;clip-path:inset(0 0 20%);transform:translateY(5px)}to{opacity:1;clip-path:inset(0 0 0%);transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.experience-tab:before{transition:none}.motion-icon-stack>.motion-icon{filter:none;transition:none;transform:none}.creation-tools .motion-range{--range-stretch:1;transition:none;transform:none}.creation-tools .motion-range[data-held]{--range-stretch:1}}
