:root{--paper:#f4f1ea;--ink:#171716;--ink-soft:#4e4d49;--muted:#85827c;--line:#d7d3ca;--placeholder:#e5e1d8;--placeholder-hover:#dcd7cd;--sans:Arial, Helvetica, "PingFang SC", "Microsoft YaHei", sans-serif;--display:Georgia, "Times New Roman", "Songti SC", "SimSun", serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;color:var(--ink);background:var(--paper);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-width:320px;margin:0}button,input,textarea,select{font:inherit}::selection{color:var(--paper);background:var(--ink)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.site-shell{width:min(100%,1440px);margin:0 auto;padding:0 3rem}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:7.2rem;animation:.65s both rise-in;display:flex}.profile-link{color:var(--ink);align-items:center;gap:.7rem;text-decoration:none;display:inline-flex}.profile-link img{object-fit:cover;object-position:center 25%;filter:grayscale();border-radius:50%;width:2.55rem;height:2.55rem;transition:filter .24s,transform .24s;display:block}.profile-link span{gap:.12rem;display:grid}.profile-link strong{letter-spacing:.02em;font-size:.78rem;font-weight:500}.profile-link small{color:var(--muted);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;font-size:.55rem}.profile-link i{color:var(--muted);margin-left:.15rem;font-size:.85rem;font-style:normal;transition:transform .24s,color .24s}.profile-link:hover img{filter:grayscale(0%);transform:scale(1.04)}.profile-link:hover i{color:var(--ink);transform:translate(.15rem,.15rem)}.profile-link:focus-visible{outline:2px solid var(--ink);outline-offset:.35rem}.wordmark{color:var(--ink);letter-spacing:-.04em;text-transform:uppercase;grid-template-columns:auto auto;gap:0 .35rem;font-size:.88rem;font-weight:600;line-height:.95;text-decoration:none;display:grid}.wordmark small{color:var(--muted);letter-spacing:.06em;grid-column:1/-1;margin-top:.45rem;font-size:.63rem;font-weight:400}.site-nav{gap:clamp(1rem,3vw,3.8rem);display:flex}.site-nav a,.site-footer a{color:var(--ink);letter-spacing:.02em;font-size:.77rem;text-decoration:none}.site-nav span{color:var(--muted);margin-left:.2rem;font-size:.67rem}.site-nav a:after,.site-footer a:after{content:"";background:currentColor;width:0;height:1px;margin-top:.35rem;transition:width .24s;display:block}.site-nav a:hover:after,.site-footer a:hover:after{width:100%}.hero{border-bottom:1px solid var(--line);grid-template-rows:auto 1fr;grid-template-columns:1fr auto;gap:2rem;min-height:clamp(22rem,46vh,35rem);padding:clamp(4.5rem,8vw,7.5rem) 0 2.5rem;display:grid}.eyebrow{color:var(--muted);font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.63rem}.hero h1,.closing h2{color:var(--ink);font-family:var(--display);letter-spacing:-.078em;grid-column:1/-1;align-self:end;margin:0;font-size:clamp(4rem,8.8vw,8.8rem);font-weight:400;line-height:.82;animation:.8s .11s both rise-in}.hero h1 em,.closing h2 em{font-weight:400}.hero-summary{max-width:23rem;color:var(--ink-soft);align-self:end;font-size:.78rem;line-height:1.65;animation:.65s .21s both rise-in}.hero-summary p{margin:0}.hero-summary p+p{color:var(--muted);margin-top:.3rem}.hero-summary .hero-intro{color:var(--ink-soft);margin-top:1rem}.collection-nav{border-bottom:1px solid var(--line);padding:clamp(3rem,5vw,5rem) 0 clamp(5rem,8vw,8rem)}.section-intro{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:clamp(2.5rem,4vw,4rem);display:flex}.section-intro h1{color:var(--ink);font-family:var(--display);letter-spacing:-.05em;margin:0;font-size:clamp(1.35rem,2.1vw,2.2rem);font-weight:400;line-height:.9}.section-intro>p{max-width:22rem;color:var(--ink-soft);font-family:var(--sans);margin:0 0 .12rem;font-size:1rem;font-weight:600;line-height:1.5}.collection-nav-grid{border:1px solid var(--line);background:var(--line);grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;animation:.7s .18s both rise-in;display:grid}.collection-link{background:var(--paper);min-width:0;min-height:clamp(14rem,21vw,19rem);color:var(--ink);flex-direction:column;padding:.75rem;text-decoration:none;display:flex;position:relative;overflow:hidden}.collection-link:focus-visible{outline:2px solid var(--ink);outline-offset:-2px;z-index:1}.collection-link-number{z-index:1;color:var(--muted);font-family:var(--mono);font-size:.6rem;position:relative}.collection-preview{background:var(--paper);place-items:center;display:grid;position:absolute;inset:2.5rem .75rem 3.85rem;overflow:hidden}.collection-preview img{object-fit:contain;object-position:center;opacity:0;grid-area:1/1;width:100%;height:100%;transition:opacity .36s,transform .52s cubic-bezier(.2,.65,.25,1);transform:scale(.86)}.collection-preview img.is-active{opacity:1;transform:scale(.84)}.collection-link:hover .collection-preview img.is-active{transform:scale(.87)}.collection-link--machines .collection-preview img,.collection-link--lifestyle .collection-preview img,.collection-link--adventure .collection-preview img{object-fit:contain;object-position:center;width:auto;max-width:76%;height:62%;transform:translateY(-10%)!important}.collection-link--machines:hover .collection-preview img.is-active,.collection-link--lifestyle:hover .collection-preview img.is-active,.collection-link--adventure:hover .collection-preview img.is-active{transform:translateY(-10%)!important}.collection-link-copy{z-index:1;background:var(--paper);flex-direction:column;gap:.25rem;margin-top:auto;padding-top:.7rem;display:flex;position:relative}.collection-link-copy strong{min-height:2.2em;font-family:var(--display);letter-spacing:-.04em;font-size:clamp(1rem,1.35vw,1.4rem);font-weight:400;line-height:.94}.collection-link-copy small{color:var(--muted);font-size:.58rem}.collection-link:hover .collection-preview{background:var(--placeholder-hover)}.archive{padding-top:clamp(5rem,9vw,9rem)}.collection-section{padding:0 0 clamp(6rem,11vw,11rem);scroll-margin-top:2rem}.collection-section+.collection-section{border-top:1px solid var(--line);padding-top:clamp(5rem,9vw,9rem)}.collection-header{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1rem 2rem;margin-bottom:clamp(2rem,4vw,3.5rem);display:grid}.collection-header .eyebrow{grid-column:1/-1}.collection-header h2{color:var(--ink);font-family:var(--display);letter-spacing:-.05em;margin:0;font-size:clamp(1.35rem,2.1vw,2.2rem);font-weight:400;line-height:.9}.collection-header h2 span{color:var(--muted);font-family:var(--sans);letter-spacing:.04em;margin-top:.45rem;font-size:.62rem;font-weight:400;display:block}.project-count{color:var(--muted);font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .2rem;font-size:.62rem}.series-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.2rem;display:grid}.series-grid--seasonal{grid-template-columns:repeat(3,minmax(0,1fr))}.series-grid--lifestyle,.series-grid--adventure{grid-template-columns:repeat(4,minmax(0,1fr))}.series-card{min-width:0}.series-card .placeholder-visual{aspect-ratio:.88;border:1px solid var(--line);transition:background-color .3s,transform .35s cubic-bezier(.2,.65,.25,1)}.series-card:nth-child(2n) .placeholder-shape--one{transform:rotate(15deg)}.series-card:nth-child(3n) .placeholder-shape--one{border-radius:50%}.series-card:hover .placeholder-visual{background:var(--placeholder-hover);transform:translateY(-.3rem)}.series-caption{padding-top:.8rem}.series-caption h3{color:var(--ink);margin:0;font-size:.88rem;font-weight:500}.series-caption p{color:var(--muted);margin:.25rem 0 0;font-size:.67rem;line-height:1.4}.resume{border-top:1px solid var(--line);padding:clamp(5.5rem,10vw,9rem) 0;scroll-margin-top:2rem}.resume-header{padding-bottom:clamp(2.5rem,4vw,4rem)}.resume-header h2{color:var(--ink);font-family:var(--display);letter-spacing:-.07em;margin:0;font-size:clamp(3rem,5.4vw,5.5rem);font-weight:400;line-height:.84}.resume-header h2 span{color:var(--muted);font-family:var(--sans);letter-spacing:.04em;vertical-align:top;font-size:.19em;font-weight:400}.resume-layout{grid-template-columns:minmax(15rem,19rem) minmax(0,1fr);align-items:start;gap:clamp(2.5rem,6vw,6rem);display:grid}.resume-sidebar{border-right:1px solid var(--line);padding-right:clamp(2rem,4vw,4.5rem)}.resume-portrait{aspect-ratio:3/4;background:var(--placeholder);border-radius:.3rem;width:100%;margin:0;overflow:hidden}.resume-portrait img{object-fit:cover;object-position:center 23%;filter:grayscale();width:100%;height:100%;display:block}.job-facts{gap:.5rem;margin-top:1.25rem;display:grid}.job-facts p{color:var(--ink-soft);letter-spacing:.01em;margin:0;font-size:.98rem;font-weight:500;line-height:1.55}.sidebar-section{border-top:1px solid var(--line);margin-top:2.6rem;padding-top:2rem}.sidebar-section h4{color:var(--ink);font-family:var(--display);letter-spacing:-.03em;margin:0;font-size:1.25rem;font-weight:500}.education-detail{color:var(--ink-soft);margin:.8rem 0 0;font-size:.96rem;line-height:1.72}.education-detail span{color:var(--muted);font-family:var(--mono);font-size:.76rem}.resume-main-content{min-width:0}.resume-profile{border-bottom:1px solid var(--line);grid-template-columns:minmax(13rem,.8fr) minmax(0,1.2fr);gap:2.5rem;padding-bottom:3rem;display:grid}.profile-column h3{color:var(--ink);font-family:var(--display);letter-spacing:-.04em;margin:0 0 1rem;font-size:1.45rem;font-weight:500}.profile-column p{color:var(--ink-soft);margin:.45rem 0 0;font-size:.98rem;line-height:1.55}.profile-column a{color:inherit;text-decoration:none}.profile-skill-list{color:var(--ink-soft);grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem 1.25rem;margin:0;padding:0;font-size:.98rem;line-height:1.55;list-style:none;display:grid}.profile-skill-list li:last-child{grid-column:1/-1;margin-top:.25rem}.profile-skill-list span{color:var(--muted);font-size:.86em}.resume-block{padding-top:3rem}.resume-block h3{color:var(--ink);font-family:var(--display);letter-spacing:-.05em;margin:0 0 1.55rem;font-size:clamp(1.9rem,2.6vw,2.7rem);font-weight:400}.experience+.experience{border-top:1px solid var(--line);margin-top:2.4rem;padding-top:2.4rem}.experience header{grid-template-columns:minmax(0,1.45fr) minmax(8rem,.85fr) auto;align-items:baseline;gap:1rem 1.5rem;display:grid}.experience header p{color:var(--ink);margin:0;font-size:1rem;font-weight:500;line-height:1.5}.experience header p:last-child{color:var(--ink-soft);white-space:nowrap}.experience ol{color:var(--ink-soft);margin:1rem 0 0;padding-left:1.4rem;font-size:.98rem;line-height:1.72}.experience li{padding-left:.4rem}.experience li::marker{color:var(--muted);font-family:var(--mono);font-size:.9em}.site-footer{border-top:1px solid var(--line);color:var(--ink-soft);justify-content:space-between;gap:2rem;padding:1.35rem 0 2rem;font-size:.73rem;line-height:1.6;display:flex}.site-footer p{margin:0}.site-footer p span{color:var(--muted)}.site-footer a{white-space:nowrap;align-self:end}.site-footer a span{margin-left:.3rem}.profile-link strong{font-size:.98rem}.profile-link small{font-size:.75rem}.profile-column h3,.sidebar-section h4,.resume-block h3{color:var(--ink);font-family:var(--display);letter-spacing:-.05em;font-size:clamp(1.9rem,2.6vw,2.7rem);font-weight:400;line-height:normal}.profile-column h3,.sidebar-section h4{margin:0 0 1.55rem}.education-detail,.education-detail span{color:var(--ink-soft);font-family:var(--sans);font-size:.98rem;line-height:1.72}.resume-profile{grid-template-columns:1fr;gap:1.35rem;display:grid}.profile-personal{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:1.5rem;display:grid}.profile-personal h3{white-space:nowrap;margin:0}.profile-meta{flex-wrap:wrap;align-items:baseline;gap:.45rem 1.4rem;display:flex}.profile-meta p{white-space:nowrap;margin:0}.profile-skills{flex-wrap:wrap;align-items:baseline;gap:.45rem 1rem;display:flex}.profile-skills>p{color:var(--ink);white-space:nowrap;margin:0;font-size:1rem;font-weight:600}.profile-skill-list{flex-wrap:wrap;flex:34rem;gap:.45rem 1.15rem;margin:0;padding:0;list-style:none;display:flex}.profile-skill-list li,.profile-skill-list li:last-child{color:var(--ink-soft);white-space:nowrap;margin:0;font-size:.98rem}.profile-personal{grid-template-columns:1fr;gap:.85rem}.profile-personal h3{margin:0}.experience header p,.experience header p:last-child{font-weight:700}@keyframes rise-in{0%{opacity:0;transform:translateY(.8rem)}to{opacity:1;transform:translateY(0)}}@media (width<=1100px){.collection-nav-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.collection-link{min-height:17rem}.series-grid--adventure{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.resume-layout{grid-template-columns:minmax(13rem,16rem) minmax(0,1fr);gap:2.5rem}.resume-sidebar{padding-right:2.5rem}.resume-profile{grid-template-columns:1fr;gap:2rem}.experience header{grid-template-columns:minmax(0,1fr) auto}.experience header p:last-child{grid-area:1/2/span 2;align-self:center}}@media (width<=720px){.site-shell{padding:0 1.25rem}.site-header{align-items:center;min-height:6.3rem;padding:0}.section-intro{display:block}.section-intro>p{margin-top:1.2rem}.collection-nav-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-link{min-height:15rem}.series-grid,.series-grid--adventure{grid-template-columns:repeat(2,minmax(0,1fr))}.series-grid--seasonal,.series-grid--desserts,.series-grid--architecture{grid-template-columns:1fr}.collection-header{grid-template-columns:1fr;gap:1rem}.project-count{margin:0}.resume-layout{grid-template-columns:1fr;gap:3.5rem}.resume-sidebar{border-right:0;max-width:24rem;padding-right:0}.resume-portrait{width:min(100%,18rem)}.resume-profile{padding-bottom:2.5rem}.profile-skill-list{grid-template-columns:1fr}.profile-skill-list li:last-child{grid-column:auto}.resume-block{padding-top:2.7rem}.experience header{flex-wrap:wrap;gap:.4rem 1rem;display:flex}.experience header p:last-child{width:100%}.experience ol{padding-left:1.25rem;line-height:1.56}.experience li+li{margin-top:.7rem}.site-footer{flex-direction:column;gap:1.5rem}.site-footer a{align-self:start}.collection-preview{--mobile-carousel-scale:.88;--mobile-carousel-lift:4cqh;place-items:center;display:grid;overflow:hidden;container-type:size}.collection-preview img,.collection-link--machines .collection-preview img,.collection-link--lifestyle .collection-preview img,.collection-link--adventure .collection-preview img{object-fit:contain;object-position:50% 50%;transform-origin:50%;width:100%;min-width:0;max-width:100%;height:100%;min-height:0;max-height:100%;transform:translateY(calc(var(--mobile-carousel-lift) * -1)) scale(var(--mobile-carousel-scale))!important}.collection-preview-image--architecture{--mobile-carousel-lift:5cqh}.collection-preview-image--cakes,.collection-preview-image--flowers{--mobile-carousel-lift:4.5cqh}.collection-preview-image--four-seasons-floral{--mobile-carousel-lift:4.25cqh}.collection-preview img.is-active,.collection-link--machines .collection-preview img.is-active,.collection-link--lifestyle .collection-preview img.is-active,.collection-link--adventure .collection-preview img.is-active{transform:translateY(calc(var(--mobile-carousel-lift) * -1)) scale(var(--mobile-carousel-scale))!important}}@media (width<=420px){.collection-nav-grid,.series-grid,.series-grid--adventure{grid-template-columns:1fr}.collection-link{min-height:13.5rem}.series-card .placeholder-visual{aspect-ratio:1.2}}@media (width<=720px){.profile-personal{grid-template-columns:1fr;gap:.8rem}.profile-meta{gap:.45rem 1rem}.profile-skills{display:block}.profile-skills>p{margin-bottom:.55rem}.profile-skill-list{gap:.45rem .9rem}}@media (prefers-reduced-motion:reduce){.site-header,.hero h1,.hero-summary,.collection-nav-grid{animation:none}.site-nav a:after,.site-footer a:after,.collection-link .placeholder-visual,.series-card .placeholder-visual{transition:none}.collection-link:hover .placeholder-visual,.series-card:hover .placeholder-visual{transform:none}}.series-card{--cover-scale:.94;--cover-x:0%;--cover-y:0%;color:var(--ink);text-decoration:none}.series-image-wrap{aspect-ratio:1.15;border:1px solid var(--line);background:var(--paper);place-items:center;display:grid;overflow:hidden}.series-image-wrap>.placeholder-visual{border:0;width:100%;height:100%}.series-image-wrap>img{object-fit:contain;object-position:center;width:100%;height:100%;transform:translate(var(--cover-x), var(--cover-y)) scale(var(--cover-scale));transition:transform .42s cubic-bezier(.2,.65,.25,1);display:block}.series-card:hover .series-image-wrap>img{transform:translate(var(--cover-x), var(--cover-y)) scale(calc(var(--cover-scale) + .025))}.series-card--tanks{--cover-scale:.98}.series-card--halloween-1,.series-card--halloween-2,.series-card--christmas,.series-card--spaceship,.series-card--kunpeng{--cover-scale:.9}.series-card--engines,.series-card--armor,.series-card--astronaut,.series-card--four-seasons-floral{--cover-scale:.88;--cover-x:0%;--cover-y:0%}.series-card--engines .series-image-wrap>img,.series-card--armor .series-image-wrap>img,.series-card--astronaut .series-image-wrap>img,.series-card--four-seasons-floral .series-image-wrap>img{object-fit:contain;object-position:center;max-width:84%;width:auto!important;height:76%!important;transform:none!important}.series-card--engines:hover .series-image-wrap>img,.series-card--armor:hover .series-image-wrap>img,.series-card--astronaut:hover .series-image-wrap>img,.series-card--four-seasons-floral:hover .series-image-wrap>img{transform:none!important}.series-card--engines .series-image-wrap>img,.series-card--engines:hover .series-image-wrap>img{transform:translateY(-6%)!important}.series-card--underwater,.series-card--land-animals{--cover-scale:.96}.series-card--birds,.series-card--insects{--cover-scale:.98}.series-card--architecture,.series-card--cakes,.series-card--flowers{--cover-scale:.95}.series-caption{flex-direction:column;gap:.25rem;display:flex}.series-caption .series-title{color:var(--ink);font-size:.88rem;font-weight:500}.series-caption>span:last-child{color:var(--muted);font-size:.67rem;line-height:1.4}.detail-page{animation:.48s both rise-in}.detail-page .wordmark small{display:none}.detail-header{align-items:flex-start;min-height:6.2rem;padding:1.15rem 0 .75rem}.detail-brand{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.detail-heading{align-items:baseline;gap:.7rem;display:flex}.detail-heading h1{color:var(--ink);font-family:var(--display);letter-spacing:-.045em;white-space:nowrap;margin:0;font-size:clamp(1rem,1.7vw,1.65rem);font-weight:400;line-height:1}.detail-heading p{color:var(--ink-soft);font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.6rem}.detail-back{color:var(--ink);font-family:var(--mono);letter-spacing:.03em;align-items:baseline;gap:.5rem;font-size:.68rem;text-decoration:none;display:inline-flex}.detail-back small{color:var(--muted);font-family:var(--sans);font-size:.67rem}.detail-back:after{content:"";background:currentColor;width:0;height:1px;transition:width .24s;display:block}.detail-back:hover:after{width:100%}.detail-back:focus-visible{outline:2px solid var(--ink);outline-offset:.3rem}.detail-gallery{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(2.5rem,5vw,5rem) 1.5rem;padding:clamp(1.25rem,2.5vw,2.5rem) 0 clamp(4rem,7vw,7rem);display:grid}.detail-image{grid-column:1/-1;margin:0}.detail-image img{border:1px solid var(--line);background:var(--placeholder);width:100%;height:auto;display:block}.detail-image--small-box{justify-self:center;width:70%}.detail-page--four-seasons-floral .detail-image{grid-column:3/span 8}.detail-image figcaption{color:var(--muted);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;justify-content:space-between;gap:1.5rem;padding-top:.75rem;font-size:.6rem;display:flex}.detail-image figcaption strong{color:var(--ink-soft);font-family:var(--sans);letter-spacing:.02em;text-transform:none;font-size:.68rem;font-weight:400}@media (width<=720px){.detail-header{min-height:5.35rem;padding:.9rem 0 .65rem}.detail-brand{gap:.55rem}.detail-heading{gap:.5rem}.detail-heading h1{font-size:1rem}.detail-heading p{font-size:.52rem}.detail-back{margin-top:.05rem}.detail-back small{display:none}.detail-gallery{grid-template-columns:1fr;gap:2.75rem;padding-top:1rem}.detail-page--four-seasons-floral .detail-image{grid-column:auto;justify-self:center;width:66.666%}.detail-image figcaption{flex-direction:column;gap:.25rem}}@media (prefers-reduced-motion:reduce){.detail-page{animation:none}.series-image-wrap>img,.detail-back:after,.collection-preview img{transition:none}.series-card:hover .series-image-wrap>img{transform:translate(var(--cover-x), var(--cover-y)) scale(var(--cover-scale))}}
