:root{--blue:#075cfa;--ink:#191919;--muted:#737373;--paper:#fafaf8;--line:#dcdcd7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--blue);outline-offset:6px}.skip{position:fixed;top:-80px;background:var(--blue);color:white;padding:15px;z-index:100}.skip:focus{top:8px}.header{height:90px;display:flex;align-items:center;margin:0 5%;border-bottom:1px solid var(--line);gap:35px}.logo{font-size:36px;font-weight:900;letter-spacing:-3px;display:inline-flex;align-items:flex-start}.logo span{font-size:13px;letter-spacing:0;margin:5px 0 0 5px}.header-caption{font-size:13px;color:var(--muted);letter-spacing:2px}.header nav{margin-left:auto;display:flex;gap:35px;align-items:center;font-size:14px}.header nav a:hover,.categories a:hover,footer>a:last-child:hover{color:var(--blue)}nav a span{font-size:11px;vertical-align:super;margin-left:4px}.pdf-link{border-bottom:1px solid var(--ink);padding:8px 0}.hero{padding:33px 5% 0}.hero-top,.hero-bottom{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1.4px}.hero-top{color:var(--muted)}.hero-main{display:grid;grid-template-columns:1.05fr 1fr;min-height:545px;align-items:center;gap:30px}.hero-copy{position:relative;z-index:1;padding:28px 0}h1{font-size:clamp(44px,5.4vw,88px);font-weight:650;letter-spacing:-4px;line-height:1.22;margin:0 0 28px}.blue{color:var(--blue)}.period{margin-left:-.15em}.hero-copy p{font-size:15px;color:#656565;line-height:1.9;margin:0 0 28px}.browse{font-size:14px;display:inline-flex;align-items:center;gap:32px;border-bottom:1px solid var(--ink);padding:10px 0}.browse span{font-size:23px}.hero-art{position:relative;height:440px;margin-left:-30px}.art-grid{position:absolute;inset:20px 0;background-image:linear-gradient(#deded980 1px,transparent 1px),linear-gradient(90deg,#deded980 1px,transparent 1px);background-size:38px 38px;mask-image:radial-gradient(ellipse,black 20%,transparent 70%)}.hero-poster{position:absolute;width:31%;height:310px;object-fit:cover;box-shadow:0 16px 23px #0002;transition:transform .4s}.pink{left:6%;top:61px;transform:rotate(-13deg)}.silver{right:3%;top:47px;transform:rotate(14deg)}.yellow{left:36%;top:23px;transform:rotate(1deg);height:335px;width:34%}.hero-art:hover .pink{transform:rotate(-17deg) translateX(-8px)}.hero-art:hover .silver{transform:rotate(18deg) translateX(8px)}.art-note{position:absolute;bottom:14px;left:32%;font-size:10px;letter-spacing:2px;color:var(--muted)}.art-mark{position:absolute;bottom:35px;right:0;color:var(--blue);font-size:80px;line-height:1}.hero-bottom{border-top:1px solid var(--line);padding:20px 0;color:#666;letter-spacing:.7px}.work{margin:65px 5% 0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:38px}.eyebrow{font-size:12px;letter-spacing:1.5px;color:var(--muted)}h2{font-size:36px;letter-spacing:-1px;margin:13px 0 0;font-weight:600}.section-heading h2 span{font-size:18px;color:#888;letter-spacing:-.5px;margin-left:18px;font-weight:400}.categories{display:flex;gap:24px;font-size:13px;padding-bottom:5px}.project-section{padding-top:20px;scroll-margin-top:20px}.category-heading{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:23px 0}.category-heading h3{font-size:16px;font-weight:500;margin:0}.category-heading h3 span{font-size:13px;color:var(--muted);margin-left:14px}.category-heading>span{font-size:12px;color:var(--muted)}.projects{display:grid;grid-template-columns:1fr 1fr;gap:40px 26px;margin-bottom:45px}.project-card{padding:0;border:0;text-align:left;background:none;display:block;width:100%}.project-image{overflow:hidden;background:#e9e9e9;aspect-ratio:1.54;display:flex;align-items:center;justify-content:center;position:relative}.project-image img{width:100%;height:100%;object-fit:contain;transition:transform .5s}.project-card:hover img{transform:scale(1.035)}.view-label{position:absolute;bottom:16px;right:16px;background:var(--paper);padding:10px 15px;border-radius:30px;font-size:12px;opacity:0;transform:translateY(6px);transition:.25s}.project-card:hover .view-label,.project-card:focus-visible .view-label{opacity:1;transform:translateY(0)}.project-meta{display:flex;justify-content:space-between;align-items:flex-start;padding-top:17px;gap:10px}.project-meta h4{font-size:18px;font-weight:500;margin:0 0 8px}.project-meta p{font-size:12px;color:var(--muted);margin:0}.project-number{font-family:monospace;color:var(--muted);font-size:12px;padding-top:3px}.long-grid{grid-template-columns:repeat(2,1fr)}.about{margin:40px 5% 0;padding:65px 0 75px;border-top:1px solid var(--ink);display:grid;grid-template-columns:1fr 1fr;gap:40px}.about h2{font-size:52px;letter-spacing:-2px;margin-top:25px}.about h2 span{color:var(--blue)}.about-copy>p{font-size:20px;line-height:1.8;margin:0 0 30px}.about-details{display:flex;gap:35px;margin-bottom:35px}.about-details span{font-size:12px;color:var(--muted)}.about-details p{font-size:14px;line-height:1.6}.download{display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:white;padding:19px 24px;font-size:14px}.download:hover{background:var(--blue)}.download span{font-size:22px}footer{border-top:1px solid var(--line);margin:0 5%;padding:30px 0;display:flex;justify-content:space-between;align-items:center}footer p,footer>a:last-child{font-size:12px;color:#666}dialog{border:0;padding:0;width:min(1320px,94vw);max-height:94dvh;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#101010c9;backdrop-filter:blur(7px)}.dialog-bar{position:sticky;top:0;z-index:2;background:var(--paper);padding:22px 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.dialog-bar h2{font-size:23px;margin:6px 0 0}.dialog-bar span{font-size:11px;color:var(--muted);letter-spacing:1px}.close{background:none;border:1px solid var(--line);padding:10px 17px;white-space:nowrap}.detail-body{padding:25px}.detail-body>p{font-size:14px;line-height:1.8;color:#656565;margin:0 0 24px}#zoom{display:block;max-width:100%;overflow:auto;background:#e9e9e9;padding:0;border:0;width:100%;cursor:zoom-in}#detail-image{display:block;width:100%;height:auto}#zoom.expanded{cursor:zoom-out}#zoom.expanded img{width:2200px;max-width:none}.detail-body .zoom-hint{text-align:center;font-size:12px;margin:13px 0 25px}.detail-nav{display:flex;justify-content:space-between;align-items:center;font-size:13px}.detail-nav button{background:none;padding:14px 4px;border:0}.detail-nav button:hover{color:var(--blue)}body.modal-open{overflow:hidden}@media(min-width:1600px){body{max-width:1800px;margin:auto}.hero-main{min-height:640px}.hero-art{height:490px}.hero-poster{height:360px}.yellow{height:390px}}@media(max-width:800px){.header{height:76px;gap:15px}.header-caption{display:none}.header nav{gap:20px;font-size:13px}.logo{font-size:30px}.hero-main{grid-template-columns:1fr;gap:0;min-height:0}.hero-copy{padding:42px 0 5px}h1{font-size:clamp(44px,9vw,68px);letter-spacing:-2.5px}.hero-copy p{font-size:14px}.hero-art{width:90%;max-width:520px;justify-self:center;margin:20px 0 25px;height:390px}.hero-poster{height:270px}.yellow{height:295px}.hero-bottom{font-size:10px}.hero-top{font-size:10px}.work{margin-top:45px}.section-heading{align-items:flex-start;gap:25px;flex-direction:column;padding-bottom:20px}.section-heading h2{font-size:30px}.section-heading h2 span{font-size:15px}.categories{gap:25px}.projects{gap:28px 18px}.project-meta h4{font-size:15px}.about{grid-template-columns:1fr;padding:40px 0;gap:25px}.about h2{font-size:44px}.about-copy>p{font-size:18px}.about-details{gap:20px}footer p{max-width:130px;line-height:1.7}}@media(max-width:520px){.pdf-link{font-size:12px}.header nav{gap:16px}.hero-top>span:last-child{display:none}.hero-art{width:100%;height:340px;margin-left:0}.hero-poster{height:235px}.yellow{height:260px}.art-mark{font-size:65px}.art-note{font-size:9px;left:25%;bottom:0}.hero-bottom>span:last-child{font-size:9px}.projects,.long-grid{grid-template-columns:1fr}.category-heading h3 span{font-size:12px}.project-meta h4{font-size:17px}.projects{margin-bottom:25px}.about-details{flex-direction:column;gap:10px}.about-details p{margin:8px 0}.dialog-bar{padding:16px}.dialog-bar h2{font-size:18px}.detail-body{padding:14px}.detail-nav{font-size:12px}footer{gap:12px}.hero-bottom{gap:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Personal portrait-led homepage */
:root{--blue:#813c30;--paper:#faf9f6;--line:#dedbd5}
.portrait-hero{display:grid;grid-template-columns:44% 56%;margin:28px 5% 0;min-height:660px;height:min(780px,calc(100svh - 145px))}.portrait-intro{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:30px 9% 30px 0}.portrait-intro .eyebrow{font-size:11px;letter-spacing:1.7px}.portrait-intro h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(96px,10vw,164px);font-weight:400;line-height:1;letter-spacing:-7px;margin:34px 0 12px}.hello{display:block;font-family:Arial,'PingFang SC',sans-serif;font-size:28px;font-weight:400;letter-spacing:2px;margin-bottom:13px}.name-dot{color:var(--blue)}.designer-role{font-size:14px;letter-spacing:3px;margin:0 0 28px}.intro-text{font-size:16px;line-height:1.9;color:#65615c;margin:0 0 30px}.intro-facts{display:grid;gap:17px}.intro-facts span{font-size:10px;letter-spacing:1.2px;color:#8b8279}.intro-facts p{font-size:14px;margin:8px 0 0}.portrait-intro .browse{margin-top:25px;gap:60px}.intro-footnote{font-size:9px;letter-spacing:1.6px;color:#8b8279;margin-top:32px}.portrait-cover{margin:0;position:relative;overflow:hidden;background:#b4a48d;min-width:0}.portrait-cover>img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 29%}.portrait-cover figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:32px 25px 20px;color:white;font-size:10px;letter-spacing:1.6px;background:linear-gradient(transparent,#0005)}.personal-strip{display:flex;justify-content:space-between;align-items:center;padding:25px 0;margin:0 5%;border-bottom:1px solid var(--line);font-size:12px;color:#777069}.personal-strip>a{font-size:10px;letter-spacing:1.5px}.personal-about{grid-template-columns:42% 1fr;gap:10%;align-items:center}.about-portrait{margin:0}.about-portrait img{display:block;width:100%;height:670px;object-fit:cover;object-position:50% 25%}.about-portrait figcaption{font-size:10px;letter-spacing:1.5px;color:#82786d;margin-top:14px}.personal-about h2{font-size:42px;letter-spacing:-1px;line-height:1.35;margin:20px 0 28px}.personal-about .about-copy>p{font-size:16px;color:#68615a;line-height:1.9}.aesthetic-notes{display:grid;gap:16px;margin-bottom:28px}.aesthetic-notes>div{display:grid;grid-template-columns:88px 1fr;gap:15px;border-top:1px solid var(--line);padding-top:16px}.aesthetic-notes span{font-size:12px;color:var(--blue)}.aesthetic-notes p{font-size:14px;color:#68615a;line-height:1.7;margin:0}.personal-about .about-details{margin-bottom:15px}
@media(min-width:1600px){.portrait-hero{height:800px}.portrait-intro{padding-left:5%}}
@media(max-width:1000px) and (min-width:801px){.portrait-intro h1{font-size:100px}.intro-text{font-size:14px}.intro-facts p{font-size:12px}.portrait-intro{padding-right:20px}.portrait-hero{min-height:650px}.personal-about{gap:6%}.about-portrait img{height:600px}}
@media(max-width:800px){.portrait-hero{height:auto;min-height:0;grid-template-columns:1fr;margin-top:18px;gap:0}.portrait-cover{grid-row:1;height:62svh;min-height:390px;max-height:640px}.portrait-cover>img{object-position:50% 25%}.portrait-intro{padding:35px 0 36px}.portrait-intro h1{font-size:100px;margin:22px 0 16px;letter-spacing:-5px}.hello{font-size:24px}.intro-text{font-size:16px}.intro-facts{grid-template-columns:1fr 1fr;gap:20px}.intro-facts p{font-size:13px;line-height:1.7}.intro-footnote{margin-top:25px}.designer-role{margin-bottom:23px}.portrait-intro .browse{margin-top:20px}.personal-about{grid-template-columns:1fr;gap:35px}.about-portrait{max-width:540px}.about-portrait img{height:550px}.personal-about h2{font-size:36px}.personal-strip{font-size:11px}.personal-strip>a{font-size:9px}}
@media(max-width:520px){.portrait-cover{height:59svh;min-height:360px}.portrait-intro{position:relative}.portrait-intro h1{font-size:96px}.portrait-cover figcaption{font-size:9px;padding:24px 16px 15px}.intro-facts{grid-template-columns:1fr;gap:16px}.portrait-intro .eyebrow{font-size:10px}.about-portrait img{height:480px}}

.system-entry{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:27px 0;border-top:1px solid var(--line);color:var(--blue)}.system-entry>span{font-size:12px;line-height:1.8}.system-entry strong{font-size:21px;font-weight:500}.system-entry:hover{color:var(--ink)}@media(max-width:800px){.system-entry{align-items:flex-start;flex-direction:column;gap:10px}}@media(max-width:520px){.header nav{gap:12px}.header .pdf-link{display:none}}

/* Keep scrolling stable; avoid hover resampling on touch devices. */
@media(hover:none){.project-card:hover img{transform:none}.project-image img{transition:none}.view-label{opacity:1;transform:none}}
.project-image img{display:block}
