@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/open-sans-latin-400-normal-Bk63H6sG.woff2) format("woff2"),url(/assets/open-sans-latin-400-normal-DKniycaP.woff) format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/open-sans-latin-500-normal-C0rntwkW.woff2) format("woff2"),url(/assets/open-sans-latin-500-normal-BxcNt415.woff) format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/open-sans-latin-600-normal-Cp4N6AwT.woff2) format("woff2"),url(/assets/open-sans-latin-600-normal-C3dWW5mx.woff) format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/open-sans-latin-700-normal-CceUhp2e.woff2) format("woff2"),url(/assets/open-sans-latin-700-normal-CZCQA30i.woff) format("woff")}@font-face{font-family:Open Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/open-sans-latin-800-normal-C0t39IfQ.woff2) format("woff2"),url(/assets/open-sans-latin-800-normal-w4vykUBk.woff) format("woff")}@font-face{font-family:Open Sans;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/open-sans-latin-400-italic-oaOkCnEp.woff2) format("woff2"),url(/assets/open-sans-latin-400-italic-BEURUQpT.woff) format("woff")}@font-face{font-family:Open Sans;font-style:italic;font-display:swap;font-weight:600;src:url(/assets/open-sans-latin-600-italic-z4qeQ2lO.woff2) format("woff2"),url(/assets/open-sans-latin-600-italic-DCIHYWcW.woff) format("woff")}@font-face{font-family:Lato;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/lato-latin-300-normal-BP2wSCML.woff2) format("woff2"),url(/assets/lato-latin-300-normal-CINZtfFB.woff) format("woff")}@font-face{font-family:Lato;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lato-latin-400-normal-BEhtfm5r.woff2) format("woff2"),url(/assets/lato-latin-400-normal-B11PyLys.woff) format("woff")}@font-face{font-family:Lato;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/lato-latin-700-normal-BUGMgin4.woff2) format("woff2"),url(/assets/lato-latin-700-normal-DAdL7O4w.woff) format("woff")}@font-face{font-family:Lato;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/lato-latin-900-normal-C3uaq3BA.woff2) format("woff2"),url(/assets/lato-latin-900-normal-CZBfLiEO.woff) format("woff")}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@font-face{font-family:Intuitive Free;src:url(/fonts/intuitive-free.otf) format("opentype");font-style:normal;font-weight:400;font-display:swap}:root{--navigation-font: "Intuitive Free", Georgia, serif}nav{position:fixed;left:0;top:0;width:100%;height:70px;display:flex;justify-content:center;background-color:#fff;z-index:200;padding-top:10px;padding-left:4%;padding-right:4%}.menu{margin-top:6px;display:flex}a{transition:background-size .4s}.menu a{display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:44px;min-height:44px;padding:14px 10px;line-height:1.2;cursor:pointer;margin-left:0;touch-action:manipulation;font-size:14px;font-family:var(--navigation-font);text-decoration:none;font-weight:400;font-synthesis:none;text-transform:uppercase;letter-spacing:.06em;color:gray;background:none;transition:color .16s ease}.menu a:hover,.menu a[aria-current=page]{color:var(--accent-gold-text)}a:hover{background-size:0 3px,100% 3px}.footer-container{width:100%;height:50px;font-family:var(--navigation-font);font-size:12px;font-weight:400;font-synthesis:none;background:transparent;position:relative;bottom:0;text-align:center;line-height:50px}.menu a:first-child{margin-left:0}:root{--title-font: "Lato", sans-serif;--content-font: "Open Sans", sans-serif;--background-light: rgb(250, 250, 250);--accent-gold: #b08a35;--accent-gold-text: #806019;--accent-gold-soft: #f6edda;--accent-gold-hover: #efdfbc;--accent-gold-glow: #b08a3526}::selection{background:var(--accent-gold-hover);color:#30260f}mark{background:var(--accent-gold-soft);color:var(--accent-gold-text)}*{font-family:var(--content-font);color:#000000a3}.title{font-family:var(--title-font);font-size:24px;margin-bottom:20px;font-weight:600;color:#000000e2}.body-part{margin-top:80px}a{text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:#00000070;font-weight:500;text-underline-offset:3px;text-decoration-thickness:1px;color:#000000e2}a:hover{text-decoration:none;color:var(--accent-gold-text)}img{border-radius:5%}.each-container{display:flex;padding:5% 15%}.each-container a:hover{background-color:var(--accent-gold-hover)}b{font-weight:500;color:#000}.smalltext{font-size:12px}@media(max-width:820px){.each-container{display:block}#intern{margin-top:10%}.edu-part,.intern-part{width:100%}.footer-container{font-size:12px}.about-part{margin-left:0%}.profile-container{margin:5% 0% 10% 25%;width:100%;border-radius:5%}.profile-img{margin:0%;height:auto}}@media(max-width:450px){.menu{display:none}.each-container{padding-left:8%;padding-right:8%}.profile-container{margin:5% 0% 10% 2%;width:100%}.edu-logobox{display:none}}@font-face{font-family:TV Mono;src:url(/fonts/geist-mono-tv.woff2) format("woff2");font-weight:100 900;font-display:swap}body:has(.page-container--home){background:#f8f8f6}@media(hover:hover)and (pointer:fine){html:has(.page-container--home),body:has(.page-container--home),body:has(.page-container--home) *{cursor:url(/assets/cursors/cat-wand.svg) 5 4,auto}}.page-container.page-container--home{height:100svh;height:100dvh;min-height:0;background:#f8f8f6}.page-container--home>.body-part{margin-top:0;min-height:0}.page-container--home>.footer-container{display:none}.tv-page{position:relative;flex:1;min-height:0;overflow:clip;isolation:isolate;container-type:size;background:#f8f8f6;color:#282826}.tv-composition{--tv-header-spacing: 24px;--tv-width: min(440px, 49cqh, 44vw);position:relative;width:100%;height:min(100%,720px);container-type:size}.tv-page *{color:inherit}.tv-background-interference{position:absolute;z-index:-1;inset:0;width:100%;height:100%;object-fit:fill;opacity:.1;pointer-events:none}.tv-name{position:absolute;top:calc(clamp(78px,10cqh,96px) + var(--tv-header-spacing));left:50%;transform:translate(-50%);width:clamp(145px,min(27vw,41cqh),410px);margin:0;animation:tv-reveal .7s ease both}.tv-name h1{margin:0}.tv-name img{display:block;width:100%;height:auto;border-radius:0}.tv-identities{min-height:1.4em;margin:clamp(-12px,-1.5cqh,-6px) 0 0;font-family:TV Mono,monospace;font-size:clamp(14px,2.5cqh,20px);font-weight:400;line-height:1.4;letter-spacing:.06em;text-align:center;white-space:nowrap;color:#56554e}.tv-identities .typewriter{padding:0;font-family:inherit;opacity:1}.tv-identities .typed-cursor{color:var(--accent-gold-text)}.tv-identities .typewriter[data-paused=true] .typed-cursor{animation:none;opacity:1}.tv-stage{--tv-caption-font-size: clamp(11px, 1.7cqh, 15px);--tv-letter-gap: clamp(10px, 1.5vw, 24px);--tv-note-gap: clamp(36px, 5vw, 90px);position:absolute;top:calc(47.5% + var(--tv-header-spacing));left:50%;width:var(--tv-width);transform:translate(-50%);animation:tv-reveal .9s ease both}.tv-set{position:relative;isolation:isolate;width:100%;aspect-ratio:1503 / 1046}.tv-set:has(.tv-screen:focus-visible){outline:2px solid var(--accent-gold);outline-offset:4px}.tv-calligraphy{position:absolute;z-index:1;top:10%;height:58%;overflow:hidden;opacity:.92;filter:blur(clamp(.4px,.07vw,1.1px)) drop-shadow(0 0 1px rgb(28 28 28 / 22%));pointer-events:none;-webkit-user-select:none;user-select:none}.tv-calligraphy--left{right:calc(100% + var(--tv-letter-gap));aspect-ratio:660 / 790}.tv-calligraphy--right{left:calc(100% + var(--tv-letter-gap));aspect-ratio:523 / 790}.tv-cabinet{position:relative;z-index:2;display:block;width:100%;height:auto;border-radius:0;pointer-events:none}.tv-screen{position:absolute;top:9%;left:7.5%;width:66%;height:71%;overflow:hidden;border-radius:9%/12%;background:#eceae2;text-decoration:none}.tv-program,.tv-program img,.tv-scanlines,.tv-glass,.tv-channel-static{position:absolute;inset:0;width:100%;height:100%}.tv-program img{display:block;border-radius:0;object-position:center;filter:grayscale(1) contrast(1.08) brightness(.87);animation:tv-retune .45s steps(1) both}.tv-screen-channel{position:absolute;z-index:1;top:8%;left:7%;color:#fff;font-family:TV Mono,monospace;font-size:clamp(9px,1.7cqh,15px);text-shadow:0 1px 4px #000;pointer-events:none}.tv-scanlines{z-index:1;background:repeating-linear-gradient(0deg,#0003 0 1px,transparent 1px 3px);opacity:.55;pointer-events:none}.tv-glass{z-index:1;background:linear-gradient(135deg,#fff2,transparent 40%),radial-gradient(ellipse at center,transparent 45%,#090b0a88 100%);box-shadow:inset 0 0 12px #0008;pointer-events:none}.tv-channel-static{background:repeating-linear-gradient(0deg,#ddd 0 2px,#222 2px 4px,transparent 4px 7px),url(/assets/television/static-texture.avif) center / cover;opacity:0;pointer-events:none;animation:tv-retune-static .45s steps(1) both}.tv-dial{position:absolute;z-index:3;left:85%;width:11%;height:15%;padding:0;border:0;border-radius:50%;background:transparent}.tv-dial--next{top:47%}.tv-dial--previous{top:64%}.tv-dial:hover{box-shadow:0 0 0 2px var(--accent-gold)}.tv-channel-strip{display:flex;align-items:center;gap:12px;height:24px;padding:0 9px;color:#66655e;font-size:clamp(9px,1.35cqh,11px);letter-spacing:.02em;text-transform:uppercase}.tv-channel-strip *,.tv-intro *,.tv-location *,.tv-copyright{font-family:TV Mono,Courier New,monospace;font-weight:400}.tv-channel-strip a{flex:1;text-decoration:none}.tv-channel-strip a:hover,.tv-playback:hover{color:var(--accent-gold-text)}.tv-playback{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;padding:6px;border:0;background:transparent;color:inherit}.tv-playback svg{width:13px;height:13px;fill:currentColor}.tv-intro{position:absolute;left:calc(100% + var(--tv-note-gap));bottom:32px;width:240px;color:#55544e;font-size:var(--tv-caption-font-size);line-height:1.4}.tv-intro p{margin:0}.tv-location{position:absolute;right:calc(100% + var(--tv-note-gap));bottom:calc(32px + 1.4em);width:max-content;display:grid;gap:0;color:#55544e;font-size:var(--tv-caption-font-size);line-height:1.4;white-space:nowrap}.tv-copyright{position:absolute;right:6%;bottom:3%;color:#77766e;font-size:9px}.page-container--home>nav{background:transparent}@keyframes tv-reveal{0%{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}@keyframes tv-retune{0%{transform:translate(-3px,1px);opacity:.5}20%{transform:translate(2px,-1px);opacity:.8}50%{transform:translate(-1px);opacity:.95}to{transform:none;opacity:1}}@keyframes tv-retune-static{0%{opacity:.6;transform:translate(-2%)}25%{opacity:.3;transform:translate(2%)}55%{opacity:.1;transform:translate(-1%)}to{opacity:0;transform:none}}@media(max-width:1000px){.tv-intro{width:min(200px,calc((100vw - var(--tv-width)) / 2 - var(--tv-note-gap) - 20px))}}@media(min-width:661px)and (max-width:1000px)and (min-height:601px){.tv-calligraphy{top:-20%}}@media(max-width:660px)and (min-height:500px){.tv-composition{--tv-width: min(56vw, 37cqh)}.tv-name{top:calc(max(82px,11cqh) + var(--tv-header-spacing));width:clamp(145px,min(47.5vw,34cqh),226px)}.tv-stage{left:50%;top:calc(38% + var(--tv-header-spacing));transform:translate(-50%)}.tv-intro{position:static;width:100%;margin-top:18px;text-align:center;font-size:clamp(10px,1.6cqh,13px)}.tv-location{position:static;width:100%;margin-top:10px;text-align:center;font-size:clamp(8px,2.3vw,10px);gap:3px}.tv-calligraphy{top:32%;height:38%}.tv-calligraphy--left{right:calc(100% + 8px)}.tv-calligraphy--right{left:calc(100% + 8px)}.tv-copyright{bottom:4%;font-size:8px}}@media(max-width:660px)and (min-height:501px)and (max-height:600px){.tv-name{width:145px}.tv-stage{top:calc(42% + var(--tv-header-spacing))}}@media(max-height:600px)and (min-width:661px),(max-height:500px){.tv-composition{--tv-width: min(36vw, 58cqh)}.tv-name{left:27%;top:26%;width:52cqh}.tv-stage{left:67%;top:25%;transform:translate(-50%)}.tv-intro{position:static;width:100%;margin-top:5px;font-size:9px;text-align:center}.tv-location{right:auto;left:0;top:calc(100% + 12px);bottom:auto;font-size:9px}.tv-calligraphy{top:12%;height:44%}.tv-calligraphy--left{right:calc(100% + 10px)}.tv-calligraphy--right{left:calc(100% + 10px)}.tv-copyright{bottom:5%}}@media(prefers-reduced-motion:reduce){.tv-page *,.tv-page *:before,.tv-page *:after{animation:none!important}.tv-channel-static{display:none}}.edu-part{display:flex;width:70%}.intern-part{display:flex;width:30%}.time{font-size:14px;line-height:24px;font-weight:600;color:#00000083}li{margin-left:-10px}#edu-container{background-color:#fff}.edu-logo,.edu-box{height:80px}.edu-logobox{width:90px;float:left;margin-right:15px;visibility:visible;opacity:.9;display:block;filter:grayscale(.8);transition:.2s}.edu-logobox:hover{opacity:1;transition:.2s;filter:grayscale(.2)}#news-container{background-color:var(--background-light)}.scrollable-content{max-height:200px;overflow-y:auto}.projects-part{width:100%;min-width:0}.projects-part .title{margin-top:0}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.portfolio-grid>.filter-empty-state{grid-column:1 / -1}.projects-item{min-width:0;width:100%;aspect-ratio:13 / 9;position:relative;overflow:hidden;border-radius:5%;z-index:102}.projects-item>a{text-decoration:none}.each-container .projects-item>a:hover{background:transparent}.projects-item:focus-within{outline:2px solid var(--accent-gold);outline-offset:6px}.project-cover{position:relative;width:100%;height:100%;overflow:hidden;transition:transform .2s ease}.project-cover-space{position:absolute;inset:0;display:grid;grid-template:minmax(0,1fr) / minmax(0,1fr);place-items:center}.project-cover-window{position:relative;overflow:hidden}.project-cover-window img{display:block;position:absolute;max-width:none;margin:0;border-radius:0}.project-caption{position:absolute;bottom:0;width:100%;z-index:1;background-color:#00000080}.project-caption p{margin:8px 5%;color:#fff;line-height:1.35}.project-caption b{color:#fff}.project-caption .description{font-size:12px}.projects-item:hover .project-cover{transform:scale(1.1);transition:transform .5s ease}@media(max-width:660px){.portfolio-grid{grid-template-columns:minmax(0,1fr)}}.update{margin-bottom:12px}.break{flex-basis:100%;height:0;clear:both}.category{display:block;margin:20px 0;font-weight:600}.typewriter{padding:0 0 20px;opacity:.5;font-family:Intuitive Free,Georgia,serif;font-weight:400;font-style:normal;font-synthesis:none}.typewriter *{font-family:inherit;font-weight:inherit;font-style:inherit}.smallyear{color:#fff;font-size:12px;line-height:0px}@-webkit-keyframes SHOW-BOX{0%{opacity:0}to{opacity:1}}@-moz-keyframes SHOW-BOX{0%{opacity:0}to{opacity:1}}@-o-keyframes SHOW-BOX{0%{opacity:0}to{opacity:1}}@keyframes SHOW-BOX{0%{opacity:0}to{opacity:1}}#business-box{-webkit-animation:SHOW-BOX 1s ease;-moz-animation:SHOW-BOX 1s ease;-o-animation:SHOW-BOX 1s ease;animation:SHOW-BOX 1s ease;display:block}#business-category{cursor:pointer}.tooltip{display:inline-block;position:relative;border-bottom:1px dotted #666;text-align:left}.tooltip .top{width:200px;top:-20px;left:50%;transform:translate(-30%,-100%);padding:10px;background-color:var(--accent-gold-soft);font-weight:400;font-size:14px;border-radius:8px;position:absolute;z-index:99999999;box-sizing:border-box;display:none}.tooltip:hover .top{display:block}.tooltip .top i{position:absolute;top:100%;left:30%;margin-left:-15px;width:30px;height:15px;overflow:hidden}.tooltip .top i:after{content:"";position:absolute;width:15px;height:15px;left:50%;transform:translate(-50%,-50%) rotate(45deg);background-color:var(--accent-gold-soft)}.conference-column{flex:0 0 10%;padding-right:20px;text-align:left}.conference-labels{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;vertical-align:baseline}.short-conference-name{background-color:var(--accent-gold-soft);color:var(--accent-gold-text);padding:2px 5px;border-radius:4px}.conference{font-size:14px;font-weight:600}.authors,.conference-details{font-size:14px;font-weight:600;color:#00000083}.abstract-text{font-size:14px;line-height:1.65}.equal-contribution-mark{color:inherit;font-size:.75em;line-height:0}.publication-date{color:#777;font-size:12px}.publication-status{color:#555;font-weight:600}h2{font-size:1em}.pdf-link:hover{text-decoration:underline}.research-part{width:100%;min-width:0}.each-research{display:grid;grid-template-columns:30% minmax(0,1fr);align-items:start;gap:24px}.each-research+.each-research{margin-top:32px}.each-research .left{position:relative;box-sizing:border-box;width:100%;aspect-ratio:3 / 2;background:#fff;border:1px solid #e8e8e8;border-radius:12px;overflow:hidden}.each-research .right{min-width:0;align-self:stretch;display:flex;flex-direction:column;gap:6px}.each-research .right h2{margin:0;line-height:1.25}.each-research .authors,.each-research .conference-details,.each-research .publication-date{margin:0;line-height:1.35}.each-research .button-container{margin-top:auto}.each-research .left img{position:absolute;inset:8px;width:calc(100% - 16px);height:calc(100% - 16px);object-fit:contain;border-radius:0;display:block}.button-container{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.custom-button{display:inline-flex;font-size:14px;font-weight:600;color:var(--accent-gold-text);align-items:center;justify-content:center;padding:2px 10px;border-radius:4px;line-height:1.4;background-color:var(--accent-gold-soft);text-decoration:none;transition:background-color .3s ease}.custom-button:hover{background-color:var(--accent-gold-hover);color:var(--accent-gold-text)}.icon{margin-right:8px;font-size:18px}.paper-award{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:4px;background:var(--accent-gold-soft);color:var(--accent-gold-text);font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap}.paper-award-icon{color:inherit}.paper-award-icon:before{content:""}.abs-button{background:transparent!important;border:none;box-shadow:none;color:#00000080;font-weight:500;padding:5px 6px}.abs-button:hover{background:transparent;color:var(--accent-gold-text);text-decoration:underline}.abs-button[aria-expanded=true]{color:var(--accent-gold-text)}@media(max-width:768px){.each-research{grid-template-columns:minmax(0,1fr);gap:20px}}div.page-container,body{margin:0}:root{--title-font: "Lato", sans-serif;--content-font: "Open Sans", sans-serif;--background-light: rgb(250, 250, 250)}*{font-family:var(--content-font)}.design-main-container{background-color:#80808000;height:100%}.design-container{padding:0% 25% 5%}.design-container-drawing{padding:5% 25% 20%}.design-container-bubble{padding:0% 18% 5%;background-color:#000;color:#fff}.design-name{font-weight:900;font-size:xx-large;width:100%;line-height:200%}.design-header-img{width:100%}.design-process-img{width:100%;border-radius:0%}.design-header-div{width:50%;display:block;margin:5% 0% 5% 25%}.design-header-div-pebble{width:100%;display:block;margin:5% 0%}.design-header-img-pebble{width:100%;border-radius:0%}.design-header-img-tama{width:100%;border-radius:0%;width:49.6%;padding:.2%}.design-sec-title{font-weight:900;margin-top:50px;font-size:x-large}.design-process-text{margin-bottom:30px}.design-process-text p{margin-top:30px}.design-header-sec{padding:5% 25%;background-color:#0000000a}.design-title-tag{font-weight:600;font-size:medium}.design-process-hor{border-radius:0%;width:50%;display:block}.design-process-ver{border-radius:0%;height:380px;width:auto}.two-image,.two-image-ver{display:flex}.backtohome{position:fixed;top:0;left:0;margin:20px;padding:6px 10px;font-size:12px;line-height:1.4;background-color:#ededed;color:#555;border-radius:4px;opacity:1;transition:.2s;visibility:visible}.backtohome:hover,.backtohome:focus-visible{background-color:#dedede;color:#333}.backtohome:focus-visible,.portfolio-end-link:focus-visible{outline:2px solid #777;outline-offset:4px}.loader-container{width:100%;height:100vh;display:flex;justify-content:center;align-items:center;position:fixed;background:var(--accent-gold-glow);z-index:1}.lds-ripple{display:inline-block;position:relative;width:80px;height:80px}.lds-ripple div{position:absolute;border:4px solid var(--accent-gold);opacity:1;border-radius:50%;animation:lds-ripple 1s cubic-bezier(0,.2,.8,1) infinite}.lds-ripple div:nth-child(2){animation-delay:-.5s}.bubble-video{margin-top:80px;padding-left:10%;padding-right:10%;height:450px}@keyframes lds-ripple{0%{top:36px;left:36px;width:0;height:0;opacity:0}4.9%{top:36px;left:36px;width:0;height:0;opacity:0}5%{top:36px;left:36px;width:0;height:0;opacity:1}to{top:0;left:0;width:72px;height:72px;opacity:0}}@media(max-width:820px){.design-container{padding:0% 8% 5%}.design-container-drawing{padding:5% 8% 20%}.design-header-sec{padding:5% 8%}.two-image{display:block}.design-process-hor{width:100%}.design-process-ver{height:auto;width:100%}.backtohome{visibility:hidden}.design-header-div{width:80%;margin:5% 0% 5% 10%}}.portfolio-detail .design-name{margin:0}.portfolio-detail .design-description{line-height:1.7}.portfolio-project-meta{display:grid;gap:8px;line-height:1.6}.portfolio-project-logo{display:block;width:64px;height:auto;margin-bottom:24px}.portfolio-award-banner{display:block;width:min(100%,480px);height:auto;margin:24px 0;mix-blend-mode:multiply}.portfolio-recognition blockquote{margin:24px 0;padding-left:20px;border-left:2px solid #d5d5d5;line-height:1.7}.portfolio-recognition blockquote p{margin:0}.portfolio-award-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:32px 0 48px;padding:0;list-style:none}.portfolio-award-links a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid #e5e5e5;color:var(--accent-gold-text);font-size:14px;line-height:1.6;text-underline-offset:4px}.portfolio-award-links li{margin:0}.portfolio-award-links a:focus-visible{outline:2px solid var(--accent-gold);outline-offset:4px}.portfolio-website-link{display:inline-block;color:var(--accent-gold-text);margin-top:12px;text-underline-offset:4px}.portfolio-project-meta span{font:inherit;color:inherit}.portfolio-publication{padding:24px 0;border-top:1px solid #dedede;border-bottom:1px solid #dedede}.portfolio-publication+.portfolio-publication{border-top:0}.portfolio-publication h3{margin:14px 0 10px;font-size:18px;line-height:1.5;font-weight:600;color:#303030}.portfolio-publication p{margin:8px 0;line-height:1.6}.portfolio-publication-venue{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:13px}.portfolio-publication-proceedings{font-size:14px;color:#666}.portfolio-publication .button-container{margin-top:20px}.portfolio-publication .custom-button{min-height:36px;gap:6px}.portfolio-publications-link{padding:8px 0;font-size:14px;color:var(--accent-gold-text)}.portfolio-image-hint{font-size:12px;line-height:1.5;margin-bottom:28px}.portfolio-project-figure{margin:0 0 32px}.portfolio-project-figure a{display:block;cursor:zoom-in}.portfolio-project-figure img{display:block;height:auto}.portfolio-project-figure figcaption{margin-top:10px;font-size:12px;line-height:1.5}.portfolio-project-figure figcaption p{margin:6px 0 0;font-size:inherit;line-height:inherit}.portfolio-end-link{display:inline-block;color:#555;margin:16px 0;text-underline-offset:4px}.portfolio-end-link:hover,.portfolio-end-link:focus-visible{color:#333}@font-face{font-family:FontAwesome;src:url(/fonts/fontawesome-webfont.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}.fa{display:inline-block;font: 14px/1 FontAwesome;text-rendering:auto;-webkit-font-smoothing:antialiased}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-google:before{content:""}.fa-linkedin:before{content:""}.fa-instagram:before{content:""}.fa-github:before{content:""}.social-media>span{margin-right:10px}nav{box-sizing:border-box;height:80px}.navigation{height:70px}.page-container{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}.page-container>.body-part{flex:1;display:flex;flex-direction:column}.page-container>.body-part>.each-container{flex:1}.site-identity{position:fixed;top:12px;left:4%;z-index:202;display:flex;align-items:center;min-height:44px;text-decoration:none}.site-identity img{display:block;width:72px;height:auto;border-radius:0}button{cursor:pointer}a:focus-visible,button:focus-visible,.tooltip:focus-visible{outline:2px solid var(--accent-gold);outline-offset:4px}nav a:focus-visible,nav button:focus-visible{outline-color:var(--accent-gold)}.projects-item>a{display:block;height:100%}.mobile-menu-toggle{display:none;font-family:var(--navigation-font);font-weight:400;font-synthesis:none}.tooltip:focus .top{display:block}.contact-email{color:inherit;font-weight:inherit;text-decoration:none}.backtohome{left:auto;right:calc(var(--record-player-inset) + var(--record-player-size) + 16px);margin-right:0;z-index:201;text-decoration:none;font-weight:400}.not-found{padding:15%}.reveal-fade{animation:reveal-fade 1s ease both}.reveal-bottom{animation-name:reveal-bottom}@keyframes reveal-fade{0%{opacity:0}to{opacity:1}}@keyframes reveal-bottom{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(max-width:820px){.profile-container{width:auto}.profile-img{max-width:100%}.right,.self-intro,.about-part{min-width:0}.edu-box{height:auto;min-height:80px}.backtohome{visibility:visible;position:sticky;top:10px;display:table;margin:20px calc(var(--record-player-inset) + var(--record-player-size) + 16px) 20px auto}.design-container-bubble{padding-left:8%;padding-right:8%}.two-image-ver{flex-wrap:wrap}.design-process-ver{max-width:100%}}@media(max-width:660px){nav{padding-left:8%;padding-right:8%}.navigation{width:100%}.site-identity{left:8%}.menu{display:none}.mobile-menu-toggle{display:block;float:right;margin-top:7px;margin-right:calc(var(--record-player-size) + 16px);border:0;min-height:44px;padding:5px 0 5px 15px;background:transparent;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:gray}.menu.menu-open{display:flex;flex-direction:column;gap:0;position:absolute;top:70px;left:0;right:0;margin:0;padding:11px 8%;background:#fff;border-bottom:1px solid #eee;box-shadow:0 10px 20px #00000006}.menu.menu-open a{margin:0;width:100%;justify-content:flex-start}}@media(max-width:450px){.button-container{flex-wrap:wrap}.contact-email{overflow-wrap:anywhere}.footer-container{height:auto;min-height:50px;box-sizing:border-box;padding:12px 8%;line-height:1.8}.bubble-video{height:auto;aspect-ratio:16 / 9;padding:0}.design-name{line-height:1.5;margin-bottom:16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.world-map{--map-education-color: #111;--map-work-color: var(--accent-gold);--map-work-text: var(--accent-gold-text);--map-visited-color: color-mix(in srgb, var(--accent-gold) 30%, white);margin:48px 0 0;width:100%}.world-map-canvas{position:relative;overflow:hidden}.world-map-svg{display:block;width:100%;aspect-ratio:1000 / 510;overflow:hidden;touch-action:pan-y}.world-map-svg.is-zoomed{cursor:grab}.world-map-svg.is-zoomed:active{cursor:grabbing}.world-map-land path{fill:var(--map-land-color, #ededed);stroke:#fff;stroke-width:.55;stroke-linejoin:round}.world-map-land path.is-visited{fill:var(--map-visited-color)}.world-map-marker{--city-color: var(--map-education-color);cursor:pointer;outline:none}.world-map-marker[data-category=work]{--city-color: var(--map-work-color)}.world-map-marker[data-category=mixed]{--city-color: var(--mixed-marker-fill)}.world-map-hit{fill:transparent}.world-map-dot{fill:var(--city-color);stroke:#fff;stroke-width:1.3}.world-map-glow{fill:var(--city-color);opacity:.2;animation:city-glow 3s ease-in-out infinite alternate;pointer-events:none}.world-map-marker.is-active .world-map-dot,.world-map-marker:focus-visible .world-map-dot{r:6}.world-map-marker:focus-visible .world-map-glow{stroke:var(--accent-gold);stroke-width:1}.world-map-label{pointer-events:none}.world-map-label rect{fill:#fff;fill-opacity:.98;stroke:#e8e8e8;stroke-width:1}.world-map-label text{fill:var(--map-education-color);font-size:12px;font-family:var(--title-font)}.world-map-label .world-map-detail-work{fill:var(--map-work-text)}.world-map-label .world-map-label-city{fill:#111;font-size:14px;font-weight:700}.world-map-photo-card{display:grid;gap:12px;align-items:center;height:100%;color:var(--map-education-color);font:12px/17px var(--title-font)}.world-map-label-photo{display:block;width:100%;height:100%;object-fit:contain;border-radius:2px}.world-map-photo-copy{min-width:0}.world-map-photo-copy p{margin:0;color:var(--map-education-color)}.world-map-photo-copy .world-map-label-city{margin-bottom:6px;line-height:20px}.world-map-photo-copy .world-map-detail-work{color:var(--map-work-text)}.world-map-experience-card{grid-template-columns:minmax(0,1fr);gap:8px}.world-map-experience-card>.world-map-label-city{margin:0;color:var(--map-education-color);line-height:20px}.world-map-experience-row{display:grid;grid-template-rows:minmax(0,1fr);gap:12px;align-items:center;min-height:0;height:100%}.world-map-experience-card .world-map-photo-copy p{margin:0}.world-map-controls{position:absolute;left:0;bottom:8px;display:flex;flex-direction:column;border:1px solid #e8e8e8;background:#fff}.world-map-controls button{width:44px;height:44px;padding:0;border:0;border-radius:0;background:transparent;color:#777;font:22px/1 sans-serif;cursor:pointer}.world-map-controls button+button{border-top:1px solid #eee}.world-map-controls button:disabled{color:#ccc;cursor:default}.world-map-controls button:hover:not(:disabled){color:var(--accent-gold-text)}.world-map-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;margin-top:14px;font-size:12px}.world-map-legend>span{display:inline-flex;align-items:center;gap:7px}.world-map-legend i{width:7px;height:7px;border-radius:50%}.world-map-key-education{background:var(--map-education-color)}.world-map-key-work{background:var(--map-work-color)}.world-map-legend .world-map-key-visited{width:13px;height:9px;border-radius:1px;background:var(--map-visited-color)}.world-map-cities{display:flex;justify-content:center;flex-wrap:wrap;column-gap:22px;row-gap:4px;margin-top:4px}.world-map-cities button{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:8px 6px;border:0;background:transparent;color:#777;font:inherit;font-size:12px;cursor:pointer}.world-map-cities button span{width:5px;height:5px;border-radius:50%;background:var(--map-education-color)}.world-map-cities button[data-category=work] span{background:var(--map-work-color)}.world-map-cities button[data-category=mixed] span{background:linear-gradient(to right,var(--map-education-color) 50%,var(--map-work-color) 50%)}.world-map-cities button:hover,.world-map-cities button[aria-pressed=true]{color:var(--accent-gold-text)}.world-map button:focus-visible{outline:1px solid var(--accent-gold);outline-offset:3px}@keyframes city-glow{0%{opacity:.1}to{opacity:.2}}@media(max-width:660px){.world-map{margin-top:36px}.world-map-controls{bottom:0}.world-map-controls button{font-size:19px}.world-map-canvas:has(.world-map-photo-card) .world-map-controls{position:static;flex-direction:row;width:max-content;margin:8px 0 0 auto}.world-map-canvas:has(.world-map-photo-card) .world-map-controls button+button{border-top:0;border-left:1px solid #eee}.world-map-cities{column-gap:18px;margin-top:4px}.world-map-legend{margin-top:18px}}@media(max-width:360px){.world-map-photo-card{font-size:11px;line-height:15px}.world-map-photo-card .world-map-photo-copy p{margin:0}.world-map-photo-card .world-map-photo-copy .world-map-label-city{margin-bottom:4px;font-size:13px;line-height:18px}}@media(prefers-reduced-motion:reduce){.world-map-glow{animation:none}}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:300;src:url(/assets/cormorant-garamond-latin-300-italic-qkwBXYHn.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-300-italic-DRnsRYID.woff) format("woff")}.page-container--cv{isolation:isolate;background:#fff}.page-container--cv nav{background:#fff}.page-container--cv .menu.menu-open{background:#fff}.cv-atmosphere{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;-webkit-user-select:none;user-select:none;background:#fff}.cv-page .world-map{--map-land-color: #ececec}.cv-page .cv-section h2{border-bottom-color:#eee}.cv-atmosphere-letters{position:absolute;inset:0}.cv-air-letter{position:absolute;left:-40px;top:var(--air-y);display:block;color:#54514b;opacity:var(--air-opacity);animation:cv-air-travel var(--air-duration) var(--air-delay) linear infinite;will-change:transform}.cv-air-letter:nth-child(n+37){display:none}.cv-air-glyph{display:block;color:inherit;font-family:Cormorant Garamond,Georgia,serif;font-size:var(--air-size);font-weight:300;font-style:italic;line-height:1;animation:cv-air-flutter var(--air-flutter-duration) var(--air-delay) ease-in-out infinite alternate}.cv-atmosphere[data-paused=true] .cv-air-letter,.cv-atmosphere[data-paused=true] .cv-air-glyph{animation-play-state:paused}@keyframes cv-air-travel{0%{transform:translateZ(0)}30%{transform:translate3d(calc(30vw + 24px),calc(var(--air-lift) * .6),0)}65%{transform:translate3d(calc(65vw + 52px),calc(var(--air-lift) * -.3),0)}to{transform:translate3d(calc(100vw + 80px),var(--air-lift),0)}}@keyframes cv-air-flutter{0%{transform:translateY(0) rotate(var(--air-tilt));opacity:.55}45%{transform:translateY(calc(var(--air-sway) * -.7)) rotate(calc(var(--air-tilt) + var(--air-turn) * .35));opacity:1}to{transform:translateY(var(--air-sway)) rotate(calc(var(--air-tilt) + var(--air-turn)));opacity:.45}}.cv-atmosphere-toggle{position:fixed;right:16px;bottom:16px;z-index:30;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid rgb(84 81 75 / 12%);border-radius:50%;background:#ffffffe0;color:#77736c}.cv-atmosphere-toggle svg{color:inherit}.cv-atmosphere-toggle:hover,.cv-atmosphere-toggle:focus-visible{color:var(--accent-gold-text);border-color:var(--accent-gold);background:var(--accent-gold-soft)}@media(min-width:1600px){.cv-air-letter:nth-child(n+37){display:block}}@media(max-width:660px){.cv-air-letter:nth-child(n+23){display:none}.cv-atmosphere-toggle{right:4px;bottom:10px;border-color:transparent;background:transparent}.cv-atmosphere-toggle svg{margin-left:12px}}@media(prefers-reduced-motion:reduce){.cv-air-letter{left:var(--air-rest-x);animation:none;will-change:auto}.cv-air-glyph{animation:none;transform:rotate(var(--air-tilt));opacity:.6}.cv-atmosphere-toggle{display:none}}@media print{.cv-atmosphere,.cv-atmosphere-toggle{display:none}.page-container--cv{background:#fff}}.cv-content{--cv-logo-size: 40px;width:100%;min-width:0;line-height:1.45}.cv-title.title{margin:0 0 24px;min-height:1.3em;font-family:Intuitive Free,Georgia,serif;font-size:clamp(32px,4vw,44px);font-weight:400;font-synthesis:none;line-height:1.3}.cv-title .typewriter{padding:0;opacity:1}.cv-title .typewriter,.cv-title .writertext,.cv-title .typed-cursor{font-family:inherit;color:inherit}.cv-title .typewriter .typed-cursor{color:var(--accent-gold-text);animation:cv-greeting-cursor .7s step-end infinite}@keyframes cv-greeting-cursor{0%,45%{opacity:1}50%,to{opacity:0}}.cv-intro{display:grid;grid-template-columns:minmax(0,.34fr) minmax(0,1fr);gap:28px;align-items:stretch;margin-bottom:28px}.cv-portrait-collage{--cv-portrait-scale: .82;position:relative;isolation:isolate;min-width:0;width:calc(100% * var(--cv-portrait-scale));height:calc(100% * var(--cv-portrait-scale));place-self:center}.cv-portrait-collage img{image-rendering:pixelated}.cv-portrait{container-type:size;position:absolute;inset:0;overflow:hidden}.cv-portrait-art{position:absolute;top:20%;left:50%;display:block;width:max(100cqw,calc(100cqh * 1126 / 1397));height:auto;aspect-ratio:1126 / 1397;transform:translate(-50%,-20%);image-rendering:pixelated}.cv-earring{transform-box:view-box;animation:cv-earring-breeze 4.8s ease-in-out infinite;pointer-events:none}.cv-earring--left{transform-origin:368px 464px;animation-delay:-1.1s}.cv-earring--right{transform-origin:755px 550px;animation-duration:5.6s;animation-delay:-3.2s}@keyframes cv-earring-breeze{0%,to{transform:rotate(-7deg) scaleX(.92)}25%{transform:rotate(9deg) scaleX(.78)}50%{transform:rotate(-4deg) scaleX(1)}75%{transform:rotate(6deg) scaleX(.86)}}.cv-page:has(.cv-atmosphere[data-paused=true]) .cv-earring{animation-play-state:paused}@media(prefers-reduced-motion:reduce){.cv-earring{animation:none}}.cv-portrait-landmark{position:absolute;z-index:1;left:calc(-60px * var(--cv-portrait-scale));bottom:calc(-12px * var(--cv-portrait-scale));display:block;width:auto;height:calc(100% + 24px * var(--cv-portrait-scale));max-height:calc(430px * var(--cv-portrait-scale));max-width:none;object-fit:contain;transform:rotate(-6deg);transform-origin:50% 100%;pointer-events:none;-webkit-user-select:none;user-select:none}.cv-intro-text{min-width:0}.cv-intro .cv-contact{display:flex;flex-wrap:wrap;align-items:center;gap:6px 20px;margin:0 0 18px;font-size:14px;line-height:1.5}.cv-contact a{color:#333;overflow-wrap:anywhere}.cv-contact a:hover{background:transparent;color:var(--accent-gold-text)}.cv-contact a:focus-visible{outline-color:var(--accent-gold)}.cv-contact .cv-linkedin{display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;font-size:20px;line-height:1;text-decoration:none}.cv-intro .cv-summary{margin:0;color:#444;font-size:16px;line-height:1.7}.cv-section+.cv-section{margin-top:28px}.cv-journey .world-map{margin-top:0}.cv-section h2{margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid #eee;font-family:var(--title-font);font-size:22px;font-weight:700;color:#333;line-height:1.4}.cv-education-entry+.cv-education-entry{margin-top:16px}.cv-education-entry,.cv-career-entry{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:16px;align-items:center}.cv-school-logos{display:flex;flex-direction:column;align-items:center;gap:6px}.cv-school-logo,.cv-career-logo{display:block;width:var(--cv-logo-size);height:var(--cv-logo-size);object-fit:contain;border-radius:0}.cv-school-logo--wordmark{height:auto;max-height:var(--cv-logo-size)}.cv-education-details,.cv-career-details{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 20px;min-width:0}.cv-education-details h3,.cv-career-role{grid-column:1;grid-row:1}.cv-education-details>p,.cv-education-details>ul,.cv-career-details>p{grid-column:1 / -1}.cv-education-entry h3,.cv-career-role{margin:0;font-size:16px;font-weight:600;color:#111}.cv-content p{margin:0 0 4px}.cv-content strong{font-weight:600;color:#444}.cv-content ul{margin:4px 0 0;padding-left:0;list-style:none}.cv-education-details p,.cv-education-details ul{margin:0}.cv-education-details>.cv-education-dates,.cv-career-details>.cv-career-dates{grid-column:2;grid-row:1;justify-self:end;align-self:baseline;margin:2px 0 0;color:#777;font-size:13px;font-weight:400;font-variant-numeric:tabular-nums;line-height:1.5;white-space:nowrap;text-align:right}.cv-content li{margin-left:0}.cv-content li+li{margin-top:4px}.cv-career-entry{min-height:44px}.cv-careers .cv-career-entry+.cv-career-entry{margin-top:16px}.cv-career-logo-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.cv-career-logo-container--affiliated{gap:4px}.cv-career-logo-container--affiliated>.cv-career-logo{height:auto;max-height:var(--cv-logo-size)}.cv-career-logo--wordmark{height:auto;max-height:var(--cv-logo-size)}.cv-affiliation-logo-link{display:block}.cv-affiliation-link{color:inherit;text-decoration:underline;text-decoration-color:#ccc;text-underline-offset:3px}.cv-affiliation-link:hover,.cv-affiliation-link:focus-visible{color:var(--accent-gold-text);text-decoration-color:currentColor;background:transparent}.cv-affiliation-logo-link:hover{background:transparent}.cv-affiliation-link:focus-visible,.cv-affiliation-logo-link:focus-visible{outline:2px solid var(--accent-gold);outline-offset:4px}.cv-career-entry p{margin:0}.cv-career-details>.cv-career-certification{margin-top:4px;color:#555;font-size:14px;line-height:1.5}@media(max-width:660px){.cv-content{--cv-logo-size: 32px}.cv-intro{grid-template-columns:minmax(0,1fr);gap:20px}.cv-portrait-collage{width:min(calc(200px * var(--cv-portrait-scale)),calc(100% - 48px * var(--cv-portrait-scale)));height:auto;margin-left:calc(48px * var(--cv-portrait-scale));justify-self:start;aspect-ratio:3 / 4}.cv-education-entry,.cv-career-entry{grid-template-columns:44px minmax(0,1fr);column-gap:12px}.cv-education-details,.cv-career-details{grid-template-columns:minmax(0,1fr)}.cv-education-details>.cv-education-dates,.cv-career-details>.cv-career-dates{grid-column:1;grid-row:auto;margin-top:3px}}@media(max-width:450px){.cv-page{padding-top:28px;padding-bottom:40px}.cv-section h2{font-size:20px}}.home-cats{position:absolute;inset:0;z-index:4;overflow:clip;clip-path:inset(var(--cat-area-top, 88px) 0 0);pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;transition:opacity .4s ease}.home-cats[data-ready=true]{opacity:1}.home-cat{position:absolute;left:0;top:0;width:0;height:0;will-change:transform}.home-cat__art{appearance:none;border:0;padding:0;border-radius:0;background-color:transparent;pointer-events:auto;touch-action:manipulation;display:block;position:absolute;background-image:url(/assets/cats/yike-cats-atlas.png);background-repeat:no-repeat;transform-origin:center bottom;filter:grayscale(1);mix-blend-mode:multiply}.home-cat__art:focus-visible{outline:2px solid var(--accent-gold);outline-offset:5px}.home-cat__chime{position:absolute;width:36px;height:24px;left:-18px;bottom:25px;fill:none;stroke:var(--accent-gold);stroke-width:1.8;stroke-linecap:round;opacity:0;transition:opacity .18s ease}.home-cat[data-ringing=true] .home-cat__chime{opacity:1}.home-cat__walk{position:relative;display:none;width:100%;height:100%;overflow:visible}.home-cat__walk canvas,.home-cat__walk>svg{position:absolute;inset:0;width:100%;height:100%}.home-cat[data-walking=true] .home-cat__art{background-image:none}.home-cat[data-walking=true] .home-cat__walk{display:block}.home-cat[data-pose=grayLounge] .home-cat__art{clip-path:polygon(6% 0,100% 0,100% 100%,0 100%,0 62%,6% 62%)}.home-cat__bubble{position:absolute;left:0;transform:translate(-50%) rotate(-8deg);color:#4f4e49;font-family:TV Mono,monospace;font-size:clamp(10px,1vw,13px);letter-spacing:.12em;white-space:nowrap}.home-cat[data-introducing=true] .home-cat__bubble{visibility:hidden}.home-cat__introduction{position:absolute;box-sizing:border-box;padding:8px 11px;border:1px solid #a29e94;border-radius:12px 14px 11px 13px;background:#faf9f5;color:#45433e;font-family:TV Mono,monospace;font-size:11px;line-height:1.25;text-align:left;white-space:normal;opacity:0;visibility:hidden;transform:translate(-50%,4px);transition:opacity .28s ease,transform .28s ease,visibility .28s}.home-cat__introduction:after{content:"";position:absolute;left:clamp(15px,calc(50% + var(--tail-offset, 0px)),calc(100% - 15px));bottom:-4px;width:6px;height:6px;border-right:1px solid #a29e94;border-bottom:1px solid #a29e94;background:#faf9f5;transform:translate(-50%) rotate(45deg)}.home-cat[data-introducing=true] .home-cat__introduction{opacity:1;visibility:visible;transform:translate(-50%)}.home-cats__scuffle{position:absolute;top:0;left:0;overflow:visible;margin:-21px 0 0 -29px;fill:none;stroke:#55534f;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;opacity:0}.home-cats-description{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){.home-cats,.home-cat__introduction{transition:none}}.retro-paper-backdrop{position:absolute;z-index:-1;inset:0;overflow:hidden;pointer-events:none;-webkit-user-select:none;user-select:none}.retro-paper-texture{position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,#746e6233 .6px,transparent .85px),repeating-linear-gradient(0deg,#6c685e0c 0 .5px,transparent .5px 4px);background-size:4px 4px,100% 4px;opacity:.65;-webkit-mask-image:radial-gradient(ellipse at 50% 42%,transparent 18%,#0008 48%,#000 80%);mask-image:radial-gradient(ellipse at 50% 42%,transparent 18%,#0008 48%,#000 80%)}@media(max-width:660px){.retro-paper-texture{opacity:.45}}.tv-cables{--cable-top-inset: clamp(90px, 13cqh, 112px);position:absolute;z-index:-1;inset:var(--cable-top-inset) 0 24px;opacity:.43;pointer-events:none;-webkit-user-select:none;user-select:none;stroke-linecap:round;stroke-linejoin:round}.tv-cables-drawing{display:block;width:100%;height:100%;overflow:visible}.tv-cables-drawing--mobile{display:none}.tv-cables path{vector-effect:non-scaling-stroke}.tv-cable-separation{stroke:#f8f8f6}.tv-cable-ink{stroke:#59574f}.tv-cable-plug{stroke:#4e4c45;stroke-width:1.3;fill:#f8f8f6}@media(max-width:660px)and (min-height:501px){.tv-cables{opacity:.37}.tv-cables-drawing--desktop{display:none}.tv-cables-drawing--mobile{display:block}}@media(max-height:500px){.tv-cables{--cable-top-inset: 80px;bottom:12px;opacity:.3}}.category-filter{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 32px}.category-filter-button{min-height:44px;border:0;border-radius:999px;padding:10px 22px;background:transparent;color:#484848;font-family:var(--title-font);font-size:16px;font-weight:700;line-height:1.4;transition:background-color .16s ease,color .16s ease}.category-filter-button:hover{background:var(--accent-gold-soft);color:var(--accent-gold-text)}.category-filter-button[aria-pressed=true]{background:var(--accent-gold-text);color:#fff}.category-filter.category-filter--secondary{gap:4px 24px;margin:-16px 0 28px;padding-bottom:8px;border-bottom:1px solid #ece7dd}.category-filter--secondary .category-filter-button{padding:8px 2px;border-bottom:2px solid transparent;border-radius:0;font-size:13px;font-weight:600}.category-filter--secondary .category-filter-button[aria-pressed=true]{background:transparent;border-bottom-color:var(--accent-gold);color:var(--accent-gold-text)}.filter-results-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.filter-empty-state{padding:32px 0;margin:0;color:#777;font-size:15px;line-height:1.6}@media(max-width:660px){.category-filter{gap:8px;margin-bottom:24px}.category-filter-button{padding:10px 15px;font-size:14px}}.making-section{margin-top:64px}.making-heading{margin-bottom:28px}.making-board{position:relative;isolation:isolate;border:1px solid #d8d3c9;background-color:#f4f2ec;background-image:radial-gradient(#8d847522 .6px,transparent .8px);background-size:5px 5px;box-shadow:inset 0 0 45px #b4aa9412,0 8px 18px #39332806}.making-board-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 28px;padding:12px 0 10px;border-bottom:1px solid #c8c1b666}.making-board-count{margin-left:auto;white-space:nowrap}.making-board-meta span{color:#797366;font-family:TV Mono,Courier New,monospace;font-size:10px;line-height:1.6;letter-spacing:.06em;text-transform:uppercase}.making-panel{position:relative;min-width:0;padding:18px 28px 20px}.making-panel>:not(.making-threads){animation:making-reveal .26s ease-out both}.making-threads{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--accent-gold);stroke-width:1.1;opacity:.55;pointer-events:none}.making-threads path{vector-effect:non-scaling-stroke}.making-pins{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;justify-items:center;gap:16px 24px;max-width:560px;margin:0 auto}.making-pin{--pin-tilt: -3deg;position:relative;min-width:0;width:min(100%,120px);transform:rotate(var(--pin-tilt))}.making-pin:nth-child(2){--pin-tilt: 2.5deg;margin-top:8px}.making-pin:nth-child(3){--pin-tilt: -1.5deg;margin-top:4px}.making-pin:nth-child(4){--pin-tilt: 1.5deg}.making-pin:nth-child(5){--pin-tilt: -3deg;margin-top:8px}.making-pin--wide{grid-column:span 2;width:min(100%,228px)}.making-pin-dot{content:"";position:absolute;z-index:1;width:9px;height:9px;top:-3px;left:calc(50% - 4px);border-radius:50%;background:var(--accent-gold);box-shadow:inset 1px 1px 1px #fff9,1px 3px 3px #39332855;pointer-events:none}.making-pin a,.each-container .making-pin a:hover{display:block;padding:6px 6px 0;background:#fffefa;color:#39352e;text-decoration:none;box-shadow:1px 3px 7px #39332826;transition:box-shadow .18s ease;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.making-pin a:focus-visible{outline:2px solid var(--accent-gold);outline-offset:4px}.making-pin--dragging a,.each-container .making-pin--dragging a:hover{cursor:grabbing;outline:1px solid var(--accent-gold);outline-offset:2px;box-shadow:4px 9px 16px #3933283d}@media(hover:hover){.making-pin a:hover{outline:1px solid var(--accent-gold);outline-offset:2px}}.making-pin img{display:block;width:100%;height:auto;border-radius:0}.making-pin-caption{position:relative;padding:8px 2px 10px}.making-pin-caption h3{margin:0 18px 5px 0;color:#3d3932;font-family:var(--title-font);font-size:13px;font-weight:600;line-height:1.3}.making-pin-caption p{margin:0;color:#787166;font-size:10.5px;line-height:1.45}.making-pin-number{position:absolute;top:10px;right:2px;color:#958c7b;font-family:TV Mono,Courier New,monospace;font-size:9px}@keyframes making-reveal{0%{opacity:0}to{opacity:1}}@media(max-width:1000px){.making-panel{padding:18px 22px 20px}.making-pins{gap:16px 20px}}@media(max-width:700px){.making-board-meta{margin:0 18px;gap:10px}.making-board-meta span{font-size:8px}.making-panel{padding:16px 18px 18px}.making-pins{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 14px}.making-pin{width:74%}.making-pin--wide{grid-column:auto;margin-top:10px}.making-pin:nth-child(5){grid-column:1 / -1;width:37%;justify-self:center;margin-top:0}.making-pin a,.each-container .making-pin a:hover{padding:6px 6px 0}.making-pin-caption{padding:8px 2px 10px}.making-pin-caption h3{margin-right:0;font-size:13px}.making-pin-caption p{font-size:10px}.making-pin-number{position:static;display:block;margin-bottom:3px}}@media(prefers-reduced-motion:reduce){.making-panel>:not(.making-threads){animation:none}.making-pin a{transition:none}}:root{--record-player-size: 68px;--record-player-inset: 4%}.record-player{position:fixed;z-index:203;top:12px;right:var(--record-player-inset);width:var(--record-player-size)}.record-player-toggle{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:0;border:0;border-radius:50%;background:transparent;-webkit-tap-highlight-color:transparent}.record-player-art{position:relative;display:block;width:100%;aspect-ratio:260 / 210;transition:transform .18s ease}.record-disc{position:absolute;top:2.38%;left:0;width:76.923%;height:auto;transform-origin:center;animation:record-spin 3s linear infinite;animation-play-state:paused}.record-tonearm-layer{position:absolute;inset:0;width:100%;height:100%}.record-tonearm{transform-origin:232px 35px;transition:transform .6s ease}.record-player[data-playing=true] .record-disc{animation-play-state:running}.record-player[data-playing=true] .record-tonearm{transform:rotate(28deg)}.record-player-toggle:hover .record-player-art{transform:scale(1.04)}.record-player-toggle:focus-visible{outline:2px solid var(--accent-gold);outline-offset:4px}.record-error{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@keyframes record-spin{to{transform:rotate(360deg)}}@media(max-width:660px){:root{--record-player-size: 58px;--record-player-inset: 8%}}@media(prefers-reduced-motion:reduce){.record-player-art,.record-tonearm{transition:none}.record-disc{animation:none}}
