/* Shared identity: homepage, immersive works overview and readable project pages. */
@font-face{font-family:'Noto Sans SC';src:url('assets/fonts/NotoSansSC-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--edge:24px;--split:37.8%}
.portfolio.case-page{font-family:'Noto Sans SC',sans-serif}.case-page .case-opening h1{font-family:'My Font','Noto Sans SC',serif;font-weight:400}
.case-top-film{max-width:1200px;margin-inline:auto;padding-top:24px;margin-bottom:24px}.case-top-film .media-caption a{display:flex;align-items:center;min-height:44px}.home-page .work-downloads{margin-top:80px;padding-top:36px;border-top:1px solid #dedede}.home-page .work-downloads a{min-height:74px}
@media(max-width:600px){.case-top-film{padding-top:12px;margin-bottom:8px}.home-page .work-downloads{margin-top:56px;padding-top:28px}}
.skip-link{position:fixed;top:8px;left:8px;z-index:99999;transform:translateY(-160%);background:#111;color:#fff;padding:12px 18px;font:14px/1.5 sans-serif}.skip-link:focus{transform:none}
.masthead{display:flex;align-items:flex-start;min-height:104px;padding-top:18px;position:relative;gap:0}.masthead .nav-brand{width:var(--split);flex:none}.masthead .nav-brand a{display:inline-block}.masthead .display{display:block;font-family:Anton,sans-serif;font-weight:400;font-size:30px;line-height:1.2;letter-spacing:0;white-space:nowrap}.masthead .nav-caption{display:block;font-size:11px;line-height:1.4;padding-top:5px}.masthead a{min-height:44px}.masthead .about-entry{margin-left:auto;text-align:right}.masthead a:hover{text-decoration:none}
.portfolio.case-page{--gutter:24px;--ink:#101010}.portfolio.case-page .masthead{width:calc(100% - 48px);margin-inline:auto}.portfolio.case-page .site-footer{width:calc(100% - 48px);margin-inline:auto;padding-top:100px;padding-bottom:24px}.portfolio.case-page .footer-information{display:flex;font-size:12px;line-height:1.6;color:#686868}.portfolio.case-page .footer-information>p{width:var(--split);flex:none}.portfolio.case-page .footer-right{display:flex;gap:25px;flex:1;min-width:0}.portfolio.case-page .footer-right p{flex:1;min-width:0}.portfolio.case-page .footer-display{display:flex;align-items:baseline;justify-content:space-between;white-space:nowrap;font-family:Anton,sans-serif;font-weight:400;font-size:clamp(100px,15.4vw,222px);line-height:1.1;margin-top:56px;letter-spacing:-.035em}.portfolio.case-page .footer-arrow{font-family:sans-serif;font-size:.65em;line-height:1}.portfolio.case-page .footer-display:hover{text-decoration:none}.portfolio.case-page .contact-inline-copy{min-height:30px}.portfolio.case-page .contact-dialog button{min-height:44px}
.works-page{--edge:24px}.works-page .project-status{font-size:11px;color:#626262;margin-top:12px}.works-page .project-entry h2{overflow-wrap:anywhere}.works-page .project-entry[data-project="rust-bloom"] h2,.works-page .project-entry[data-project="sisyphus"] h2{font-size:clamp(38px,4.2vw,64px)}.work-index{margin:0 0 24px;border-block:1px solid #dedede;font-size:12px}.work-index summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;padding:12px 0}.work-index summary::-webkit-details-marker{display:none}.work-index[open] summary span{transform:rotate(180deg)}.work-index nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 24px;padding-bottom:20px}.work-index nav a{min-height:44px;display:flex;align-items:center;gap:14px;line-height:1.5}.work-index nav a span{font-size:10px;color:#777}.work-downloads{display:grid;grid-template-columns:var(--split) 1fr 1fr;gap:24px;padding:80px 0 0;font-size:14px}.work-downloads p{font-size:11px;color:#686868;margin-bottom:12px}.work-downloads h2{font-size:28px;font-weight:400}.work-downloads a{position:relative;padding:14px 32px 14px 0;border-block:1px solid #dedede;min-width:0}.work-downloads small{display:block;font-size:11px;color:#686868;margin-top:7px;line-height:1.6}.work-downloads a>span{position:absolute;right:0;top:14px}
@media(min-width:901px) and (hover:hover) and (pointer:fine){.works-page .stage-enhanced .project-entry{min-height:58vh;padding-top:64px;padding-bottom:64px}.works-page .stage-enhanced #project-dream,.works-page .stage-enhanced #project-molly{padding-left:20px;min-height:58vh}.works-page .stage-enhanced #project-my-font,.works-page .stage-enhanced #project-jian,.works-page .stage-enhanced #project-photography{min-height:58vh}.works-page .stage-enhanced .project-entry:last-child{min-height:75vh}.works-page .stage-enhanced .preview-rail{top:12vh}.works-page .project-entry[data-project="arcana"] h2,.works-page .project-entry[data-project="guanjian"] h2{font-size:clamp(38px,4.1vw,60px)}}
@media(max-width:900px){.work-index nav{grid-template-columns:repeat(2,minmax(0,1fr))}.work-downloads{grid-template-columns:1fr 1fr}.work-downloads>div{grid-column:1/-1}.works-page .project-entry h2{font-size:44px}.works-page .inline-cover{max-width:100%}.works-page .work-stage{background:#f2f2ef}.works-page .entry-description{max-width:45em}.works-page .project-entry{border-bottom:1px solid #deded8}}
@media(max-width:600px){:root{--edge:14px}.home-page,.works-page{--edge:14px}.masthead,.works-page .masthead{min-height:85px;padding-top:16px}.masthead .display,.works-page .masthead .display{font-size:18px}.masthead .nav-caption,.works-page .nav-caption{font-size:10px;padding-top:5px}.masthead .nav-brand,.works-page .nav-brand{width:52%}.portfolio.case-page{--gutter:14px}.portfolio.case-page .masthead,.portfolio.case-page .site-footer{width:calc(100% - 28px)}.portfolio.case-page .site-footer{padding-top:64px}.portfolio.case-page .footer-information{display:block;font-size:12px}.portfolio.case-page .footer-information>p{width:100%;margin-bottom:24px}.portfolio.case-page .footer-right{display:block}.portfolio.case-page .footer-right p{margin-bottom:16px}.portfolio.case-page .footer-display{font-size:18.5vw;margin-top:36px}.work-index{margin-bottom:20px}.work-index nav{gap:0 18px;font-size:12px}.work-index nav a{align-items:flex-start;padding:10px 0}.work-index nav a span{padding-top:2px}.work-downloads{grid-template-columns:1fr;padding-top:52px;gap:24px}.work-downloads>div{grid-column:auto}.works-page .project-entry h2{font-size:40px}.works-page .project-entry[data-project="my-font"] h2{font-size:56px}.works-page #statement-title{font-size:12.8vw}.works-page .project-entry .name-arrow{margin-left:14px}.works-page .project-entry[data-project="molly"] h2{font-size:50px}}
@media(max-width:600px){.works-page #statement-title{font-size:clamp(31px,9.8vw,44px);line-height:1.08}.works-page .project-entry{display:flex;flex-direction:column;align-items:stretch}.works-page .project-entry .project-meta{order:0}.works-page .project-entry h2{order:1}.works-page .project-entry .inline-cover{order:2;margin-top:4px;margin-bottom:18px}.works-page .project-entry .entry-description{order:3}.works-page .project-entry .project-status{order:4}.works-page .project-entry .ip-note{order:5}}

/* Verified ICP registration, shared by all public pages. */
.footer-legal{margin-top:20px;padding-top:12px;border-top:1px solid #dedede;font-size:12px;line-height:1.6;color:#626262}.footer-legal a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;overflow-wrap:anywhere}.footer-legal a:focus-visible{outline:2px solid #111;outline-offset:4px}
