.logoloop{--logoloop-gap:32px;--logoloop-logoHeight:28px;--logoloop-fadeColorAuto:#090908;position:relative;overflow:hidden}.logoloop__track{will-change:transform;-webkit-user-select:none;user-select:none;width:max-content;display:flex;position:relative}.logoloop__list{align-items:center;margin:0;padding:0;list-style:none;display:flex}.logoloop__item{margin-right:var(--logoloop-gap);font-size:var(--logoloop-logoHeight);flex:none;line-height:1}.logoloop__node{align-items:center;transition:transform .35s cubic-bezier(.2,.8,.2,1);display:inline-flex}.logoloop--scale-hover .logoloop__item:hover .logoloop__node{transform:scale(1.08)}.logoloop--fade:before,.logoloop--fade:after{content:"";z-index:10;pointer-events:none;width:clamp(35px,8%,120px);position:absolute;top:0;bottom:0}.logoloop--fade:before{background:linear-gradient(to right,var(--logoloop-fadeColor,var(--logoloop-fadeColorAuto)),transparent);left:0}.logoloop--fade:after{background:linear-gradient(to left,var(--logoloop-fadeColor,var(--logoloop-fadeColorAuto)),transparent);right:0}@media (prefers-reduced-motion:reduce){.logoloop__track{transform:none!important}.logoloop__node{transition:none!important}}.text-pressure{width:100%;height:1.2em;min-height:56px;position:relative;overflow:visible}.text-pressure>div{white-space:nowrap;align-items:baseline;font-family:Noto Serif SC,serif;line-height:1.08;display:flex}.text-pressure span{transform-origin:bottom;will-change:transform,font-weight,letter-spacing;transition:color .3s;display:inline-block}.model-viewer{background:radial-gradient(circle at 48% 42%,#27303a 0,#111518 48%,#080909 100%);width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.model-viewer canvas{cursor:grab;width:100%;height:100%;display:block}.model-viewer.is-detail canvas:active{cursor:grabbing}.model-viewer.is-preview{min-height:290px}.model-status{z-index:3;color:#777d82;letter-spacing:.18em;pointer-events:none;place-items:center;font-size:9px;display:grid;position:absolute;inset:0}.model-status.ready{display:none}.model-status.error{color:#b58d69}.model-badge{z-index:4;color:#d0b78f;letter-spacing:.16em;pointer-events:none;background:#07080875;border:1px solid #d0b78f6b;border-radius:3px;padding:5px 7px;font:600 8px Outfit;position:absolute;top:13px;right:14px}.model-info-grid{grid-template-columns:1fr 1fr!important;gap:0!important;display:grid!important}.model-info-grid b{display:block}.model-material-list{display:block!important}.model-material-list ul{margin:8px 0 0;padding:0;list-style:none}.model-material-list li{color:#969990;border-top:1px solid #ffffff12;padding:7px 0;font-size:9px}.filmstrip .model-thumb{color:#c7ac82;letter-spacing:.12em;background:radial-gradient(circle,#26313a,#0b0d0f);place-items:center;width:100%;height:100%;font:600 11px Outfit;display:grid}.project-tile-shell.model{height:auto!important}.project-tile-shell.model .project-tile{aspect-ratio:4/3;height:auto!important}.lightbox-image-frame.model-frame{overflow:hidden!important}.project-tile-shell.model .project-overlay,.project-tile-shell.model .project-tile-top,.project-tile-shell.model .project-tile-copy,.project-tile-shell.model .tile-open{pointer-events:none}.filmstrip img.model-static-thumb{object-fit:contain;background:radial-gradient(circle,#26313a,#0b0d0f);padding:3px}.project-tile-shell,.project-tile-shell.wide,.project-tile-shell.tall,.project-tile-shell.square,.project-tile-shell.landscape,.project-tile-shell.portrait{break-inside:avoid;vertical-align:top;width:100%;height:320px;margin:0 0 18px;display:inline-block}@media (width<=1450px){.project-mosaic{columns:4}}@media (width<=1050px){.project-mosaic{columns:3}}@media (width<=720px){.project-mosaic{columns:2;display:block}.project-tile-shell,.project-tile-shell.wide,.project-tile-shell.tall,.project-tile-shell.square,.project-tile-shell.landscape,.project-tile-shell.portrait{height:300px;margin-bottom:14px}.project-tile-shell.wide,.project-tile-shell.landscape{height:200px}.project-tile-shell.tall,.project-tile-shell.portrait{height:390px}}@media (width<=460px){.project-mosaic{columns:1}}.work-gallery{padding-bottom:210px}.project-mosaic{grid-template-columns:repeat(12,1fr);grid-auto-flow:dense;grid-auto-rows:90px;align-items:stretch;gap:28px;margin-top:40px;display:grid}.project-tile-shell{animation:7s ease-in-out infinite mosaicFloat;animation-delay:calc(var(--i,0)*-.7s);grid-area:span 5/span 4}.project-tile-shell:nth-child(2n){animation-duration:8.5s;animation-delay:-2.2s}.project-tile-shell:nth-child(3n){animation-duration:9.5s;animation-delay:-4s}.project-tile-shell.wide{grid-area:span 5/span 8}.project-tile-shell.tall{grid-area:span 7/span 4}.project-tile-shell.square{grid-area:span 5/span 4}.project-tile-shell.landscape{grid-area:span 4/span 5}.project-tile-shell.portrait{grid-area:span 6/span 3}.project-tile{cursor:zoom-in;will-change:transform;background:#151512;outline:none;width:100%;height:100%;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s;position:relative;overflow:hidden}.project-tile:focus-visible{box-shadow:0 0 0 2px var(--accent)}.project-tile:hover{z-index:3;box-shadow:0 28px 70px #0000008c}.project-tile img{object-fit:cover;filter:saturate(.58)brightness(.76);will-change:transform;width:100%;height:100%;transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .55s;transform:scale(1.03)}.project-tile:hover img{filter:saturate(.82)brightness(.82)}.project-tile-top{letter-spacing:.16em;color:#ffffffbf;justify-content:space-between;font-size:9px;display:flex;position:absolute;top:17px;left:18px;right:18px}.project-tile-copy{transition:all .4s;position:absolute;bottom:20px;left:22px;right:70px;transform:translateY(8px)}.project-tile-copy h3{color:#e0ddd2;margin:0 0 6px;font:500 clamp(19px,1.8vw,31px) Noto Serif SC}.project-tile-copy p{letter-spacing:.06em;color:#aaa79d;opacity:0;margin:0;font-size:10px;transition:all .35s}.project-tile:hover .project-tile-copy{transform:translateY(0)}.project-tile:hover .project-tile-copy p{opacity:1}.tile-open{opacity:0;border:1px solid #ffffff59;border-radius:50%;place-items:center;width:38px;height:38px;transition:all .4s;display:grid;position:absolute;bottom:20px;right:20px;transform:scale(.7)rotate(-25deg)}.tile-open svg{width:16px}.project-tile:hover .tile-open{opacity:1;transform:scale(1)rotate(0)}@keyframes mosaicFloat{0%,to{translate:0}50%{translate:0 -9px}}@media (width<=1000px){.project-mosaic{grid-template-columns:repeat(8,1fr);grid-auto-rows:80px}.project-tile-shell,.project-tile-shell.square{grid-column:span 4}.project-tile-shell.wide{grid-column:span 8}.project-tile-shell.landscape{grid-column:span 5}.project-tile-shell.portrait{grid-column:span 3}}@media (width<=620px){.project-mosaic{flex-direction:column;gap:18px;display:flex}.project-tile-shell,.project-tile-shell.wide,.project-tile-shell.tall,.project-tile-shell.square,.project-tile-shell.landscape,.project-tile-shell.portrait{height:58vw;min-height:270px}.project-tile-shell.tall,.project-tile-shell.portrait{height:90vw}.project-tile-copy p,.tile-open{opacity:1}.project-tile-copy{transform:none}}.about-summary{max-width:760px;margin:45px 0 34px}.about-summary p{color:#929087;margin:0 0 14px;font-size:14px;line-height:1.9}.about-summary .project-history{border-left:1px solid var(--accent);color:#b2afa5;margin-top:20px;padding-left:18px}.project{cursor:zoom-in;outline:none}.project:focus-visible{box-shadow:0 0 0 2px var(--accent),0 -20px 60px #00000073}.project-view-hint{letter-spacing:.13em;opacity:0;align-items:center;gap:9px;font-size:10px;transition:all .35s;display:flex;position:absolute;top:50%;right:38px;transform:translateY(10px)}.project-view-hint svg{width:15px}.project:hover .project-view-hint{opacity:.8;transform:translateY(0)}.lightbox{z-index:1000;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#d8d4c8;background:#050504f7;flex-direction:column;padding:24px;display:flex;position:fixed;inset:0}.lightbox-bar{z-index:2;border-top:1px solid #37352f;justify-content:space-between;align-items:flex-start;height:62px;padding-top:14px;display:flex;position:relative}.lightbox-bar>div:first-child{align-items:center;gap:28px;display:flex}.lightbox-bar span{letter-spacing:.16em;color:#88857b;font-size:10px}.lightbox-bar strong{letter-spacing:.05em;font:500 15px Noto Serif SC}.lightbox-tools{align-items:center;gap:7px;display:flex}.lightbox-tools button{color:#c8c4b8;cursor:pointer;background:0 0;border:1px solid #3a3832;place-items:center;width:40px;height:40px;transition:all .25s;display:grid}.lightbox-tools button:hover{border-color:var(--accent);background:var(--accent);color:#0a0907}.lightbox-tools button svg{width:17px}.lightbox-tools .lightbox-close{border-radius:50%;margin-left:18px}.lightbox-stage{cursor:zoom-in;touch-action:none;-webkit-user-select:none;user-select:none;flex:1;place-items:center;display:grid;position:relative;overflow:hidden}.lightbox-stage.zoomed{cursor:grab}.lightbox-stage.zoomed:active{cursor:grabbing}.lightbox-stage img{object-fit:contain;will-change:transform;pointer-events:none;width:auto;max-width:94vw;height:auto;max-height:calc(100vh - 145px)}.lightbox-hint{text-align:center;letter-spacing:.18em;color:#706e67;height:28px;font-size:9px}.lightbox:after{content:"";pointer-events:none;border:1px solid #ffffff0f;position:absolute;inset:86px 24px 52px}@media (width<=700px){.lightbox{padding:15px}.lightbox-bar strong{display:none}.lightbox-tools{gap:3px}.lightbox-tools button{width:36px;height:36px}.lightbox-tools .lightbox-close{margin-left:6px}.lightbox-hint{font-size:8px}.project-view-hint{display:none}}.experience-note{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(160px,.55fr) 2fr;gap:6vw;margin-top:130px;padding:42px 0 58px;display:grid}.experience-label{flex-direction:column;justify-content:space-between;min-height:180px;display:flex}.experience-label span{letter-spacing:.2em;color:var(--accent);font-size:10px;line-height:1.6}.experience-label small{color:#817f77;font:500 22px Noto Serif SC}.experience-body h3{letter-spacing:-.04em;color:#e0ddd2;margin:0 0 42px;font:600 clamp(34px,3.4vw,58px) Noto Serif SC}.experience-body h3 span{color:var(--accent)}.experience-body p{letter-spacing:.025em;color:#9b998f;max-width:1120px;margin:0 0 24px;font:400 15px/2.05 Noto Serif SC}.experience-body p:last-child{margin-bottom:0}@media (width<=900px){.experience-note{grid-template-columns:1fr;gap:42px}.experience-label{gap:15px;min-height:auto}}@media (width<=560px){.experience-note{margin-top:90px;padding:32px 0 40px}.experience-body h3{margin-bottom:28px}.experience-body p{font-size:14px;line-height:1.9}}:root{--ink:#090908;--paper:#c9c6bb;--muted:#77766f;--line:#2a2925;--accent:#b7905f;--max:1700px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ink);color:var(--paper);margin:0;font-family:Outfit,Microsoft YaHei,sans-serif;overflow-x:hidden}body:after{content:"";pointer-events:none;opacity:.045;z-index:99;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit;text-decoration:none}.nav{z-index:50;justify-content:space-between;align-items:center;width:100%;height:96px;padding:0 max(3vw,28px);transition:all .5s;display:flex;position:fixed;top:0;left:0}.nav.scrolled{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#090908d1;border-bottom:1px solid #ffffff17;height:72px}.logo{align-items:flex-end;font-family:Noto Serif SC;line-height:.8;display:flex}.logo span{font-size:38px;font-weight:900}.logo i{letter-spacing:.22em;margin-left:3px;font:500 10px Outfit}.navlinks{letter-spacing:.1em;gap:46px;font-size:13px;display:flex}.navlinks a{position:relative}.navlinks a:after{content:"";background:var(--accent);height:1px;transition:all .35s;position:absolute;bottom:-8px;left:0;right:100%}.navlinks a:hover:after{right:0}.nav-contact{border:1px solid #ffffff59;align-items:center;gap:24px;padding:13px 20px;font-size:12px;transition:all .25s;display:flex}.menu{color:inherit;background:0 0;border:0;display:none}.hero{height:100vh;min-height:760px;position:relative;overflow:hidden}.hero video{object-fit:cover;filter:saturate(.48)contrast(1.12)brightness(.75);width:100%;height:100%;position:absolute;transform:scale(1.02)}.hero-shade{background:linear-gradient(90deg,#030403c2,#05050414 62%),linear-gradient(#0000 50%,#06060599);position:absolute;inset:0}.hero-content{z-index:2;max-width:var(--max);flex-direction:column;justify-content:space-between;height:100%;margin:auto;padding:155px 4vw 62px;display:flex;position:relative}.eyebrow,.hero-bottom{letter-spacing:.16em;justify-content:space-between;align-items:flex-end;font-size:11px;display:flex}.eyebrow{border-top:1px solid #ffffff59;padding-top:12px}.hero h1{letter-spacing:-.07em;color:#e1ded3;margin:0;font-family:Noto Serif SC;font-size:clamp(70px,8.4vw,156px);font-weight:600;line-height:.95}.hero h1 span,.hero h1 em{display:block}.hero h1 em{color:#0000;-webkit-text-stroke:1px #e1ded3b8;margin-left:15%;font-style:normal}.hero-bottom p{letter-spacing:.04em;font-family:Noto Serif SC;font-size:17px;line-height:1.9}.round-link{border:1px solid #ffffff73;border-radius:50%;place-items:center;width:92px;height:92px;transition:all .3s;display:grid}.round-link:hover{background:var(--accent);border-color:var(--accent)}.hero-index{z-index:2;writing-mode:vertical-rl;letter-spacing:.2em;font-size:10px;position:absolute;bottom:50%;right:16px}.magnetic{will-change:transform}.section{max-width:var(--max);margin:auto;padding:150px 4vw}.section-head{border-top:1px solid var(--line);letter-spacing:.17em;color:var(--muted);justify-content:space-between;padding-top:18px;font-size:11px;display:flex}.section-head p{color:var(--paper);margin:0}.about{background:radial-gradient(circle at 10% 45%,#926f441f,#0000 28%)}.about-grid{grid-template-columns:.8fr 1.2fr;align-items:center;gap:9vw;margin-top:100px;display:grid}.portrait{border:1px solid var(--line);height:620px;padding:14px;position:relative}.portrait-art{background:linear-gradient(145deg,#332e27,#11110f 70%);height:100%;position:relative;overflow:hidden}.portrait-art:before{content:"";filter:blur(.2px);background:radial-gradient(circle at 50% 18%,#9d7b58 0 6%,#0000 6.5%),linear-gradient(100deg,#181714,#594735);border-radius:48% 48% 12% 12%;width:65%;height:85%;position:absolute;bottom:-12%;right:4%}.portrait-art:after{content:"";background:linear-gradient(120deg,#0000 35%,#c4a16f2b 50%,#0000 62%);position:absolute;inset:0}.portrait-art span{z-index:2;letter-spacing:-.08em;color:#ffffff1c;font:500 68px/.75 Outfit;position:absolute;bottom:25px;left:24px}.portrait small{letter-spacing:.2em;color:var(--muted);position:absolute;bottom:100px;right:-120px;transform:rotate(90deg)}.about-copy h2,.work-intro h2,.ability-title h2{letter-spacing:-.04em;margin:0;font-family:Noto Serif SC;font-size:clamp(44px,4.3vw,76px);font-weight:500;line-height:1.28}.about-copy h2 i{color:var(--accent);font-style:normal}.about-copy>p{color:#929087;max-width:690px;margin:55px 0 38px;font-size:15px;line-height:2}.contacts{border-top:1px solid var(--line);flex-wrap:wrap;gap:28px;padding-top:25px;display:flex}.contacts>*{align-items:center;gap:9px;font-size:12px;display:flex}.contacts svg{width:15px}.stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-top:130px;display:grid}.stats>div{border-right:1px solid var(--line);align-items:end;gap:18px;padding:36px 25px;display:flex}.stats>div:last-child{border:0}.stats b{color:#ddd9cd;font:300 clamp(45px,4vw,70px) Outfit}.stats sup{color:var(--accent);font-size:.4em}.stats span{color:var(--muted);letter-spacing:.13em;font-size:9px;line-height:1.6}.work{max-width:none;padding-left:max(4vw,54vw - 850px);padding-right:max(4vw,54vw - 850px)}.work-intro,.ability-title{justify-content:space-between;align-items:flex-end;margin:90px 0;display:flex}.work-intro p,.ability-title p{color:var(--muted);font-size:13px}.project-stack{position:relative}.project{background:#181714;border-radius:3px;height:min(72vh,800px);margin-bottom:110px;position:sticky;overflow:hidden;box-shadow:0 -20px 60px #00000073}.project img{object-fit:cover;filter:saturate(.55)brightness(.68);width:100%;height:100%;transition:all 1s cubic-bezier(.22,1,.36,1)}.project:hover img{filter:saturate(.85)brightness(.74);transform:scale(1.045)}.project-overlay{background:linear-gradient(#0000 40%,#050504cc);position:absolute;inset:0}.project-top,.project-bottom{justify-content:space-between;display:flex;position:absolute;left:35px;right:35px}.project-top{letter-spacing:.18em;font-size:10px;top:30px}.project-bottom{align-items:end;bottom:35px}.project h3{margin:0 0 8px;font:500 clamp(34px,4vw,70px) Noto Serif SC}.project p{color:#aaa79c;margin:0}.project button{color:#fff;background:0 0;border:1px solid #fff6;border-radius:50%;width:70px;height:70px;transition:all .3s}.project:hover button{background:var(--accent);border-color:var(--accent);transform:rotate(45deg)}.ability{padding-bottom:220px}.ability-title{margin-bottom:90px}.ability-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.ability-card{border-right:1px solid var(--line);min-height:450px;padding:30px;transition:all .45s;position:relative}.ability-card:last-child{border:0}.ability-card:hover{background:#171611;transform:translateY(-12px)}.ability-card>div{justify-content:space-between;display:flex}.ability-card small{letter-spacing:.14em;color:var(--muted);font-size:9px}.ability-card h3{margin-top:150px;font:500 31px Noto Serif SC}.ability-card p{color:var(--muted);font-size:13px;line-height:1.8}.ability-card>svg{color:var(--accent);opacity:0;transition:all .35s;position:absolute;bottom:25px;right:25px}.ability-card:hover>svg{opacity:1;transform:translate(4px,-4px)}footer{color:#0b0b09;background:#b38d5c;flex-direction:column;justify-content:space-between;min-height:100vh;padding:35px max(4vw,54vw - 850px);display:flex;position:relative;overflow:hidden}.footer-bg{color:#14100912;font:900 80vw/1 Noto Serif SC;position:absolute;top:-20vw;right:-9vw}.footer-top,.footer-bottom{letter-spacing:.16em;border-top:1px solid #00000059;justify-content:space-between;padding-top:16px;font-size:10px;display:flex;position:relative}.footer-main{justify-content:space-between;align-items:center;display:flex;position:relative}.footer-main p{letter-spacing:-.05em;margin:0;font:600 clamp(50px,6.2vw,110px)/1.25 Noto Serif SC}.contact-orbit{letter-spacing:.15em;border:1px solid #00000073;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:20px;width:190px;height:190px;font-size:12px;transition:all .3s;display:flex}.contact-orbit:hover{color:#c6a372;background:#0b0b09}.big-mail{border-bottom:1px solid #00000059;justify-content:space-between;padding-bottom:18px;font-size:clamp(23px,3vw,50px);display:flex;position:relative}.footer-bottom a{font-weight:600}.menu{cursor:pointer}@media (width<=900px){.nav{height:72px}.navlinks{display:none}.navlinks.open{background:#0a0a09;flex-direction:column;padding:40px;display:flex;position:absolute;top:72px;left:0;right:0}.nav-contact{display:none}.menu{display:block}.hero{min-height:680px}.hero-content{padding-top:130px}.hero h1{font-size:16vw}.hero h1 em{margin-left:0}.hero-bottom p{font-size:13px}.about-grid{grid-template-columns:1fr}.portrait{height:500px}.stats,.ability-grid{grid-template-columns:1fr 1fr}.stats>div:nth-child(2){border-right:0}.ability-card{min-height:330px}.ability-card h3{margin-top:70px}.work-intro,.ability-title{flex-direction:column;align-items:flex-start;gap:25px}.project{height:65vh}.footer-main{flex-direction:column;align-items:flex-start;gap:60px}.contact-orbit{width:140px;height:140px}}@media (width<=560px){.section{padding:100px 24px}.hero-content{padding:120px 24px 40px}.hero h1{font-size:19vw}.eyebrow span:last-child{display:none}.round-link{width:68px;height:68px}.about-grid{margin-top:60px}.portrait{height:420px}.stats,.ability-grid{grid-template-columns:1fr}.stats>div,.stats>div:nth-child(2){border-right:0;border-bottom:1px solid var(--line)}.project{height:72vh;margin-bottom:70px}.project-top,.project-bottom{left:20px;right:20px}.project h3{font-size:30px}.ability-card{border-right:0;border-bottom:1px solid var(--line)}footer{padding:28px 24px}.footer-top span:last-child,.footer-bottom span:nth-child(2){display:none}.big-mail{font-size:18px}}.project-mosaic{columns:5;column-gap:18px;margin-top:34px;display:block}.project-tile-shell,.project-tile-shell.wide,.project-tile-shell.tall,.project-tile-shell.square,.project-tile-shell.landscape,.project-tile-shell.portrait{break-inside:avoid;vertical-align:top;grid-area:auto;width:100%;height:320px;margin:0 0 18px;display:inline-block}.project-tile-shell.wide{height:215px}.project-tile-shell.landscape{height:245px}.project-tile-shell.square{height:305px}.project-tile-shell.tall{height:440px}.project-tile-shell.portrait{height:390px}.project-tile-copy{bottom:15px;left:16px;right:52px}.project-tile-copy h3{font-size:clamp(16px,1.25vw,22px)}.project-tile-top{top:13px;left:14px;right:14px}.tile-open{width:34px;height:34px;bottom:14px;right:14px}@media (width<=1450px){.project-mosaic{columns:4}}@media (width<=1050px){.project-mosaic{columns:3}}@media (width<=720px){.project-mosaic{columns:2;display:block}.project-tile-shell,.project-tile-shell.wide,.project-tile-shell.tall,.project-tile-shell.square,.project-tile-shell.landscape,.project-tile-shell.portrait{height:300px;min-height:0;margin-bottom:14px}.project-tile-shell.wide,.project-tile-shell.landscape{height:200px}.project-tile-shell.tall,.project-tile-shell.portrait{height:390px}}@media (width<=460px){.project-mosaic{columns:1}}.experience{background:linear-gradient(115deg,#b7905f0e,#0000 38%);padding-top:190px;padding-bottom:190px}.experience-intro{justify-content:space-between;align-items:flex-end;margin:85px 0 95px;display:flex}.experience-intro h2{letter-spacing:-.04em;margin:0;font:500 clamp(44px,4.3vw,76px)/1.28 Noto Serif SC}.experience-intro>p{letter-spacing:.18em;color:var(--muted);font-size:11px}.career-layout{grid-template-columns:minmax(0,1.7fr) minmax(280px,.65fr);gap:8vw;display:grid}.timeline{position:relative}.timeline:before{content:"";background:var(--line);width:1px;position:absolute;top:8px;bottom:8px;left:146px}.timeline-item{grid-template-columns:125px 20px 1fr;gap:11px;min-height:175px;display:grid;position:relative}.timeline-item time{letter-spacing:.1em;color:#77746c;padding-top:5px;font-size:10px}.timeline-dot{border:1px solid var(--accent);background:var(--ink);z-index:2;border-radius:50%;width:7px;height:7px;margin-top:5px;position:relative}.timeline-item h3{color:#d6d2c7;margin:0 0 8px;font:500 24px Noto Serif SC}.timeline-item strong{letter-spacing:.14em;color:var(--accent);margin-bottom:18px;font-size:11px;font-weight:500;display:block}.timeline-item p{color:#85837b;max-width:720px;margin:0;font-size:13px;line-height:1.85}.experience-side{border-left:1px solid var(--line);padding-left:42px}.experience-side>div{border-bottom:1px solid var(--line);margin-bottom:42px;padding:0 0 42px}.experience-side>div:last-child{border:0}.experience-side>div>span{letter-spacing:.18em;color:var(--accent);margin-bottom:25px;font-size:9px;display:block}.experience-side p{color:#a8a59c;margin:0;font:500 19px/2 Noto Serif SC}.type-tags{flex-wrap:wrap;gap:8px;display:flex}.type-tags i{letter-spacing:.06em;color:#8f8c84;border:1px solid #36342f;padding:9px 12px;font-size:10px;font-style:normal}.footer-actions{border-top:1px solid #00000059;border-bottom:1px solid #00000059;grid-template-columns:1.25fr .9fr 1fr;display:grid;position:relative}.footer-actions>a,.footer-actions>button{min-height:110px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-right:1px solid #00000059;grid-template-rows:auto auto;grid-template-columns:28px 1fr auto;align-items:center;gap:8px 14px;padding:22px 25px;font-family:inherit;transition:all .3s;display:grid}.footer-actions>:last-child{border-right:0}.footer-actions>a:hover,.footer-actions>button:hover{color:#c09b6b;background:#0c0b09}.footer-actions svg{grid-row:1/3;width:18px}.footer-actions span{letter-spacing:.16em;opacity:.7;font-size:9px}.footer-actions strong{letter-spacing:.03em;font-size:15px;font-weight:500}.footer-actions>a>svg:last-child,.footer-actions>button>svg:last-child{grid-area:1/3/3}@media (width<=900px){.experience-intro{flex-direction:column;align-items:flex-start;gap:25px}.career-layout{grid-template-columns:1fr}.experience-side{border-left:0;border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:35px;padding:45px 0 0;display:grid}.footer-actions{grid-template-columns:1fr}.footer-actions>a,.footer-actions>button{border-bottom:1px solid #00000059;border-right:0}}@media (width<=600px){.timeline:before{left:6px}.timeline-item{grid-template-columns:20px 1fr;gap:10px;padding-bottom:45px}.timeline-item time{grid-column:2}.timeline-dot{grid-row:1/3}.experience-side{grid-template-columns:1fr}.footer-actions strong{font-size:13px}}@media print{*{transition:none!important;animation:none!important}html,body{color:#111!important;background:#fff!important;overflow:visible!important}.nav,.hero video,.hero-shade,.round-link,.contact-orbit,.lightbox,.tile-open,.project-view-hint{display:none!important}.hero{break-after:page;height:auto;min-height:0;padding:30px 0;background:#171717!important}.hero-content{height:auto;min-height:420px;position:relative;padding:40px!important}.hero h1{font-size:64px}.section{break-inside:auto;max-width:none!important;padding:45px 35px!important}.project-mosaic{columns:4!important}.project-tile-shell{break-inside:avoid;height:220px!important}.project-tile-shell.tall,.project-tile-shell.portrait{height:320px!important}.about-grid,.career-layout{break-inside:avoid}.portrait{height:420px}.experience,.about{background:#fff!important}.section-head,.timeline-item p,.about-summary p,.work-intro p{color:#444!important}.timeline-item h3,.about-copy h2,.work-intro h2,.experience-intro h2,.ability-title h2{color:#111!important}.ability-card{min-height:280px}.ability-card h3{margin-top:60px}footer{break-before:page;-webkit-print-color-adjust:exact;print-color-adjust:exact;min-height:500px;background:#b38d5c!important}.footer-actions button{display:none}.footer-actions{grid-template-columns:1fr 1fr}.footer-main p{font-size:56px}.footer-bg{display:none}@page{size:A4;margin:10mm}}.hero-canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.hero:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(115deg,#00000059,#0000 52%),repeating-linear-gradient(90deg,#0000 0 calc(12.5% - 1px),#ffffff06 12.5%);position:absolute;inset:0}.hero-shade{z-index:1;background:linear-gradient(90deg,#03040394,#05050408 62%),linear-gradient(#0000 42%,#060605ab)}.hero-artifacts{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.hero-artifacts i{border:1px solid #c4aa7e2e;animation:14s ease-in-out infinite artifactDrift;display:block;position:absolute}.hero-artifacts i:first-child{background:linear-gradient(90deg,#0000,#b7905f0b);width:22vw;height:8vw;top:23%;right:7%;transform:rotate(-16deg)}.hero-artifacts i:nth-child(2){width:9vw;height:25vw;animation-delay:-5s;bottom:-6%;right:30%;transform:rotate(32deg)}.hero-artifacts i:nth-child(3){background:radial-gradient(circle at 40% 35%,#dad3c112,#0000 62%);border-radius:50%;width:170px;height:170px;animation-delay:-9s;top:24%;left:7%}.hero-artifacts span{writing-mode:vertical-rl;letter-spacing:.32em;color:#d3cdbc59;font-size:8px;position:absolute;top:42%;right:3.5%}@keyframes artifactDrift{0%,to{translate:0;rotate:0deg}50%{translate:12px -18px;rotate:2deg}}@media (prefers-reduced-motion:reduce){.hero-artifacts i{animation:none}}.timeline:before{left:188px}.timeline-item{cursor:pointer;transform-origin:35%;perspective:900px;border-radius:2px;grid-template-columns:160px 30px minmax(0,1fr);gap:14px;min-height:205px;padding:20px 18px 28px 0;transition:transform .55s cubic-bezier(.2,.85,.2,1),background .45s,box-shadow .45s}.timeline-item time{text-align:right;white-space:nowrap;letter-spacing:.08em;grid-area:1/1;padding:7px 18px 0 0;font-size:10px;display:block}.timeline-item .timeline-dot{grid-area:1/2;width:9px;height:9px;margin:7px 0 0 1px;transition:all .45s;box-shadow:0 0 #b7905f00}.timeline-content{grid-area:1/3}.timeline-item:hover,.timeline-item:focus-visible{z-index:3;background:linear-gradient(90deg,#b7905f14,#ffffff05);outline:none;transform:perspective(900px)translateZ(45px)scale(1.035);box-shadow:0 28px 70px #00000047}.timeline-item:hover .timeline-dot,.timeline-item:focus-visible .timeline-dot{background:var(--accent);transform:scale(2);box-shadow:0 0 0 8px #b7905f1c}.timeline-more{opacity:0;color:#99968d;max-height:0;margin:0;padding:0 0 0 18px;font-size:12px;line-height:1.75;transition:max-height .65s cubic-bezier(.2,.8,.2,1),opacity .35s,margin .45s;overflow:hidden}.timeline-item:hover .timeline-more,.timeline-item:focus-visible .timeline-more{opacity:1;max-height:190px;margin:17px 0 8px}.timeline-more li{margin-bottom:5px}.timeline-content button{color:var(--accent);letter-spacing:.13em;cursor:pointer;opacity:.55;background:0 0;border:0;align-items:center;gap:9px;margin-top:14px;padding:0;font:500 9px Outfit;transition:all .3s;display:flex}.timeline-content button svg{width:14px}.timeline-item:hover button{opacity:1;gap:14px}.project-detail-layout{border:1px solid #ffffff12;flex:1;grid-template-columns:minmax(0,1fr) 340px;gap:0;min-height:0;display:grid;overflow:hidden}.project-detail-layout .lightbox-stage{background:#080807;min-width:0}.project-detail{background:#0d0d0b;border-left:1px solid #2f2e29;padding:45px 32px;overflow:auto}.project-detail>span{letter-spacing:.2em;color:var(--accent);font-size:9px}.project-detail h2{color:#dedacf;margin:22px 0 8px;font:500 32px/1.35 Noto Serif SC}.project-detail>strong{letter-spacing:.12em;color:#817e75;font-size:10px;font-weight:400}.project-detail>p{color:#918e85;margin:38px 0;font:400 13px/2 Noto Serif SC}.project-detail>div{border-top:1px solid #2d2c27;grid-template-columns:52px 1fr;gap:10px;padding:18px 0;display:grid}.project-detail i{letter-spacing:.14em;color:#66645e;font-size:9px;font-style:normal}.project-detail b{color:#aaa79e;font-size:10px;font-weight:400;line-height:1.7}.project-detail-layout .lightbox-stage img{max-width:calc(94vw - 340px)}@media (width<=950px){.timeline:before{left:148px}.timeline-item{grid-template-columns:125px 28px 1fr}.project-detail-layout{grid-template-columns:1fr}.project-detail{display:none}.project-detail-layout .lightbox-stage img{max-width:94vw}}@media (width<=600px){.timeline:before{left:5px}.timeline-item{grid-template-columns:20px 1fr;padding-right:0}.timeline-item time{text-align:left;grid-area:1/2;padding:0}.timeline-item .timeline-dot{grid-area:1/1/3}.timeline-content{grid-area:2/2}.timeline-item:hover,.timeline-item:focus-visible{transform:scale(1.01)}.timeline-more{opacity:1;max-height:none;margin:15px 0}.timeline-content button{opacity:1}}.timeline-cursor{z-index:1200;opacity:0;pointer-events:none;background:var(--accent);color:#0a0907;letter-spacing:.08em;border-radius:24px;justify-content:center;align-items:center;gap:7px;width:118px;height:42px;font-size:9px;transition:opacity .2s,transform .12s ease-out;display:flex;position:fixed;top:0;left:0;transform:translate(-200px,-200px)scale(.75);box-shadow:0 12px 32px #0000004d}.timeline-cursor svg{width:13px}.selected-project-cards{grid-template-columns:1fr 1fr;gap:12px;display:grid}.selected-project-cards button{color:#d8d4c8;text-align:left;cursor:pointer;height:116px;animation:6s ease-in-out infinite projectCardFloat;animation-delay:var(--delay);background:#11110f;border:1px solid #34332e;padding:0;transition:transform .35s,box-shadow .35s;position:relative;overflow:hidden}.selected-project-cards button:nth-child(2n){margin-top:14px}.selected-project-cards img{object-fit:cover;filter:saturate(.35)brightness(.38);width:100%;height:100%;transition:all .55s;position:absolute;inset:0}.selected-project-cards button:after{content:"";background:linear-gradient(#0000 30%,#050504cc);position:absolute;inset:0}.selected-project-cards i,.selected-project-cards strong,.selected-project-cards svg{z-index:2;position:absolute}.selected-project-cards i{letter-spacing:.12em;font:8px Outfit;top:9px;left:10px}.selected-project-cards strong{font:500 12px Noto Serif SC;bottom:11px;left:11px;right:30px}.selected-project-cards svg{width:14px;bottom:9px;right:9px}.selected-project-cards button:hover{transform:translateY(-5px)scale(1.025);box-shadow:0 18px 38px #00000059}.selected-project-cards button:hover img{filter:saturate(.7)brightness(.55);transform:scale(1.08)}@keyframes projectCardFloat{0%,to{translate:0}50%{translate:0 -6px}}@media (width<=900px){.selected-project-cards{grid-template-columns:repeat(3,1fr)}}@media (width<=600px){.timeline-cursor{display:none}.selected-project-cards{grid-template-columns:1fr 1fr}}.timeline-cursor{display:none!important}.timeline-view-label{opacity:0;color:var(--accent);letter-spacing:.13em;white-space:nowrap;font-size:9px;transition:all .35s;position:absolute;top:30px;right:20px;transform:translate(10px)}.timeline-item:hover .timeline-view-label,.timeline-item:focus-visible .timeline-view-label{opacity:1;transform:translate(0)}.type-tags{gap:15px 14px}.type-tags button{z-index:1;isolation:isolate;color:#8f8c84;letter-spacing:.055em;cursor:pointer;transform-origin:50%;background-color:#0000;background-image:linear-gradient(105deg,#0000 22%,#b7905f42 48%,#0000 72%);background-position:145% 0;background-repeat:no-repeat;background-size:230% 100%;border:1px solid #36342f;padding:7px 10px;font:400 9px Outfit;transition:transform .32s cubic-bezier(.2,.8,.2,1),border-color .3s,color .3s,background-color .3s,opacity .3s,filter .3s;position:relative;overflow:visible}.type-tags button:hover{z-index:8;border-color:var(--accent);color:#e0c9a9;background-color:#b7905f12;animation:.62s ease-out forwards tagSweep;transform:translateY(-3px)scale(1.07);box-shadow:0 10px 24px #0000004d}.type-tags:has(button:hover) button:not(:hover){opacity:.58;filter:brightness(.68);transform:scale(.96)}.type-tags button:active{transform:translateY(-1px)scale(1.02)}@keyframes tagSweep{0%{background-position:145% 0}to{background-position:-145% 0}}.type-tags button span{z-index:12;left:var(--burst-x);top:var(--burst-y);color:#d8af76;pointer-events:none;white-space:nowrap;text-shadow:0 2px 8px #00000080;font-size:10px;font-weight:600;animation:.82s cubic-bezier(.18,.75,.2,1) forwards tagPlusOne;position:absolute}@keyframes tagPlusOne{0%{opacity:0;transform:translate(-50%,4px)scale(.65)}20%{opacity:1;transform:translate(-50%)scale(1.08)}to{opacity:0;transform:translate(-50%,-19px)scale(.9)}}@media (width<=750px){.timeline-view-label{opacity:.8;margin-top:14px;display:block;position:static;transform:none}.type-tags button:hover{transform:translateY(-3px)scale(1.06)}}button,.selected-project-cards,.type-tags{-webkit-user-select:none;user-select:none}.type-tags button{-webkit-tap-highlight-color:transparent;outline:none}.type-tags button:focus:not(:focus-visible),.selected-project-cards button:focus:not(:focus-visible){outline:none}.type-tags button:focus-visible,.selected-project-cards button:focus-visible{outline:1px solid var(--accent);outline-offset:3px}.selected-project-cards:has(button:hover) button:not(:hover){filter:brightness(.48);opacity:.58;transform:scale(.9)}.selected-project-cards button{transform-origin:50%;transition:transform .48s cubic-bezier(.2,.85,.2,1),filter .45s,opacity .45s,box-shadow .35s}.selected-project-cards button:hover{z-index:3;filter:brightness(1.18);opacity:1;transform:translateY(-5px)scale(1.09)}.selected-project-cards button:hover img{filter:saturate(.82)brightness(.66)}.stats-wrap{isolation:isolate;position:relative}.number-field{z-index:-1;pointer-events:none;position:absolute;inset:60px -3vw -70px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.number-field i{left:var(--x);top:var(--y);color:#c3beb10e;letter-spacing:.03em;animation:7s ease-in-out infinite numberDrift;animation-delay:var(--d);font:300 clamp(18px,2vw,34px) Outfit;position:absolute}@keyframes numberDrift{0%,to{opacity:.28;translate:0 8px}50%{opacity:1;translate:0 -14px}}.stats{z-index:1;position:relative}.stats>div{transition:background .4s,transform .4s;position:relative;overflow:hidden}.stats>div:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(105deg,#0000 40%,#dfcfb229 50%,#0000 60%);position:absolute;inset:-50% -100%;transform:translate(-60%)}.stats>div:hover{background:#b7905f0e;transform:translateY(-3px)}.stats>div:hover:after{opacity:1;animation:.85s ease-out forwards statSweep}@keyframes statSweep{0%{transform:translate(-60%)}to{transform:translate(60%)}}@media (prefers-reduced-motion:reduce){.number-field i{animation:none}.stats>div:hover:after{opacity:.08;animation:none}}.lens-timeline{--lens-y:20%;perspective:1000px;padding:30px 0;position:relative;-webkit-mask-image:linear-gradient(#00000059,#000 12% 76%,#00000047 100%);mask-image:linear-gradient(#00000059,#000 12% 76%,#00000047 100%)}.lens-timeline:before{background:linear-gradient(to bottom,var(--line) 0,#b7905f2e calc(var(--lens-y) - 110px),var(--accent) var(--lens-y),#b7905f2e calc(var(--lens-y) + 110px),var(--line) 100%);box-shadow:0 0 16px #b7905f0a}.lens-timeline .timeline-item{will-change:transform,opacity,filter;transition:transform .32s cubic-bezier(.2,.8,.2,1),opacity .32s,filter .32s,background .4s,box-shadow .4s}.lens-timeline .timeline-item:hover{background:linear-gradient(90deg,#b7905f13,#ffffff03)}.lens-timeline .timeline-dot{transition:transform .3s,background .3s,box-shadow .3s}.lens-timeline .timeline-item:hover .timeline-dot{transform:scale(2.2)}@media (width<=700px){.lens-timeline{-webkit-mask-image:none;mask-image:none}.lens-timeline .timeline-item{opacity:1!important;filter:none!important;transform:none!important}}.lightbox{padding-bottom:14px}.lightbox-stage{perspective:1200px}.lightbox-image-frame{width:100%;height:100%;transform-style:preserve-3d;will-change:transform,opacity;place-items:center;display:grid}.lightbox-image-frame img{object-fit:contain;pointer-events:none;will-change:transform;width:auto;max-width:100%;height:auto;max-height:100%}.filmstrip{scrollbar-width:thin;scrollbar-color:#403e37 transparent;flex:0 0 82px;justify-content:center;align-items:center;gap:7px;height:82px;padding:9px 30px 3px;display:flex;overflow:auto hidden}.filmstrip button{cursor:pointer;opacity:.52;filter:brightness(.62)saturate(.55);background:#111;border:1px solid #34322d;flex:0 0 68px;height:51px;padding:0;transition:flex-basis .48s cubic-bezier(.2,.8,.2,1),height .48s,opacity .35s,filter .35s,transform .35s,border-color .35s;position:relative;overflow:hidden}.filmstrip button img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.filmstrip button span{color:#fff;letter-spacing:.1em;text-shadow:0 1px 4px #000;font-size:7px;position:absolute;top:4px;left:5px}.filmstrip button:hover{opacity:.88;filter:brightness(.85)saturate(.8);border-color:#81745f;transform:translateY(-5px)}.filmstrip button:hover img{transform:scale(1.08)}.filmstrip button.active{opacity:1;filter:brightness()saturate(.8);border-color:var(--accent);flex-basis:104px;height:65px;transform:translateY(-5px);box-shadow:0 9px 28px #00000073}.filmstrip:has(button:hover) button:not(:hover):not(.active){opacity:.32;transform:scale(.92)}.project-detail h2,.project-detail>strong,.project-detail>p,.project-detail>div{animation:.55s both detailReveal}.project-detail>strong{animation-delay:40ms}.project-detail>p{animation-delay:80ms}.project-detail>div{animation-delay:.12s}@keyframes detailReveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (width<=800px){.filmstrip{justify-content:flex-start;padding-left:10px;padding-right:10px}.filmstrip button{flex-basis:60px}.filmstrip button.active{flex-basis:86px}}.lightbox-image-frame{overflow:hidden}.lightbox-image-frame img{display:block;object-fit:contain!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:100%!important}.lightbox-image-frame.tall,.lightbox-image-frame.portrait{background:radial-gradient(circle,#ffffff06,#0000 60%);padding:24px 5%}.lightbox-image-frame.tall img,.lightbox-image-frame.portrait img{object-fit:contain!important;max-width:100%!important;max-height:calc(100vh - 245px)!important}.project-tile-shell.tall .project-tile,.project-tile-shell.portrait .project-tile{background:#0b0b09}.project-tile-shell.tall .project-tile img,.project-tile-shell.portrait .project-tile img{transform:scale(.94);object-fit:contain!important}.project-tile-shell.tall .project-tile:hover img,.project-tile-shell.portrait .project-tile:hover img{transform:scale(.98)!important}.lens-timeline .timeline-item{transition:transform .14s linear,opacity .18s ease-out,filter .2s ease-out,background .4s,box-shadow .4s}.timeline-more li{opacity:0;transform:translateY(16px)}.timeline-item:hover .timeline-more li,.timeline-item:focus-visible .timeline-more li{animation:.5s cubic-bezier(.2,.75,.2,1) forwards timelineTextRise}.timeline-item:hover .timeline-more li:nth-child(2),.timeline-item:focus-visible .timeline-more li:nth-child(2){animation-delay:70ms}.timeline-item:hover .timeline-more li:nth-child(3),.timeline-item:focus-visible .timeline-more li:nth-child(3){animation-delay:.14s}@keyframes timelineTextRise{0%{opacity:0;filter:blur(3px);transform:translateY(18px)}to{opacity:1;filter:blur();transform:translateY(0)}}@media (width<=600px){.timeline-more li{opacity:1;transform:none}}.capability-loop-wrap{isolation:isolate;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:130px;padding:30px 0;position:relative;overflow:hidden}.capability-loop-wrap .number-field{z-index:-1;inset:-20px 0}.cap-loop-card{background:linear-gradient(135deg,#191815f5,#0c0c0af2);border:1px solid #302f2a;grid-template-columns:58px 1fr;align-items:center;gap:18px;width:330px;min-height:142px;padding:24px 25px;transition:border-color .35s,background .35s,box-shadow .35s;display:grid;position:relative;overflow:hidden}.cap-loop-card:after{content:"";opacity:0;background:linear-gradient(105deg,#0000 42%,#cdab7921 50%,#0000 58%);position:absolute;inset:-50% -80%;transform:translate(-55%)}.logoloop__item:hover .cap-loop-card{background:linear-gradient(135deg,#28221afa,#0e0d0bfa);border-color:#b7905fa6;box-shadow:0 18px 48px #00000057}.logoloop__item:hover .cap-loop-card:after{opacity:1;animation:.75s ease-out capSweep}.cap-loop-card>span{width:54px;height:54px;color:var(--accent);border:1px solid #b7905f66;border-radius:50%;place-items:center;transition:transform .45s cubic-bezier(.2,.8,.2,1),background .35s,color .35s;display:grid}.cap-loop-card>span svg{width:24px}.logoloop__item:hover .cap-loop-card>span{background:var(--accent);color:#0b0a08;transform:rotate(-8deg)scale(1.12)}.cap-loop-card small{letter-spacing:.18em;color:#77746c;margin-bottom:11px;font-size:8px;display:block}.cap-loop-card strong{color:#d7d3c8;margin-bottom:8px;font:500 20px Noto Serif SC;display:block}.cap-loop-card p{color:#7f7d75;white-space:normal;margin:0;font:400 11px/1.6 Noto Serif SC}.capability-loop-wrap .logoloop{padding:12px 0}.capability-loop-wrap .logoloop__node{font-size:initial}@keyframes capSweep{0%{transform:translate(-55%)}to{transform:translate(55%)}}@media (width<=600px){.capability-loop-wrap{margin-top:90px}.cap-loop-card{grid-template-columns:48px 1fr;width:280px;padding:20px}.cap-loop-card>span{width:45px;height:45px}.cap-loop-card strong{font-size:17px}}@media print{.capability-loop-wrap{overflow:visible}.capability-loop-wrap .logoloop__track{transform:none!important}.capability-loop-wrap .logoloop__list:not(:first-child){display:none}.cap-loop-card{width:250px}}@property --profile-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.portrait-reveal{perspective:900px;height:620px}.portrait-reveal .portrait{isolation:isolate;width:100%;height:100%;transform-style:preserve-3d;will-change:transform;transition:transform .65s cubic-bezier(.2,.85,.2,1),box-shadow .5s}.portrait-reveal .portrait:after{content:"";z-index:4;pointer-events:none;background:conic-gradient(from var(--profile-angle),transparent 0 62%,#b7905f26 72%,#d5b27c 78%,#b7905f1f 84%,transparent 92%);-webkit-mask-composite:xor;padding:1px;animation:4.5s linear infinite profileOutline;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.portrait-reveal .portrait:hover{box-shadow:0 32px 80px #0000006b}.portrait-reveal .portrait-art{will-change:transform;transition:transform .7s cubic-bezier(.2,.85,.2,1),filter .5s}.portrait-reveal .portrait:hover .portrait-art{filter:brightness(1.08)saturate(1.06)}.portrait-reveal .portrait-art:after{animation:5s ease-in-out infinite portraitLight}.about-copy h2,.about-summary p,.contacts>*{will-change:transform,opacity,filter}@keyframes profileOutline{to{--profile-angle:360deg}}@keyframes portraitLight{0%,to{opacity:.35;transform:translate(-35%)}50%{opacity:.8;transform:translate(35%)}}@media (width<=900px){.portrait-reveal{height:500px}}@media (width<=560px){.portrait-reveal{height:420px}}@media (prefers-reduced-motion:reduce){.portrait-reveal .portrait:after,.portrait-reveal .portrait-art:after{animation:none}}.pressure-heading{width:min(920px,72vw);overflow:visible}.pressure-heading .text-pressure{height:clamp(56px,5.5vw,92px)}.pressure-heading .text-pressure>div{white-space:nowrap;font-weight:500;letter-spacing:-.055em!important;font-family:Noto Sans SC,Microsoft YaHei,sans-serif!important;font-size:clamp(42px,4vw,70px)!important;line-height:1!important}.pressure-heading .text-pressure span{transform-origin:bottom;transition:color .28s;display:inline-block}.pressure-heading-secondary>div{color:#aaa79d!important;font-weight:300!important}.pressure-heading:before{content:"";background:var(--accent);width:42px;height:2px;margin-bottom:23px;display:block;box-shadow:58px 0 #b7905f47}.work-intro .pressure-heading,.ability-title .pressure-heading{flex:0 920px}.about-pressure{width:100%}.about-copy>.pressure-heading{margin-bottom:50px}.experience-intro>.pressure-heading{flex:0 920px}.experience-intro{align-items:flex-end}@media (width<=700px){.pressure-heading{width:100%}.pressure-heading .text-pressure{height:52px}.pressure-heading .text-pressure>div{font-size:36px!important}.pressure-heading:before{margin-bottom:17px}.about-copy>.pressure-heading{margin-bottom:34px}}.project-mosaic{columns:5;column-gap:18px}.project-tile-shell,.project-tile-shell.wide,.project-tile-shell.tall,.project-tile-shell.square,.project-tile-shell.landscape,.project-tile-shell.portrait,.project-tile-shell.natural{break-inside:avoid;width:100%;margin:0 0 18px;display:inline-block;height:auto!important;min-height:0!important}.project-tile{cursor:grab;min-height:120px;height:auto!important}.project-tile:active{cursor:grabbing}.project-tile img,.project-tile-shell.tall .project-tile img,.project-tile-shell.portrait .project-tile img{display:block;object-fit:contain!important;width:100%!important;height:auto!important;max-height:none!important;transform:scale(1)!important}.project-tile:hover img,.project-tile-shell.tall .project-tile:hover img,.project-tile-shell.portrait .project-tile:hover img{transform:scale(1.035)!important}.project-tile-shell.is-dragging{filter:saturate(.2);transform:scale(.96);opacity:.32!important}.project-tile-shell.is-dragging .project-tile{box-shadow:0 0 0 1px var(--accent)}.project-tile-top span:last-child:empty{display:none}@media (width<=1450px){.project-mosaic{columns:4}}@media (width<=1050px){.project-mosaic{columns:3}}@media (width<=720px){.project-mosaic{columns:2}}@media (width<=460px){.project-mosaic{columns:1}}.project-detail-layout{height:100%;min-height:0}.project-detail-layout .lightbox-stage{height:100%;min-height:0;padding:18px;overflow:hidden}.lightbox-image-frame,.lightbox-image-frame.tall,.lightbox-image-frame.portrait,.lightbox-image-frame.natural{background:0 0;width:100%;min-width:0;height:100%;min-height:0;padding:0}.project-detail-layout .lightbox-stage .lightbox-image-frame img,.lightbox-image-frame.tall img,.lightbox-image-frame.portrait img,.lightbox-image-frame.natural img{display:block;object-fit:contain!important;object-position:center!important;width:100%!important;max-width:100%!important;height:100%!important;max-height:100%!important}.lightbox-stage.zoomed .lightbox-image-frame img{object-fit:contain!important}@media (width<=800px){.project-detail-layout .lightbox-stage{padding:10px}}.filmstrip{scroll-behavior:smooth;padding-left:8%;padding-right:8%;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 7% 93%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 7% 93%,#0000 100%)}.filmstrip button{border-radius:4px}.filmstrip button img{border-radius:3px}.filmstrip button.active{z-index:4;border-color:#d0aa70;animation:2.2s ease-in-out infinite filmActiveBreath}.filmstrip button.active:after{content:"";pointer-events:none;border:1px solid #ecca9380;border-radius:2px;position:absolute;inset:2px}.filmstrip button.active span{color:#f0d8b1;font-weight:600}@keyframes filmActiveBreath{0%,to{box-shadow:0 0 0 1px #b7905f40,0 8px 24px #0006}50%{box-shadow:0 0 0 2px #ddb373d9,0 0 22px #b7905f6b,0 10px 30px #0000007a}}.type-tags button,.selected-project-cards button{border-radius:4px}.selected-project-cards button img{border-radius:3px}@media (prefers-reduced-motion:reduce){.filmstrip button.active{animation:none}}.lightbox-stage{position:relative;background:#070807!important}.lightbox-hint{z-index:8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#8d8a82;white-space:nowrap;pointer-events:none;background:#0707069e;border-radius:4px;min-height:0;margin:0;padding:7px 13px;position:absolute;bottom:12px;left:50%;transform:translate(-50%);height:auto!important}.filmstrip button.active{overflow:visible;box-shadow:0 8px 24px #0000006b;animation:none!important}.filmstrip button.active:before,.filmstrip button.active:after{content:"";z-index:-1;pointer-events:none;border:1px solid #d3ac70b8;border-radius:4px;animation:1.8s ease-out infinite filmEdgeRipple;position:absolute;inset:-1px}.filmstrip button.active:after{animation-delay:.9s;inset:-1px}.filmstrip button.active img{border-radius:3px;overflow:hidden}.lightbox-image-frame{justify-content:center;align-items:center;width:100%!important;height:100%!important;display:flex!important;overflow:visible!important}.project-detail-layout .lightbox-stage .lightbox-image-frame img{transform-origin:50%;object-fit:contain!important;object-position:center!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:100%!important;display:block!important}@keyframes filmEdgeRipple{0%{opacity:.8;transform:scale(1);box-shadow:0 0 #b7905f47}to{opacity:0;transform:scale(1.12);box-shadow:0 0 0 5px #b7905f00}}@media (prefers-reduced-motion:reduce){.filmstrip button.active:before,.filmstrip button.active:after{animation:none}}.hero-signature{color:#d9d5c9;isolation:isolate;align-items:stretch;min-width:min(540px,58vw);display:flex;position:relative}.hero-signature:before{content:"";transform-origin:0;background:linear-gradient(90deg,#d6cfbe99,#b7905f33,#0000);height:1px;animation:1.2s cubic-bezier(.22,1,.36,1) .4s both signatureLine;position:absolute;top:-18px;left:0;right:0}.signature-name{border-right:1px solid #d6cfbe40;align-items:flex-end;gap:10px;padding:2px 26px 2px 0;display:flex}.signature-name b{letter-spacing:-.08em;white-space:nowrap;text-shadow:0 8px 26px #00000059;font:600 clamp(28px,3vw,48px)/.9 Noto Serif SC}.signature-name span{letter-spacing:.22em;color:#8f8b80;font:500 7px/1.35 Outfit;transform:translateY(-1px)}.signature-roles{grid-template-columns:24px auto;align-items:baseline;gap:2px 12px;padding:0 0 0 24px;display:grid}.signature-roles i{letter-spacing:.16em;color:#b7905f;grid-row:span 2;font:400 8px Outfit}.signature-roles strong{letter-spacing:.08em;color:#d4d0c5;font:400 clamp(12px,1.15vw,16px)/1.2 Noto Serif SC}.signature-roles small{letter-spacing:.24em;color:#77746d;margin-bottom:7px;font:400 7px/1 Outfit}.hero-signature:hover .signature-name b{color:#eee9dc}.signature-name b,.signature-roles strong{transition:color .4s,text-shadow .4s}.hero-signature:hover .signature-name b{text-shadow:0 0 28px #b7905f33}@keyframes signatureLine{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@media (width<=700px){.hero-signature{width:72vw;min-width:0}.signature-name{padding-right:15px}.signature-name span{display:none}.signature-roles{column-gap:7px;padding-left:15px}.signature-roles small{letter-spacing:.14em}.hero-bottom{gap:18px}}@media (width<=480px){.signature-name b{font-size:26px}.signature-roles strong{font-size:10px}.signature-roles small{font-size:6px}.round-link{flex:0 0 68px}}@supports (content-visibility:auto){.work-gallery,.about,.experience,.ability,footer{content-visibility:auto;contain-intrinsic-size:auto 900px}}img{content-visibility:auto}.project-tile img,.selected-project-cards img,.filmstrip img{background:#11110f}.timeline-content .timeline-view-label{opacity:0;width:max-content;color:var(--accent);letter-spacing:.13em;white-space:nowrap;margin:12px 0 0;font-size:9px;transition:opacity .35s,transform .35s;display:block;position:static;transform:translateY(8px)}.timeline-item:hover .timeline-content .timeline-view-label,.timeline-item:focus-visible .timeline-content .timeline-view-label{opacity:1;transform:translateY(0)}.timeline-item:hover .timeline-more,.timeline-item:focus-visible .timeline-more{max-height:580px}.timeline-item:hover .timeline-more li:nth-child(4),.timeline-item:focus-visible .timeline-more li:nth-child(4){animation:.5s cubic-bezier(.2,.75,.2,1) .21s forwards timelineTextRise}.timeline-item:hover .timeline-more li:nth-child(5),.timeline-item:focus-visible .timeline-more li:nth-child(5){animation:.5s cubic-bezier(.2,.75,.2,1) .28s forwards timelineTextRise}.timeline-item:hover .timeline-more li:nth-child(6),.timeline-item:focus-visible .timeline-more li:nth-child(6){animation:.5s cubic-bezier(.2,.75,.2,1) .35s forwards timelineTextRise}@media (width<=600px){.timeline-content .timeline-view-label{opacity:.8;transform:none}.timeline-more li:nth-child(n){opacity:1;transform:none;animation:none!important}}.copy-contact{color:inherit;font:inherit;cursor:copy;transform-origin:50%;background:0 0;border:0;border-radius:3px;align-items:center;gap:9px;margin:-7px -9px;padding:7px 9px;transition:color .25s,background .25s,box-shadow .25s;display:flex;position:relative}.copy-contact:hover{color:#d8bd91;background:#b7905f14}.copy-contact:focus-visible{outline:1px solid var(--accent);outline-offset:3px}.copy-contact.is-copied{color:#e1c79e;background:#b7905f1f;box-shadow:0 0 0 1px #b7905f2e}.copy-toast{z-index:5;color:#d9bd91;letter-spacing:.12em;white-space:nowrap;pointer-events:none;background:#17150f;border:1px solid #b7905f61;border-radius:3px;padding:6px 9px;font-size:9px;line-height:1;position:absolute;bottom:calc(100% + 9px);right:0;box-shadow:0 8px 22px #0000004d}.copy-toast:after{content:"";border:4px solid #0000;border-top-color:#b7905f80;position:absolute;top:100%;right:12px}@media (prefers-reduced-motion:reduce){.copy-contact{transition:none}}.navlinks a{padding-bottom:16px;position:relative}.navlinks a:before,.navlinks a:after{content:"";pointer-events:none;transform-origin:0;opacity:0;will-change:transform, opacity;position:absolute;left:0;transform:scaleX(0);right:auto!important}.navlinks a:before{clip-path:polygon(0 0,94% 0,100% 100%,0 100%);background:linear-gradient(90deg,#f2f1ebf2,#f2f1eb4d 82%,#0000);width:100%;height:1px;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .35s;bottom:8px}.navlinks a:after{clip-path:polygon(0 0,88% 0,100% 50%,88% 100%,0 100%);background:linear-gradient(90deg,#c69a49,#e2bd6b 70%,#0000);width:38%;height:2px;transition:transform .6s cubic-bezier(.16,1,.3,1) 60ms,opacity .35s 50ms;bottom:3px;box-shadow:0 0 8px #daae5873}.navlinks a.active:before,.navlinks a.active:after{opacity:1;transform:scaleX(1)}.navlinks a:not(.active):hover:before{opacity:.35;transform:scaleX(.5)}.navlinks a:not(.active):hover:after{opacity:.5;transform:scaleX(.32)}@media (width<=760px){.navlinks a{width:max-content;padding-bottom:14px}}.tile-media-transform,.gif-preview{background:#080a0b;width:100%;transition:transform .65s cubic-bezier(.16,1,.3,1);display:block;position:relative;overflow:hidden}.project-tile .tile-media-transform video,.project-tile .gif-preview canvas,.project-tile .gif-preview img{display:block;object-fit:contain!important;width:100%!important;height:auto!important}.gif-preview canvas{width:100%;height:auto;display:block}.gif-preview .gif-live{object-fit:contain;width:100%;position:absolute;inset:0;height:100%!important}.gif-preview .gif-loader{opacity:0;pointer-events:none;position:absolute;width:1px!important;height:1px!important}.media-kind{z-index:3;color:#d8b46c;letter-spacing:.16em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#060809ad;border:1px solid #e2bd6b73;border-radius:3px;padding:4px 7px;font:9px/1 sans-serif;position:absolute;bottom:12px;right:12px}.video-frame{overflow:hidden!important}.video-detail-player{background:#050606;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.video-detail-player>video{object-fit:contain;width:100%;height:100%;display:block}.video-center-play{z-index:4;color:#eee9dc;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#080b0c85;border:1px solid #eee9da94;border-radius:50%;place-items:center;width:78px;height:78px;padding-left:5px;transition:transform .35s,border-color .35s,color .35s;animation:2.4s ease-out infinite mediaPlayPulse;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 #d8b46c47}.video-center-play:hover{color:#d8b46c;border-color:#d8b46c;transform:translate(-50%,-50%)scale(1.08)}.video-center-play svg{width:26px;height:26px}.video-controls{z-index:5;color:#d6d2c8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#050708c2;border:1px solid #eae7da29;border-radius:4px;grid-template-columns:32px 42px minmax(130px,1fr) 42px 32px 42px;align-items:center;gap:10px;width:min(720px,100% - 32px);min-height:42px;padding:0 14px;display:grid;position:absolute;bottom:5px;left:50%;right:auto;transform:translate(-50%)}.video-controls button{color:#e0bb70;background:0 0;border:0;place-items:center;width:30px;height:30px;display:grid}.video-controls button svg{width:16px;height:16px}.video-controls span{letter-spacing:.04em;color:#98958d;font:10px/1 monospace}.video-controls .video-progress{appearance:none;cursor:pointer;background:0 0;width:100%;height:14px;margin:0}.video-controls .video-progress::-webkit-slider-runnable-track{background:linear-gradient(90deg, #d3aa60 var(--media-progress), #ebe8da33 var(--media-progress));height:2px}.video-controls .video-progress::-webkit-slider-thumb{appearance:none;background:#0a0b0b;border:1px solid #e5c47d;border-radius:50%;width:10px;height:10px;margin-top:-4px;box-shadow:0 0 8px #d3aa60a6}.video-volume{place-items:center;display:grid;position:relative}.video-volume-popover{opacity:0;pointer-events:none;background:#050708e6;border:1px solid #eae7da29;border-radius:3px;place-items:center;width:112px;height:34px;padding:0 12px;transition:opacity .22s,transform .3s cubic-bezier(.22,1,.36,1);display:grid;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,7px)}.video-volume:hover .video-volume-popover,.video-volume:focus-within .video-volume-popover{opacity:1;pointer-events:auto;transform:translate(-50%)}.video-volume-popover input{appearance:none;cursor:pointer;background:0 0;width:100%;height:12px}.video-volume-popover input::-webkit-slider-runnable-track{background:linear-gradient(90deg, #d3aa60 var(--volume-level), #ebe8da33 var(--volume-level));height:2px}.video-volume-popover input::-webkit-slider-thumb{appearance:none;background:#0a0b0b;border:1px solid #e5c47d;border-radius:50%;width:9px;height:9px;margin-top:-3.5px}.video-rate{letter-spacing:.04em;font:9px/1 Outfit,sans-serif;transition:color .25s,background .25s;color:#aaa69c!important;width:40px!important}.video-rate-wrap{place-items:center;display:grid;position:relative}.video-rate-wrap.is-open .video-rate{background:#d3aa601a;color:#e0bb70!important}.video-rate-menu{z-index:12;transform-origin:bottom;background:#050708f0;border:1px solid #eae7da29;border-radius:3px;flex-direction:column;width:64px;padding:5px;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 12px 30px #0000006b}.video-rate-menu button{color:#8f8c85;width:100%;height:29px;font:9px/1 Outfit,sans-serif;transition:color .2s,background .2s}.video-rate-menu button:hover,.video-rate-menu button.active{color:#d8b46c;background:#d3aa6014}.video-rate:hover{background:#d3aa6014;color:#e0bb70!important}.filmstrip button video,.filmstrip .film-gif,.filmstrip .film-gif canvas{object-fit:cover;width:100%;height:100%!important}.filmstrip .media-kind{display:none}@keyframes mediaPlayPulse{0%{box-shadow:0 0 #d8b46c4d}70%,to{box-shadow:0 0 0 18px #d8b46c00}}@media (width<=760px){.video-center-play{width:60px;height:60px}.video-controls{grid-template-columns:28px 36px minmax(70px,1fr) 36px 28px 38px;gap:4px;width:calc(100% - 16px);padding:0 7px;bottom:3px}}@media (prefers-reduced-motion:reduce){.video-center-play{animation:none}}.project-detail{position:relative;background:linear-gradient(135deg,#c0964d06,#0000 44%),#0d0d0b!important;padding:46px 30px 34px!important}.project-detail:before{content:"PROJECT NOTES";color:#cda55b6b;letter-spacing:.28em;margin-bottom:24px;font:8px/1 sans-serif;display:block}.project-editable{cursor:text;border-radius:2px;outline:none;min-width:1em;transition:color .28s,background .28s,box-shadow .28s;position:relative}.project-editable:hover,.project-editable:focus{background:#d7b26a0e;box-shadow:inset 2px 0 #d7b26aa8}.project-editable:focus{color:#ece7da!important}.project-editable-tag{width:max-content;max-width:100%;padding:5px 8px 5px 0;line-height:1.4;display:block;color:#cfa85d!important;letter-spacing:.24em!important;font-size:8px!important}.project-editable-title{padding:2px 7px 4px 0;color:#e1ddd2!important;margin:18px 0 10px!important;font-size:clamp(25px,2.15vw,34px)!important;line-height:1.3!important}.project-editable-role{width:fit-content;max-width:100%;padding:4px 8px 4px 0;line-height:1.65;display:block;color:#d5ae62!important;letter-spacing:.12em!important;font-size:10px!important}.project-editable-description{white-space:pre-wrap;background:linear-gradient(90deg,#cda55b0b,#0000 85%);border-left:1px solid #cda55b7a;padding:13px 13px 13px 17px;color:#aaa69b!important;margin:34px 0 30px!important;font-size:12px!important;line-height:2.05!important}.project-detail>div:not(.model-material-list):not(.model-info-grid){align-items:start;position:relative;border-top-color:#ded6c21f!important;grid-template-columns:48px minmax(0,1fr)!important;gap:16px!important;padding:18px 4px!important}.project-detail>div:after{content:"";background:#cba45a;width:22px;height:1px;position:absolute;top:-1px;left:0}.project-detail i{padding-top:4px;color:#77736a!important}.project-editable-meta{padding:3px 7px;font-size:10px;line-height:1.8;display:block;color:#d2ad66!important}.project-editable:empty:before{content:"点击输入内容";color:#9793898c}body:not(.local-editor) .project-editable:hover,body:not(.local-editor) .project-editable:focus{box-shadow:none;background:0 0}@media (width<=1050px){.project-detail{padding:34px 24px 28px!important}}.work-intro{margin-bottom:44px!important}.work-gallery-toolbar{z-index:12;border-top:1px solid #cdc9bc21;justify-content:space-between;align-items:flex-start;gap:32px;min-height:54px;margin:0 0 22px;padding-top:17px;display:flex;position:relative}.collision-hint{isolation:isolate;color:#77756f;letter-spacing:.1em;white-space:nowrap;border-left:1px solid #caa1586b;align-items:center;gap:9px;min-width:330px;padding:10px 20px 10px 48px;font-size:11px;display:flex;position:relative;overflow:hidden}.collision-hint:before{content:"01";color:#b99055;letter-spacing:.15em;font:8px/1 Outfit,sans-serif;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.collision-hint:after{content:none}.collision-hint span{z-index:1;transform-origin:50%;display:inline-block;position:relative}.collision-hint span:first-of-type{--signal-delay:0s}.collision-hint span:nth-of-type(2){--signal-delay:80ms;color:#b59762}.collision-hint span:nth-of-type(3){--signal-delay:.16s}.collision-hint span:nth-of-type(4){--signal-delay:.24s;color:#aaa69c}.collision-hint i{z-index:1;transform-origin:50%;background:linear-gradient(90deg,#0000,#8c7246 25% 75%,#0000);width:24px;height:1px;margin:0 7px;position:relative}.work-filter{flex:0 0 174px;position:relative}.work-filter-trigger{color:#a5a198;letter-spacing:.12em;text-align:left;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#0c0d0cd1;border:1px solid #dbd6c733;border-radius:3px;grid-template-columns:17px 1fr 14px;align-items:center;gap:11px;width:100%;height:42px;padding:0 13px;font-size:11px;transition:border-color .35s,color .35s,transform .35s,background .35s;display:grid;position:relative;overflow:hidden}.work-filter-trigger:before{content:"";background:linear-gradient(105deg,#0000 25%,#d1aa6021 48%,#0000 68%);position:absolute;inset:0;transform:translate(-120%)}.work-filter-trigger:hover,.work-filter-trigger.is-open{color:#ddd8cc;border-color:#d2ab6094;transform:translateY(-2px)}.work-filter-trigger.is-open:before{animation:.7s filterSweep}.work-filter-trigger.has-filter{color:#d4ad64;border-color:#d2ab606b}.work-filter-trigger svg{width:15px;height:15px}.work-filter-trigger svg:last-child{width:13px;transition:transform .38s cubic-bezier(.22,1,.36,1)}.work-filter-trigger.is-open svg:last-child{transform:rotate(180deg)}.work-filter-menu{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform-origin:top;background:#0a0b0af0;border:1px solid #dbd6c72e;border-radius:3px;width:100%;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 22px 55px #00000075}.work-filter-menu button{color:#918e86;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #ffffff0e;grid-template-columns:25px 1fr 16px;align-items:center;width:100%;min-height:40px;padding:0 9px;transition:color .25s,background .25s,padding-left .3s;display:grid}.work-filter-menu button:last-child{border-bottom:0}.work-filter-menu button:hover,.work-filter-menu button.active{color:#d7d2c7;background:#cda55b12;padding-left:13px}.work-filter-menu button.active{color:#d3aa60}.work-filter-menu small{color:#6f6c65;letter-spacing:.1em;font-size:7px}.work-filter-menu span{letter-spacing:.16em;font-size:11px}.work-filter-menu i{transform-origin:0;background:#b68e53;width:13px;height:1px;transition:transform .3s;transform:scaleX(0)}.work-filter-menu button:hover i,.work-filter-menu button.active i{transform:scaleX(1)}@keyframes filterSweep{to{transform:translate(120%)}}@media (width<=720px){.work-gallery-toolbar{flex-direction:column;align-items:stretch}.collision-hint{white-space:normal;flex-wrap:wrap}.work-filter{flex-basis:auto;align-self:flex-end;width:174px}}@media (prefers-reduced-motion:reduce){.collision-hint span,.collision-hint i,.collision-hint:after{animation:none}}.work-drag-ghost{z-index:9999;color:#d8d3c7;pointer-events:none;background:#0b0d0df0;border:1px solid #d1aa609e;border-radius:3px;flex-direction:column;justify-content:center;width:190px;min-height:62px;padding:12px 16px;display:flex;position:fixed;top:-200px;left:-200px;box-shadow:0 16px 42px #0000008c}.work-drag-ghost small{color:#b59055;letter-spacing:.2em;margin-bottom:7px;font-size:7px}.work-drag-ghost strong{text-overflow:ellipsis;white-space:nowrap;font:400 12px/1.4 Noto Serif SC;overflow:hidden}.work-drag-ghost.is-visible{will-change:transform;top:0;left:0}body.work-pointer-dragging,body.work-pointer-dragging *{-webkit-user-select:none!important;user-select:none!important;cursor:grabbing!important}.project-mosaic.is-reordering .project-tile-shell{animation-play-state:paused!important}.project-mosaic.is-reordering .project-tile{transition:opacity .2s,filter .2s!important}.project-mosaic.is-reordering .project-tile-shell:not(.is-dragging) .project-tile{opacity:.72;filter:saturate(.72)}.project-tile-shell.drop-before,.project-tile-shell.drop-after{position:relative}.project-tile-shell.drop-before:before,.project-tile-shell.drop-after:after{content:"";z-index:12;pointer-events:none;background:linear-gradient(90deg,#0000,#d0a45a 12%,#e0c184 50%,#d0a45a 88%,#0000);height:2px;position:absolute;left:5%;right:5%;box-shadow:0 0 12px #cfa45a7a}.drop-slot{z-index:20;color:#d5b370;pointer-events:none;background:#161410eb;border:1px solid #d7b1698c;border-radius:3px;grid-template-columns:20px auto 1fr;align-items:center;gap:9px;height:30px;padding:0 10px;animation:.22s cubic-bezier(.22,1,.36,1) both dropSlotIn;display:grid;position:absolute;left:5%;right:5%;overflow:hidden;box-shadow:0 8px 24px #00000075,inset 0 0 18px #cc9e500b}.drop-slot-before{top:-35px}.drop-slot-after{bottom:-33px}.drop-slot span{font-size:12px}.drop-slot b{letter-spacing:.18em;white-space:nowrap;font-size:9px;font-weight:400}.drop-slot i{background:linear-gradient(90deg,#d5b370bf,#0000);height:1px}.project-tile-shell.drop-before:before{top:-10px}.project-tile-shell.drop-after:after{bottom:-8px}.project-tile-shell.drop-before .project-tile,.project-tile-shell.drop-after .project-tile{box-shadow:0 0 0 1px #cfa45a5c,0 20px 50px #0000005c;opacity:1!important;filter:none!important}::view-transition-group(*){animation-duration:.48s;animation-timing-function:cubic-bezier(.22,1,.36,1)}@keyframes dropSlotIn{0%{opacity:0;transform:scaleX(.72)}to{opacity:1;transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation-duration:10ms}}.filmstrip{cursor:grab;-webkit-user-select:none;user-select:none}.filmstrip.is-scrubbing{cursor:grabbing;scroll-behavior:auto!important}.filmstrip.is-scrubbing button{pointer-events:none;transition-duration:.18s!important}.filmstrip button.scrub-target{z-index:5;opacity:1;filter:brightness()saturate(.9);border-color:#d4ab61;transform:translateY(-6px)scale(1.08);box-shadow:0 0 0 1px #d4ab614d,0 10px 28px #0000008c}.filmstrip button.scrub-target:after{content:"松开预览";z-index:8;color:#d6b26d;letter-spacing:.12em;background:#070808d1;border-radius:2px;width:max-content;padding:3px 5px;font-size:7px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){.filmstrip button.scrub-target{transform:none}}.portrait-art-image{isolation:isolate;background:#14120f}.portrait-art-image:before{content:none!important}.portrait-art-image:after{content:"";z-index:3;pointer-events:none;mix-blend-mode:soft-light;background:radial-gradient(circle at 72% 19%,#cfa06524,#0000 25%),linear-gradient(112deg,#0808072e 16%,#0000 48%,#c9965b14 66%,#05050533 88%);position:absolute;inset:0;animation:14s ease-in-out infinite portraitAtmosphere!important}.portrait-image{object-fit:cover;object-position:center;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:absolute;inset:0}.portrait-image-base{z-index:1;will-change:filter, transform;animation:13s cubic-bezier(.45,0,.55,1) infinite portraitSlowFocus}.portrait-image-ghost{z-index:2;opacity:.06;filter:blur(8px)brightness(1.16);mix-blend-mode:screen;clip-path:polygon(18% 0,100% 0,100% 72%,67% 72%,67% 100%,10% 100%);will-change:opacity, filter, transform;animation:16s cubic-bezier(.45,0,.55,1) infinite portraitGhost}.portrait-atmosphere{z-index:4;pointer-events:none;background:linear-gradient(90deg,#0000002e,#0000 38%,#d5a5690b 72%,#0000001f);animation:12s ease-in-out infinite portraitShade;position:absolute;inset:0;box-shadow:inset 0 0 80px #00000057}@keyframes portraitSlowFocus{0%,to{filter:brightness(.82)contrast(1.05)saturate(.9)blur(.25px);transform:scale(1.012)}48%{filter:brightness(.96)contrast(1.1)saturate()blur();transform:scale(1.026)}72%{filter:brightness(.88)contrast(1.07)saturate(.94)blur(.45px);transform:scale(1.019)}}@keyframes portraitGhost{0%,to{opacity:.035;filter:blur(9px)brightness(1.1);transform:translate(-2px,1px)scale(1.018)}50%{opacity:.13;filter:blur(3px)brightness(1.23);transform:translate(3px,-2px)scale(1.032)}}@keyframes portraitAtmosphere{0%,to{opacity:.42;transform:translate(-1.5%)}50%{opacity:.8;transform:translate(1.5%)}}@keyframes portraitShade{0%,to{opacity:.88}50%{opacity:.48}}@media (prefers-reduced-motion:reduce){.portrait-image,.portrait-art-image:after,.portrait-atmosphere{animation:none!important}}
