*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:#242520;background:#fafaf7;font-family:Arial,Microsoft YaHei,PingFang SC,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}button:focus-visible,a:focus-visible{outline:2px solid #698137;outline-offset:5px}::selection{background:#d9ef99}h1,h2,h3,h4,p{margin:0}button{background:none}section,footer{scroll-margin-top:0}.accent{color:#8a9c60}.site-header{height:88px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;background:#fafaf7ed;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid #dfdfd6}.brand{display:flex;gap:12px;align-items:center;font-weight:600;font-size:16px}.brand-sub{display:block;letter-spacing:2px;font-size:8px;font-weight:400;margin-top:5px}.mark{width:33px;height:33px;fill:currentColor}.navigation{display:flex;align-items:center;gap:36px;font-size:12px}.navigation>a:not(.nav-contact){padding:10px 0}.navigation>a:hover{color:#708344}.nav-contact{border:1px solid #bfc0b7;border-radius:40px;padding:12px 20px;display:flex;gap:26px;align-items:center}.menu-toggle{display:none}.hero{position:relative;min-height:690px;height:calc(100svh - 88px);max-height:950px;margin:0 4.5%;isolation:isolate}.hero-topline{padding-top:28px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.3px;color:#77786e}.hero-visual{position:absolute;top:20px;right:-4.95%;bottom:0;left:25%;z-index:-2;overflow:hidden;mix-blend-mode:multiply;pointer-events:none}.hero-visual video,.hero-visual img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.hero-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#fafaf7,transparent 30%),linear-gradient(0deg,#fafaf7,transparent 25%)}.hero-copy{padding-top:clamp(72px,12vh,150px);position:relative;max-width:660px}.eyebrow{font-size:11px;display:flex;align-items:center;gap:9px;letter-spacing:1px}.status-dot{width:6px;height:6px;display:inline-block;border-radius:50%;background:#8c9e62;margin-right:3px}.hero h1{font-size:clamp(70px,8.3vw,128px);font-weight:400;letter-spacing:-.07em;line-height:.98;margin:28px 0 30px}.hero-description{display:flex;gap:16px;align-items:center;font-size:14px;line-height:1.9}.hero-description p>span{color:#85867d;font-size:11px}.tiny-cross{font-size:34px;font-weight:400}.button{display:inline-flex;align-items:center;gap:42px;padding:17px 23px;border-radius:32px;font-size:12px;margin-top:26px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-3px);background:#465032}.dark{color:#fff;background:#262821}.hero-bottom{position:absolute;bottom:28px;left:0;right:0;display:flex;justify-content:space-between;padding-top:22px;border-top:1px solid #d9dad2;font-size:10px;letter-spacing:1px;color:#6e7066}.hero-bottom a{display:flex;gap:30px}.visual-note{position:absolute;right:0;top:50%;writing-mode:vertical-rl;font-size:9px;letter-spacing:3px;color:#888b7d}.section-shell{padding:80px 4.5% 90px}.section-label{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px;color:#83867a;margin-bottom:40px}.section-label>span:last-child{letter-spacing:1px}.works{background:#efefe9}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:48px}h2{font-size:clamp(32px,3.8vw,58px);font-weight:400;letter-spacing:-2px;line-height:1.3}.section-heading>p{font-size:12px;color:#7a7d71;line-height:1.9;max-width:280px}.filters{display:flex;gap:8px;margin-bottom:28px;align-items:center;border-bottom:1px solid #d8d9d0;padding-bottom:20px}.filters button{font-size:12px;border-radius:30px;padding:13px 22px;transition:background .2s}.filters button.selected{background:#282b23;color:#fff}.filters button:hover:not(.selected){background:#e1e3d9}.filters sup{font-size:8px;margin-left:10px;opacity:.6}.filter-note{margin-left:auto;color:#84867c;font-size:10px}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 22px}.work-card{text-align:left;padding:0;width:100%;min-width:0}.work-image{height:320px;position:relative;overflow:hidden;background:#e4e7dd;border-radius:3px}.work-card:nth-child(3n+2) .work-image{background:#e9e4e1}.work-card:nth-child(3n+3) .work-image{background:#e9e8dd}.work-image img{width:100%;height:100%;object-fit:contain;padding:38px;transition:transform .65s cubic-bezier(.2,.7,.2,1)}.work-card:hover .work-image img{transform:scale(1.07) rotate(-2deg)}.work-number{position:absolute;top:18px;left:18px;z-index:1;font-size:9px;letter-spacing:1px;color:#8b8e81}.work-open{position:absolute;right:16px;bottom:16px;background:#fafaf7;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;transition:background .2s}.work-card:hover .work-open{background:#d4e6ae}.work-caption{display:flex;justify-content:space-between;align-items:start;padding-top:17px}.work-caption h3{font-size:14px;font-weight:500}.work-caption p{font-size:10px;color:#83867a;margin-top:7px}.work-caption>span{font-size:9px;color:#888b80}.work-grid.graphic{grid-template-columns:repeat(2,minmax(0,1fr))}.graphic .work-image{height:400px}.graphic .work-image img{padding:24px}.work-grid.sketch{grid-template-columns:repeat(2,minmax(0,1fr))}.sketch .work-image{height:350px;background:#fff}.about{background:#fafaf7}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.about-intro h2{line-height:1.45}.about-intro h2>span{color:#979c8a}.about-intro>p{font-size:12px;line-height:2.2;color:#7f8275;margin-top:26px;max-width:370px}.text-link{display:inline-flex;gap:60px;border-bottom:1px solid #9da38e;padding:14px 0;margin-top:22px;font-size:12px}.school{padding-bottom:30px}.detail-top{display:flex;justify-content:space-between;gap:14px;font-size:10px;color:#8b907e;letter-spacing:.5px}.school h3{font-size:22px;font-weight:400;margin-top:26px}.school>p{font-size:12px;color:#84897a;margin-top:12px}.course-tags,.job-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:23px}.course-tags span,.job-tags span{font-size:10px;border:1px solid #dbded3;border-radius:3px;padding:7px 10px;color:#7d8271}.skill-row{padding:23px 0;border-top:1px solid #dddfd5;display:flex;gap:25px;align-items:start}.skill-row>span{font-size:10px;color:#9da28f}.skill-row>span:last-child{margin-left:auto;font-size:17px}.skill-row h4{font-size:13px;font-weight:500;margin-bottom:9px}.skill-row p{font-size:10px;line-height:1.8;color:#818776}.experience{background:#272c24;color:#f0f1e9}.experience .section-label{color:#9da591}.experience-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.experience h2{line-height:1.5}.job-tabs{display:flex;gap:10px;margin-top:35px;flex-wrap:wrap}.job-tabs button{border:1px solid #59604f;border-radius:30px;padding:12px 20px;font-size:11px;color:#abb39f}.job-tabs button.active{background:#d9e8bb;color:#2d3425;border-color:#d9e8bb}.job-detail{border-top:1px solid #565e4d;padding-top:20px}.job-detail h3{font-size:27px;font-weight:400;margin-top:25px}.job-detail h4{font-size:12px;color:#c1c8b7;font-weight:400;margin-top:12px}.job-detail>p{line-height:2.15;color:#aab39d;font-size:12px;margin-top:27px}.job-tags span{border-color:#4a5440;color:#b2bda3}.operations{padding-top:46px;padding-bottom:55px;background:#e8eade}.operations .section-label{margin-bottom:30px}.operations-grid{display:grid;grid-template-columns:repeat(4,1fr)}.operations-grid>div{padding:0 25px;border-left:1px solid #ccd1be}.operations-grid>div:first-child{border:0;padding-left:0}.operations-grid span{font-size:9px;color:#929b7f}.operations-grid h3{font-size:16px;font-weight:400;margin:18px 0 8px}.operations-grid p{font-size:10px;color:#859071}.contact{padding-bottom:24px}.contact-title{display:block;position:relative;font-size:clamp(48px,7vw,105px);letter-spacing:-4px;line-height:1.3;padding-bottom:55px}.contact-title>span{position:absolute;right:4%;top:0;font-family:Arial;font-size:120px;color:#8f9c74;transition:transform .3s}.contact-title:hover>span{transform:translate(8px,-8px)}.contact-bottom{border-top:1px solid #daddd0;border-bottom:1px solid #daddd0;padding:28px 0;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:11px}.contact-bottom>div{display:flex;gap:35px}.contact-bottom>span{color:#8b927e}.footer-credit{display:flex;justify-content:space-between;font-size:8px;color:#9b9f92;letter-spacing:1px;padding-top:24px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;width:min(1100px,94vw);height:90svh;max-height:90svh;border:0;background:#f6f6ef;color:#292d24;padding:65px 32px 24px;border-radius:6px}.lightbox::backdrop{background:#151911d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.lightbox>img{width:100%;height:calc(100% - 65px);object-fit:contain}.lightbox>div{text-align:center;padding-top:12px}.lightbox h3{font-weight:400;font-size:16px}.lightbox p{font-size:11px;color:#8c9380;margin-top:8px}.lightbox-close{position:absolute;right:24px;top:20px;border:1px solid #d4d9c7;border-radius:30px;padding:10px 18px;font-size:12px}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:12px}.skip-link:focus{top:10px}@media (min-width:1600px){.site-header,.section-shell{padding-left:max(4.5%,calc((100vw - 1460px)/2));padding-right:max(4.5%,calc((100vw - 1460px)/2))}.hero{max-width:1460px;margin:auto}.work-image{height:400px}}@media (max-width:900px){.hero{min-height:660px}.hero-visual{left:15%;opacity:.75}.hero h1{font-size:86px}.hero-copy{padding-top:120px}.work-image{height:250px}.work-image img{padding:25px}.about-layout,.experience-layout{gap:6%}.navigation{gap:22px}.contact-bottom>div{gap:15px}.graphic .work-image{height:300px}}@media (max-width:600px){html{scroll-padding-top:74px}.site-header{height:74px;padding:0 6%}.brand{font-size:14px}.mark{width:28px}.menu-toggle{display:block;font-size:12px;padding:12px 0 12px 16px}.navigation{display:none;position:absolute;top:74px;left:0;right:0;padding:24px 6%;background:#fafaf7;border-bottom:1px solid #dedfd5}.navigation.open{display:flex;align-items:stretch;flex-direction:column;gap:18px}.nav-contact{justify-content:space-between}.hero{margin:0 6%;height:calc(100svh - 74px);min-height:670px;max-height:830px}.hero-topline{font-size:8px;letter-spacing:.5px;padding-top:22px}.hero-visual{top:10px;right:-6.8%;bottom:180px;left:-15%;opacity:.5}.hero-visual:after{background:linear-gradient(0deg,#fafaf7,transparent 70%)}.hero-copy{padding-top:200px}.eyebrow{font-size:9px}.hero h1{font-size:clamp(56px,13.4vw,80px);margin:22px 0;letter-spacing:-.065em}.hero-description{font-size:12px;gap:12px}.hero-description p>span{font-size:9px}.tiny-cross{font-size:26px}.button{padding:14px 20px;margin-top:24px;font-size:11px}.hero-bottom{font-size:8px;letter-spacing:0;bottom:22px}.hero-bottom a{gap:10px}.visual-note{display:none}.section-shell{padding:48px 6%}.section-label{font-size:8px;letter-spacing:1px;margin-bottom:28px}.section-label>span:last-child{font-size:8px;letter-spacing:0}.section-heading{display:block;margin-bottom:28px}h2{font-size:31px;letter-spacing:-1.5px}.section-heading>p{margin-top:16px;font-size:11px}.filters{gap:2px;padding-bottom:15px;margin-bottom:20px}.filters button{padding:11px 12px;font-size:11px}.filters sup{margin-left:6px;font-size:7px}.filter-note{display:none}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 12px}.work-image{height:190px}.work-image img{padding:24px 12px}.work-number{top:12px;left:12px;font-size:8px}.work-open{width:25px;height:25px;right:10px;bottom:10px;font-size:13px}.work-caption h3{font-size:11px}.work-caption p{font-size:9px;line-height:1.5}.work-caption>span{display:none}.work-caption{padding-top:11px}.work-grid.graphic,.work-grid.sketch{grid-template-columns:1fr}.graphic .work-image,.sketch .work-image{height:310px}.about-layout,.experience-layout{grid-template-columns:1fr;gap:40px}.about-intro h2{font-size:36px}.about-intro>p{font-size:11px}.school h3{font-size:21px}.skill-row{gap:20px}.experience h2{font-size:34px}.job-tabs{margin-top:24px}.job-detail h3{font-size:24px}.job-detail>p{font-size:11px}.operations-grid{grid-template-columns:repeat(2,1fr);gap:28px 0}.operations-grid>div{padding-left:20px}.operations-grid>div:nth-child(3){border:0;padding-left:0}.operations-grid h3{font-size:14px}.operations-grid p{font-size:9px}.contact-title{font-size:43px;letter-spacing:-2px;padding-bottom:35px}.contact-title>span{font-size:60px;right:0;top:14px}.contact-bottom{align-items:flex-start;flex-wrap:wrap;gap:25px;font-size:10px}.contact-bottom>div{width:100%;flex-direction:column;gap:14px}.contact-bottom>a{margin-left:auto}.footer-credit{font-size:7px;gap:18px;line-height:1.5}.lightbox{padding:60px 15px 20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.portrait-wrap{position:relative;width:min(250px,58%);aspect-ratio:4/5;margin-bottom:34px;background:#dde0d6;overflow:hidden}.portrait-wrap img{width:100%;height:100%;object-fit:cover;filter:grayscale(.35);display:block}.portrait-wrap:after{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(255,255,255,.65);pointer-events:none}.portrait-wrap span{position:absolute;bottom:15px;left:16px;color:#fff;font-size:8px;letter-spacing:1.5px;line-height:1.6;z-index:1}.about-intro>p+p{margin-top:12px}.about-meta{display:grid;grid-template-columns:90px 1fr;gap:10px 20px;border-top:1px solid #dddfd5;padding-top:22px;margin-top:10px;font-size:10px;color:#8b907e}.about-meta strong{font-weight:400;color:#555a4d}.about-details{min-width:0}@media (max-width:600px){.portrait-wrap{width:62%;margin-bottom:26px}.about-meta{grid-template-columns:75px 1fr}.about-intro>p+p{margin-top:10px}}:root{--ink:#242520;--line:#d9dbd1;--lime:#d9e8bb}body{overflow-x:hidden}.site-header{transition:transform .45s cubic-bezier(.2,.8,.2,1),background .3s}.hero{overflow:hidden}.hero-copy{animation:heroIn 1.1s cubic-bezier(.16,1,.3,1) both}.hero-visual{animation:visualIn 1.4s cubic-bezier(.16,1,.3,1) .1s both}.section-shell{position:relative}.section-shell:before{content:"";position:absolute;left:4.5%;right:4.5%;top:0;border-top:1px solid var(--line);transform-origin:left;transform:scaleX(0);transition:transform 1s cubic-bezier(.16,1,.3,1)}.section-shell.is-visible:before{transform:scaleX(1)}.section-label{transition:opacity .7s .05s,transform .7s .05s;opacity:0;transform:translateY(14px)}.is-visible>.section-label{opacity:1;transform:none}.section-heading,.about-layout,.experience-layout,.operations-grid,.contact-title{opacity:0;transform:translateY(26px);transition:opacity .8s .12s,transform .9s cubic-bezier(.16,1,.3,1)}.is-visible>.section-heading,.is-visible>.about-layout,.is-visible>.experience-layout,.is-visible>.operations-grid,.is-visible>.contact-title{opacity:1;transform:none}.work-card{opacity:0;transform:translateY(36px);transition:opacity .7s,transform .8s cubic-bezier(.16,1,.3,1)}.work-card:nth-child(2){transition-delay:.07s}.work-card:nth-child(3){transition-delay:.14s}.work-card:nth-child(4){transition-delay:.21s}.work-card:nth-child(5){transition-delay:.28s}.work-card:nth-child(6){transition-delay:.35s}.work-card.is-visible{opacity:1;transform:none}.work-card.is-visible:hover{transform:translateY(-8px)}.work-image{border-radius:0;clip-path:inset(0 0 0 0);transition:clip-path .55s cubic-bezier(.16,1,.3,1),background .3s}.work-card:hover .work-image{clip-path:inset(8px 8px 8px 8px)}.work-open{transform:scale(.8);opacity:0;transition:opacity .3s,transform .4s cubic-bezier(.16,1,.3,1)}.work-card:hover .work-open{opacity:1;transform:scale(1)}.skill-row,.operations-grid>div{opacity:0;transform:translate(18px);transition:opacity .7s,transform .7s cubic-bezier(.16,1,.3,1)}.skill-row:nth-child(2){transition-delay:.08s}.skill-row:nth-child(3){transition-delay:.16s}.skill-row:nth-child(4){transition-delay:.24s}.skill-row.is-visible,.operations-grid>div.is-visible{opacity:1;transform:none}.operations-grid>div{border-left-color:transparent;position:relative}.operations-grid>div:before{content:"";position:absolute;left:0;top:0;bottom:0;border-left:1px solid #ccd1be;transform:scaleY(0);transform-origin:top;transition:transform .7s .18s}.operations-grid>div.is-visible:before{transform:scaleY(1)}.filters{position:sticky;top:88px;z-index:4;background:#efefe9;padding-top:12px}.contact-title{letter-spacing:-.06em}.contact-title>span{transition:transform .55s cubic-bezier(.16,1,.3,1),color .3s}.contact-title:hover>span{color:#758553}.portrait-wrap{box-shadow:18px 18px #e4e7dd;transform:rotate(-2deg);transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s}.portrait-wrap:hover{transform:rotate(0) translateY(-6px);box-shadow:12px 16px #d6dfc6}.hero-bottom a span{display:inline-block;transition:transform .35s}.hero-bottom a:hover span{transform:translateY(5px)}@keyframes heroIn{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}@keyframes visualIn{0%{opacity:0;transform:scale(1.06)}to{opacity:1;transform:none}}@media (max-width:600px){.section-shell:before{left:6%;right:6%}.filters{top:74px;padding-top:8px}.portrait-wrap{box-shadow:10px 10px #e4e7dd}}@media (prefers-reduced-motion:reduce){.section-shell:before,.section-label,.section-heading,.about-layout,.experience-layout,.operations-grid,.contact-title,.work-card,.skill-row,.operations-grid>div,.hero-copy,.hero-visual{opacity:1;transform:none;transition:none}.work-card:hover .work-image{clip-path:none}}.category-archive{background:#f6f6f0}.category-archive:nth-of-type(2n){background:#e8eade}.archive-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:42px}.archive-heading h2{font-size:clamp(46px,6vw,92px);line-height:.95;letter-spacing:-.07em}.archive-heading .text-link{margin:0}.archive-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.archive-grid.graphic .work-image{height:420px;background:#e6e8df}.archive-grid.graphic .work-image img{padding:18px}.archive-grid.sketch{grid-template-columns:repeat(4,minmax(0,1fr))}.archive-grid.sketch .work-image{height:330px;background:#fff}.archive-grid.sketch .work-image img{padding:16px}.category-archive .work-card{opacity:1}.category-archive .work-card:hover .work-image{clip-path:inset(8px)}@media (max-width:900px){.archive-grid,.archive-grid.sketch{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}.archive-grid.graphic .work-image{height:330px}.archive-grid.sketch .work-image{height:290px}}@media (max-width:600px){.archive-heading{display:block;margin-bottom:28px}.archive-heading .text-link{margin-top:24px}.archive-grid,.archive-grid.sketch{grid-template-columns:1fr;gap:30px}.archive-grid.graphic .work-image,.archive-grid.sketch .work-image{height:auto;aspect-ratio:3/4}.category-archive .work-caption>span{display:none}}.work-grid .work-card{opacity:1;transform:none}:root{--paper:#f8f8f3;--paper-deep:#f1f2eb;--ink:#252620;--muted:#7b8072;--line:#d9dbd1;--accent:#8b9d63}body{background:var(--paper);color:var(--ink)}.site-header{background:#f8f8f3f0;border-bottom-color:var(--line)}.hero,.about,.contact{background:var(--paper)}.works,.category-archive,.operations{background:var(--paper-deep)}.experience{background:var(--paper);color:var(--ink)}.experience .section-label{color:var(--muted)}.experience .job-detail{border-top-color:var(--line)}.experience .job-detail h4,.experience .job-detail>p{color:var(--muted)}.experience .job-tabs button{border-color:#cfd4c5;color:#69715d}.experience .job-tabs button.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}.experience .job-tags span{border-color:#d0d5c8;color:#69715d}.operations{border-top:1px solid var(--line)}.operations-grid>div{border-left-color:var(--line)}.operations-grid>div:before{border-left-color:#c8cdbd}.operations-grid>div:first-child{border-left:0}.work-image{background:#e8ebe1}.work-card:nth-child(3n+2) .work-image{background:#ece9e6}.work-card:nth-child(3n+3) .work-image{background:#e9eadf}.archive-grid.sketch .work-image{background:#fdfdf9}.filters{background:var(--paper-deep);border-bottom-color:var(--line)}.section-shell:before{border-top-color:var(--line)}.section-label,.section-heading>p,.school>p,.skill-row p,.work-caption p{color:var(--muted)}.school,.skill-row,.course-tags span,.about-meta{border-color:var(--line)}.about-meta strong{color:#53594c}.contact-bottom{border-color:var(--line)}.contact-title>span{color:var(--accent)}.hero-bottom{border-top-color:var(--line)}.hero-visual:after{background:linear-gradient(90deg,var(--paper),transparent 30%),linear-gradient(0deg,var(--paper),transparent 25%)}.portrait-wrap{box-shadow:18px 18px #e4e7dd}@media (max-width:600px){.filters{background:var(--paper-deep)}.portrait-wrap{box-shadow:10px 10px #e4e7dd}}:root{--gf-black:#11110f;--gf-panel:#181815;--gf-panel-2:#20201b;--gf-white:#f3efe5;--gf-muted:#929187;--gf-line:#3b3b32;--gf-orange:#ff5b26;--gf-yellow:#f3d55c}html{background:var(--gf-black);scroll-padding-top:82px}body{background:var(--gf-black);color:var(--gf-white);font-family:Arial,Microsoft YaHei,sans-serif}.site-header{background:#11110fdb;border-bottom:1px solid var(--gf-line);color:var(--gf-white);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand-sub{color:var(--gf-muted)}.navigation>a:not(.nav-contact){color:var(--gf-muted)}.navigation>a:not(.nav-contact):hover{color:var(--gf-orange)}.nav-contact{border-color:var(--gf-line);color:var(--gf-white)}.nav-contact:hover{background:var(--gf-orange);color:var(--gf-black);border-color:var(--gf-orange)}.menu-toggle{color:var(--gf-white)}.hero,.about,.contact,.experience{background:var(--gf-black);color:var(--gf-white)}.works,.operations{background:var(--gf-panel);color:var(--gf-white)}.category-archive{background:var(--gf-panel-2);color:var(--gf-white)}.section-shell:before{border-color:var(--gf-line)}.section-label,.section-heading>p,.hero-topline,.hero-bottom,.visual-note,.work-caption p,.school>p,.skill-row p,.about-meta,.contact-bottom,.footer-credit{color:var(--gf-muted)}.section-label{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px}.hero-topline{color:var(--gf-muted)}.hero h1{font-size:clamp(78px,11vw,170px);font-weight:500;letter-spacing:-.09em;line-height:.88}.accent{color:var(--gf-orange)}.status-dot{background:var(--gf-orange)}.tiny-cross{color:var(--gf-orange)}.hero-description p>span{color:var(--gf-muted)}.button.dark{background:var(--gf-orange);color:var(--gf-black);font-weight:700}.button.dark:hover{background:var(--gf-yellow)}.hero-bottom{border-color:var(--gf-line)}.hero-bottom a:hover{color:var(--gf-orange)}.hero-visual{mix-blend-mode:screen;opacity:.82}.hero-visual:after{background:linear-gradient(90deg,var(--gf-black) 0%,rgba(17,17,15,.08) 46%,transparent 100%),linear-gradient(0deg,var(--gf-black),transparent 30%)}.works .section-heading h2,.about h2,.experience h2{font-size:clamp(46px,7vw,112px);font-weight:500;letter-spacing:-.08em;line-height:.95}.filters{background:var(--gf-panel);border-color:var(--gf-line);top:88px}.filters button{color:var(--gf-muted)}.filters button.selected{background:var(--gf-orange);color:var(--gf-black)}.filters button:hover:not(.selected){background:var(--gf-panel-2);color:var(--gf-white)}.filter-note{color:var(--gf-muted)}.work-image{border:1px solid var(--gf-line);background:#292923!important}.work-card:nth-child(3n+2) .work-image{background:#292520!important}.work-card:nth-child(3n+3) .work-image{background:#292a21!important}.work-image img{mix-blend-mode:normal}.work-open{background:var(--gf-orange);color:var(--gf-black)}.work-card:hover .work-open{background:var(--gf-yellow)}.work-caption h3{font-size:15px;color:var(--gf-white);font-weight:500}.work-caption>span,.work-number{color:var(--gf-muted)}.about-layout,.experience-layout{border-top:1px solid var(--gf-line);padding-top:40px}.portrait-wrap{box-shadow:18px 18px 0 var(--gf-orange);border:1px solid var(--gf-line)}.portrait-wrap:after{border-color:#ffffffb3}.school,.skill-row{border-color:var(--gf-line)}.course-tags span,.job-tags span{border-color:var(--gf-line);color:var(--gf-muted)}.skill-row>span:last-child{color:var(--gf-orange)}.about-meta{border-color:var(--gf-line)}.about-meta strong{color:var(--gf-white)}.text-link{border-color:var(--gf-orange);color:var(--gf-white)}.text-link:hover{color:var(--gf-orange)}.experience .section-label,.experience .job-detail h4,.experience .job-detail>p{color:var(--gf-muted)}.experience .job-detail{border-color:var(--gf-line)}.experience .job-tabs button{border-color:var(--gf-line);color:var(--gf-muted)}.experience .job-tabs button.active{background:var(--gf-orange);border-color:var(--gf-orange);color:var(--gf-black)}.experience .job-tags span{border-color:var(--gf-line);color:var(--gf-muted)}.operations{border-top:1px solid var(--gf-line)}.operations-grid>div{border-color:var(--gf-line)}.operations-grid>div:before{border-color:var(--gf-orange)}.operations-grid h3{font-size:20px}.operations-grid span{color:var(--gf-orange)}.operations-grid p{color:var(--gf-muted)}.contact-title{font-size:clamp(64px,10vw,160px);font-weight:500;color:var(--gf-white)}.contact-title>span{color:var(--gf-orange)}.contact-bottom{border-color:var(--gf-line)}.contact-bottom a:hover{color:var(--gf-orange)}.lightbox{background:var(--gf-panel);color:var(--gf-white)}.lightbox-close{border-color:var(--gf-line);color:var(--gf-white)}.lightbox p{color:var(--gf-muted)}.category-archive .archive-heading h2{font-size:clamp(56px,9vw,150px)}@media (max-width:600px){.site-header{background:#11110ff0}.navigation{background:var(--gf-black);border-color:var(--gf-line)}.hero h1{font-size:clamp(64px,16vw,96px)}.hero-visual{opacity:.65}.filters{top:74px}.works .section-heading h2,.about h2,.experience h2{font-size:48px}.contact-title{font-size:56px}.portrait-wrap{box-shadow:10px 10px 0 var(--gf-orange)}}.hero{overflow:visible}.contact-qr{margin:20px 0 54px;padding:24px 0;border-top:1px solid var(--gf-line);border-bottom:1px solid var(--gf-line);display:flex;align-items:center;justify-content:space-between;gap:28px;scroll-margin-top:110px}.contact-qr>div span{display:block;font:10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1.5px;color:var(--gf-orange)}.contact-qr>div p{margin-top:12px;font-size:14px;color:var(--gf-muted)}.contact-qr img{width:156px;height:156px;object-fit:cover;background:#fff;padding:8px}.contact-title>span{cursor:pointer;display:inline-block}.contact-title:hover>span{transform:translate(10px,-10px) rotate(8deg)}@media (max-width:600px){.contact-qr{align-items:flex-start;flex-direction:column}.contact-qr img{width:132px;height:132px}.hero{overflow:visible}}.contact-title{border:0;background:none;text-align:left;width:100%;cursor:pointer}.contact-title:focus-visible{outline:2px solid var(--gf-orange);outline-offset:12px}.qr-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:#000000d1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:24px}.qr-modal-card{position:relative;width:min(430px,92vw);background:#fff;color:#111;padding:30px 30px 24px;display:flex;flex-direction:column;align-items:center;box-shadow:0 20px 80px #00000073;animation:qrIn .45s cubic-bezier(.16,1,.3,1)}.qr-modal-card>span{align-self:flex-start;color:#f15b2a;font:11px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1.3px}.qr-modal-card img{width:min(310px,72vw);height:auto;margin:22px auto 14px}.qr-modal-card p{font-size:13px;color:#777;margin:0}.qr-modal-close{position:absolute;top:14px;right:14px;border:1px solid #ddd;border-radius:999px;background:#fff;padding:8px 12px;font-size:11px;color:#555}.qr-modal-close:hover{background:#111;color:#fff;border-color:#111}@keyframes qrIn{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:none}}.lightbox>div:last-child{text-align:center;padding-top:12px}.work-grid.sketch .work-image img.rotate-left{transform:rotate(-90deg) scale(.82)}.work-grid.sketch .work-card:hover .work-image img.rotate-left{transform:rotate(-92deg) scale(.88)}.work-grid.sketch .work-image img.rotate-right{transform:rotate(90deg) scale(.82)}.work-grid.sketch .work-card:hover .work-image img.rotate-right{transform:rotate(88deg) scale(.88)}
