.faulty-terminal-container{position:relative;width:100%;height:100%;overflow:hidden}.faulty-terminal-canvas{position:absolute;inset:0;display:block;width:100%;height:100%}:root{font-family:Helvetica,Source Han Sans CN,思源黑体,Arial,Noto Sans CJK SC,Microsoft YaHei,sans-serif;color:#f0f1eb;background:#080a08;font-synthesis:none;text-rendering:optimizeLegibility;--ink: #080a08;--panel: rgba(15, 18, 15, .88);--white: #f0f1eb;--muted: #969a91;--line: rgba(232, 237, 224, .17);--line-soft: rgba(232, 237, 224, .09);--accent: #d8fa70;--frame: 1700px;--pad: clamp(24px, 5.2vw, 88px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;min-width:320px;background:var(--ink);color:var(--white)}body,button,a{font-family:Helvetica,Source Han Sans CN,思源黑体,Arial,Noto Sans CJK SC,Microsoft YaHei,sans-serif}button,a{color:inherit}button{font:inherit}a{text-decoration:none}img{display:block;max-width:100%}::selection{background:var(--accent);color:#0a0b09}.terminal-layer{position:fixed;inset:0;z-index:0;opacity:.24;pointer-events:none;mix-blend-mode:screen}.terminal-layer:after{position:absolute;inset:0;content:"";background:radial-gradient(ellipse at center,transparent 20%,rgba(5,7,5,.52) 100%),linear-gradient(180deg,#0709074d,#070907c2)}.site-shell{position:relative;z-index:1;overflow:clip}.page-frame{width:min(calc(100% - 2 * var(--pad)),var(--frame));margin-inline:auto}.section-pad{padding-block:clamp(90px,10vw,172px)}.eyebrow{margin:0;color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.15em;line-height:1.5;text-transform:uppercase}.site-header{position:relative;z-index:20;width:min(calc(100% - 2 * var(--pad)),var(--frame));height:78px;display:flex;align-items:center;justify-content:space-between;margin-inline:auto;border-bottom:1px solid var(--line);background:transparent}.wordmark{display:inline-flex;align-items:baseline;gap:8px;font-size:18px;font-weight:900;letter-spacing:-.055em}.wordmark i{color:var(--accent);font-size:9px;font-style:normal;font-weight:700;letter-spacing:.14em}.main-nav{height:100%;display:flex;align-items:center;gap:clamp(18px,3.5vw,54px)}.main-nav a{display:inline-flex;align-items:center;gap:8px;color:#e8e9e3;font-size:12px;transition:color .2s ease}.main-nav a:hover,.main-nav a:focus-visible{color:var(--accent)}.main-nav small{color:#777b73;font-size:8px;letter-spacing:.1em}.main-nav .nav-contact{gap:11px;padding:10px 0 10px 16px;border-left:1px solid var(--line)}.nav-contact .arrow{color:var(--accent);font-size:18px}.menu-toggle{display:none}.hero{width:100%;height:auto;min-height:0;aspect-ratio:16 / 9;position:relative;isolation:isolate;overflow:hidden;background:#000}.hero-background-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;animation:hero-video-enter .9s ease both}@keyframes hero-video-enter{0%{opacity:0}to{opacity:1}}.signal-dot{width:7px;height:7px;display:inline-block;flex:none;border-radius:50%;background:var(--accent);box-shadow:0 0 14px #d8fa70b3}.work-section{position:relative;background:linear-gradient(180deg,#0c0f0cf5,#080a08f0)}.section-heading{display:flex;flex-direction:column;align-items:stretch;gap:14px;padding-bottom:34px;border-bottom:1px solid var(--line)}.section-heading h2{max-width:100%;margin:0;color:var(--white);font-size:clamp(23px,4.4vw,60px);font-weight:850;letter-spacing:-.045em;line-height:1.08;text-transform:uppercase}.section-heading .section-halftone-heading{width:100%;height:clamp(120px,15vw,255px);overflow:hidden;font-size:0;line-height:0}.section-heading-description{align-self:flex-start;max-width:500px;margin:0;color:#a0a49a;font-size:12px;line-height:1.9;text-align:left}.work-intro{display:grid;grid-template-columns:1fr auto;align-items:end;padding:3px 0 25px;text-align:left}.work-intro>.eyebrow{grid-column:1 / -1;color:var(--accent)}.work-intro h2{grid-column:1;margin:12px 0 0;color:var(--white);font-size:clamp(54px,8.1vw,126px);font-weight:850;letter-spacing:-.075em;line-height:.94}.work-intro h2 em{color:var(--accent);font-style:normal}.work-intro-meta{grid-column:2;align-self:end;margin:0 0 11px;color:#9da398;font-size:9px;letter-spacing:.17em}.archive-toolbar{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:18px 0 0;border-top:1px solid var(--line-soft)}.work-category-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(18px,3vw,48px)}.work-category-tab{display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:0 0 11px;border:0;border-bottom:1px solid transparent;background:transparent;color:#a8ada2;cursor:pointer;font-size:13px;transition:border-color .25s ease,color .25s ease}.work-category-tab span{color:#767d72;font-size:8px;letter-spacing:.15em;transition:color .25s ease}.work-category-tab:hover,.work-category-tab.is-active{border-bottom-color:var(--accent);color:var(--white)}.work-category-tab.is-active span{color:var(--accent)}.archive-count{color:#8b9086;font-size:8px;letter-spacing:.14em;white-space:nowrap}.archive-count b{margin-right:5px;color:var(--accent);font-size:17px}.archive-count i{margin-left:4px;color:#888e82;font-size:8px;font-style:normal;font-weight:500}.work-scene-caption{display:flex;align-items:center;gap:10px;margin-top:21px;color:#858b80;font-size:8px;letter-spacing:.14em;text-transform:uppercase}.work-scene-caption b{margin-left:auto;color:#acb1a7;font-size:8px;font-weight:500;letter-spacing:.12em}.work-scene-caption>span:last-child{color:var(--accent)}.book-carousel-wrap{position:relative;margin:3px auto 0}.project-book-carousel{--book-step: clamp(160px, 20vw, 290px);position:relative;height:clamp(475px,45vw,670px);overflow:hidden;perspective:1450px;transform-style:preserve-3d;outline:none}.project-book-carousel:focus-visible{outline:1px solid rgba(216,250,112,.5);outline-offset:-1px}.book-carousel-horizon{position:absolute;right:8%;bottom:13%;left:8%;height:1px;background:linear-gradient(90deg,transparent,rgba(216,250,112,.24),rgba(230,203,157,.25),transparent);box-shadow:0 0 40px #d8fa7017}.project-book-card{position:absolute;top:47%;left:50%;width:clamp(220px,23vw,345px);aspect-ratio:.735;overflow:visible;padding:8px 11px 8px 17px;border:1px solid rgba(231,209,174,.72);border-left:0;border-radius:3px 5px 5px 3px;background:linear-gradient(90deg,#4a3824 0,#b9976a 4%,#ddc39b 7%,#b9996d);box-shadow:5px 1px #785d3e,8px 5px #453622,12px 19px 30px #0000008f;color:#171510;cursor:pointer;transform:translate(-50%,-50%) translate(var(--book-x)) translateY(var(--book-y)) perspective(1100px) rotateY(var(--book-turn)) rotate(var(--book-tilt)) scale(var(--book-scale));transform-origin:50% 52%;transform-style:preserve-3d;transition:transform .68s cubic-bezier(.18,.78,.22,1),opacity .45s ease,filter .45s ease,box-shadow .4s ease}.project-book-card:hover,.project-book-card:focus-visible{filter:brightness(1.08);box-shadow:5px 1px #94744d,8px 5px #59432c,15px 24px 38px #000000ad,0 0 28px #d8fa7029}.project-book-card.is-active{box-shadow:5px 1px #94744d,8px 5px #59432c,15px 24px 40px #000000a6,0 0 34px #d8fa7021}.project-book-spine{position:absolute;z-index:2;top:7px;bottom:7px;left:0;width:17px;display:grid;place-items:center;border-right:1px solid rgba(35,27,17,.24);background:linear-gradient(90deg,#543f28,#886b47);color:#ead6b2;box-shadow:inset -2px 0 4px #1d140b52}.project-book-spine i{font-size:6px;font-style:normal;font-weight:700;letter-spacing:.16em;writing-mode:vertical-rl}.project-book-cover{position:absolute;inset:8px 11px 8px 20px;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid rgba(58,43,26,.34);background:#e1d4be;box-shadow:inset 0 0 0 3px #f9efdb59}.project-book-cover-kicker{display:flex;justify-content:space-between;gap:4px;padding:8px 8px 6px;color:#55432d;font-size:7px;font-weight:750;letter-spacing:.11em;line-height:1.4;text-transform:uppercase}.project-book-cover-kicker i{flex:none;color:#85745c;font-size:6px;font-style:normal}.project-book-cover img{width:100%;height:100%;min-height:0;flex:1;padding:5px;object-fit:contain;background:#eee8dc}.project-book-cover-title{display:flex;flex-direction:column;gap:4px;padding:9px 9px 10px;color:#211d16}.project-book-cover-title i{color:#76664d;font-size:6px;font-style:normal;font-weight:700;letter-spacing:.16em}.project-book-cover-title b{display:-webkit-box;overflow:hidden;font-size:clamp(11px,1.1vw,15px);font-weight:850;line-height:1.25;text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:2}.project-book-pages{position:absolute;top:11px;right:-7px;bottom:11px;width:7px;border-radius:0 2px 2px 0;background:repeating-linear-gradient(180deg,#eee7d8 0 3px,#c8baa2 3px 4px);box-shadow:2px 1px 2px #0000003b;transform:translateZ(-2px)}.book-carousel-arrow{position:absolute;z-index:30;top:47%;display:grid;width:44px;height:44px;place-items:center;border:1px solid rgba(233,236,223,.25);border-radius:50%;background:#0c0f0cc2;color:var(--accent);cursor:pointer;font-size:21px;transition:color .25s ease,background .25s ease,border-color .25s ease,transform .25s ease;transform:translateY(-50%)}.book-carousel-arrow:hover{border-color:var(--accent);background:var(--accent);color:var(--ink);transform:translateY(-50%) scale(1.06)}.book-carousel-arrow.is-previous{left:2%}.book-carousel-arrow.is-next{right:2%}.book-carousel-hint{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding:0 3px 14px;color:#81877d;font-size:8px;letter-spacing:.16em}.book-carousel-hint b{color:var(--accent);font-size:11px;letter-spacing:.08em}.book-carousel-hint span:last-child{text-align:right}.work-scene-footer{display:flex;justify-content:space-between;gap:18px;padding-top:12px;border-top:1px solid var(--line-soft);color:#777d73;font-size:8px;letter-spacing:.13em}.work-scene-footer span:first-child{color:var(--accent)}.work-library{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:clamp(30px,4.2vw,58px);min-height:0}.work-library-sidebar{align-self:start;display:flex;flex-direction:column;justify-content:flex-start;min-width:0}.work-library-sidebar>.eyebrow{color:var(--accent)}.work-library-sidebar h2{width:100%;height:clamp(120px,16vw,260px);margin:12px 0 0;overflow:hidden;font-size:0;line-height:0}.work-halftone-canvas{display:block;width:100%;height:100%;max-width:none;cursor:default;touch-action:pan-y}.work-library-filters{display:flex;flex-wrap:wrap;align-items:center;gap:9px clamp(20px,3vw,42px);margin-top:12px}.work-library-filters .work-category-tab{display:inline-flex;width:fit-content;padding:2px 0;border:0;background:transparent;color:#868b82;cursor:pointer;font-size:11px;text-align:left;transition:color .45s ease,transform .6s cubic-bezier(.22,1,.36,1)}.work-library-filters .work-category-tab:after,.work-library-filters .work-category-tab span{display:none}.work-library-filters .work-category-tab:hover{color:var(--white);transform:translate(3px)}.work-library-filters .work-category-tab.is-active{color:var(--accent)}.work-library-gallery{width:100%;min-width:0;align-self:start}.project-book-rail{min-width:0}.project-book-accordion{display:flex;align-items:stretch;gap:10px;height:clamp(440px,42vw,610px);min-width:0;overflow-x:auto;overflow-y:hidden;padding:0 3px;overscroll-behavior-inline:contain;scrollbar-width:none}.project-book-accordion::-webkit-scrollbar{display:none;width:0;height:0}.project-book-slider{display:block;width:calc(100% - 6px);height:14px;margin:11px 3px 0;padding:0;appearance:none;background:transparent;cursor:ew-resize;opacity:.7;transition:opacity .25s ease}.project-book-slider:hover,.project-book-slider:focus-visible{opacity:1}.project-book-slider:focus-visible{outline:1px solid rgba(216,250,112,.45);outline-offset:2px}.project-book-slider::-webkit-slider-runnable-track{height:2px;border-radius:2px;background:#edf1e629}.project-book-slider::-webkit-slider-thumb{width:42px;height:2px;margin-top:0;appearance:none;border:0;border-radius:2px;background:#d8fa707a;transition:background .2s ease,box-shadow .2s ease}.project-book-slider:hover::-webkit-slider-thumb,.project-book-slider:focus-visible::-webkit-slider-thumb{background:#d8fa70d1;box-shadow:0 0 10px #d8fa7033}.project-book-slider::-moz-range-track{height:2px;border:0;border-radius:2px;background:#edf1e629}.project-book-slider::-moz-range-thumb{width:42px;height:2px;border:0;border-radius:2px;background:#d8fa707a}.project-book-slider:hover::-moz-range-thumb,.project-book-slider:focus-visible::-moz-range-thumb{background:#d8fa70d1}.project-book-accordion-item{position:relative;flex:0 0 62px;min-width:62px;height:100%;overflow:hidden;padding:0;border:0;border-radius:23px;background:#303234;box-shadow:0 12px 28px #00000057;color:#fff;cursor:pointer;isolation:isolate;transform:translateY(0);transition:flex-basis 1s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1),box-shadow .7s ease;animation:library-card-in .8s cubic-bezier(.22,1,.36,1) backwards;animation-delay:calc(var(--card-index, 0) * 28ms)}.project-book-accordion-item:hover,.project-book-accordion-item:focus-visible{outline:none;transform:translateY(-4px);box-shadow:0 17px 34px #0000006b}.project-book-accordion-item.is-expanded{flex-basis:clamp(280px,31vw,470px)}.project-book-face{position:absolute;inset:0;display:block;overflow:hidden;border-radius:inherit;background:#777}.project-book-image{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.83) saturate(.88);transition:transform 1.15s cubic-bezier(.22,1,.36,1),filter .8s ease}.project-book-accordion-item:hover .project-book-image,.project-book-accordion-item.is-expanded .project-book-image{filter:brightness(.92) saturate(1);transform:scale(1.045)}.project-book-face:before,.project-book-face:after{position:absolute;z-index:1;inset:0;border-radius:inherit;content:"";pointer-events:none}.project-book-face:before{background:#8284866b;mix-blend-mode:multiply}.project-book-face:after{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='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.52'/%3E%3C/svg%3E");background-size:145px 145px;mix-blend-mode:soft-light;opacity:.45}.project-book-title{position:absolute;z-index:2;top:calc(100% - 132px);left:50%;display:block;width:min(230px,calc(100vh - 150px));max-width:none;overflow:hidden;color:#fff;font-size:clamp(14px,1.25vw,19px);font-weight:700;letter-spacing:-.02em;line-height:1.2;text-align:center;text-overflow:ellipsis;text-shadow:0 1px 8px rgba(0,0,0,.5);transform:translate(-50%,-50%) rotate(90deg);transition:top .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1);white-space:nowrap}.project-book-accordion-item.is-expanded .project-book-title{top:calc(100% - 26px);width:calc(100% - 44px);text-align:center;text-overflow:ellipsis;transform:translate(-50%,-100%)}.work-library-gallery-footer{display:none}.project-book-accordion-item:focus-visible{outline:1px solid var(--accent);outline-offset:3px}@keyframes library-card-in{0%{opacity:0;translate:0 50px;scale:.94}to{opacity:1;translate:0 0;scale:1}}@media(prefers-reduced-motion:reduce){.project-book-accordion-item,.project-book-face,.project-book-image,.project-book-title{transition-duration:.01ms;animation-duration:.01ms}}.work-book-open{margin-top:18px;animation:book-open .48s cubic-bezier(.18,.78,.22,1) both}@keyframes book-open{0%{opacity:0;transform:perspective(1200px) rotateX(5deg) translateY(14px)}to{opacity:1;transform:perspective(1200px) rotateX(0) translateY(0)}}.book-open-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:12px;border-bottom:1px solid var(--line);color:#888e82;font-size:8px;letter-spacing:.14em}.book-open-toolbar .work-detail-back{margin:0}.book-open-close{display:inline-flex;align-items:center;gap:10px;padding:5px 0 5px 12px;border:0;border-left:1px solid var(--line);background:transparent;color:#c5cabb;cursor:pointer;font-size:9px}.book-open-close b{font-size:21px;font-weight:300;line-height:1}.book-open-spread{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);min-height:680px;margin-top:18px;border:1px solid rgba(224,205,172,.6);border-radius:4px;background:#d6c6aa;box-shadow:0 22px 55px #00000061,inset 0 0 0 6px #faefd81a;color:#201a13;overflow:hidden}.book-open-copy-page{position:relative;padding:clamp(25px,4vw,56px);border-right:1px solid rgba(64,49,30,.28);background:linear-gradient(105deg,#e1d1b2,#c9b48f)}.book-open-copy-page:after{position:absolute;top:0;right:-7px;bottom:0;width:14px;background:linear-gradient(90deg,rgba(56,42,25,.18),rgba(245,232,207,.42),transparent);content:"";pointer-events:none}.book-open-kicker,.book-open-category{margin:0;color:#6c593d;font-size:8px;font-weight:750;letter-spacing:.16em;text-transform:uppercase}.book-open-category{margin-top:50px;color:#85704d}.book-open-copy-page h3{margin:13px 0 0;font-size:clamp(34px,4vw,62px);font-weight:900;letter-spacing:-.06em;line-height:1.02}.book-open-description{max-width:500px;margin:17px 0 0;color:#55452f;font-size:14px;line-height:1.9}.book-open-facts{display:grid;grid-template-columns:.65fr 1.35fr;gap:20px;margin-top:40px;padding:16px 0;border-top:1px solid rgba(58,44,27,.22);border-bottom:1px solid rgba(58,44,27,.16)}.book-open-facts div{display:flex;flex-direction:column;gap:9px}.book-open-facts span,.book-open-outcome>span{color:#766247;font-size:7px;font-weight:750;letter-spacing:.15em}.book-open-facts b{color:#2c241a;font-size:12px;font-weight:650;line-height:1.65}.book-open-outcome{max-width:520px;margin-top:24px}.book-open-outcome p{margin:9px 0 0;color:#55452f;font-size:11px;line-height:1.85}.book-open-copy-page .work-detail-open{margin-top:26px;color:#47541f}.book-open-image-page{min-width:0;padding:clamp(20px,3vw,42px);background:linear-gradient(100deg,#c6b391,#ded1b6 14%,#d8c8a9)}.book-open-page-heading{display:flex;justify-content:space-between;gap:14px;margin-bottom:14px;color:#6b593c;font-size:7px;font-weight:750;letter-spacing:.16em}.book-open-preview-list{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;max-height:570px;overflow-y:auto;padding:4px 8px 5px 0;scrollbar-color:#8d7856 transparent}.book-open-preview-image{display:block;width:100%;padding:7px;border:1px solid rgba(68,52,32,.26);background:#eee6d7;box-shadow:0 5px 13px #33281926;cursor:zoom-in;transition:transform .25s ease,box-shadow .25s ease}.book-open-preview-image:hover{box-shadow:0 8px 20px #33281940;transform:translateY(-2px)}.book-open-preview-image img{width:100%;max-height:460px;object-fit:contain;background:#f2eee5}.work-detail-back{display:inline-flex;align-items:center;gap:8px;margin:0 0 22px;padding:9px 0;border:0;border-bottom:1px solid rgba(216,250,112,.38);background:transparent;color:#c5cabb;cursor:pointer;font-size:10px;transition:color .25s ease,border-color .25s ease}.work-detail-back:hover{border-color:var(--accent);color:var(--accent)}.work-detail-open{display:inline-flex;align-items:center;gap:9px;padding:9px 0;border:0;background:transparent;color:var(--accent);cursor:pointer;font-size:10px;transition:color .25s ease}.work-detail-open .arrow{font-size:16px}.work-detail-open:hover{color:#efffb7}.project-viewer-backdrop{position:fixed;z-index:100;inset:0;overflow-y:auto;overscroll-behavior:contain;background:#050705f2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);cursor:zoom-out;animation:viewer-in .5s ease both}.project-viewer-dialog{animation:viewer-panel-in .8s cubic-bezier(.16,1,.3,1) both}.project-viewer-dialog{width:min(var(--frame),calc(100% - 2 * var(--pad)));min-height:100%;margin-inline:auto;padding:31px 0 36px;outline:none;cursor:auto}.project-viewer-header{position:sticky;z-index:2;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:30px;padding:16px 0 21px;border-bottom:1px solid var(--line);background:#070907e0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.project-viewer-title .eyebrow{color:var(--accent)}.project-viewer-title h2{margin:9px 0 5px;font-size:clamp(26px,4vw,50px);font-weight:800;letter-spacing:-.06em;line-height:1.1}.project-viewer-title>p:last-child{margin:0;color:#9ea398;font-size:11px}.project-viewer-close{display:inline-flex;align-items:center;gap:12px;padding:7px 0 7px 12px;border:0;border-left:1px solid var(--line);background:transparent;color:#c4c9bd;cursor:pointer;font-size:10px;white-space:nowrap}.project-viewer-close b{display:grid;width:29px;height:29px;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--accent);font-size:22px;font-weight:300;line-height:1}.project-viewer-close:hover b{background:var(--accent);color:var(--ink)}.project-viewer-meta{display:flex;justify-content:space-between;padding:17px 0 12px;color:#858b80;font-size:8px;letter-spacing:.12em}.project-viewer-meta span:last-child{color:var(--accent)}.project-viewer-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}.project-viewer-image{min-width:0;margin:0;border:1px solid var(--line);background:#10130feb}.project-viewer-image img{width:100%;height:auto;max-height:none;object-fit:initial;background:transparent}.project-viewer-end{display:flex;justify-content:space-between;margin-top:24px;padding-top:12px;border-top:1px solid var(--line);color:#777d73;font-size:8px;letter-spacing:.14em}@keyframes viewer-in{0%{opacity:0}to{opacity:1}}@keyframes viewer-panel-in{0%{opacity:0;filter:blur(3px);transform:translate3d(0,56px,0) scale(.975)}to{opacity:1;filter:blur(0);transform:translateZ(0) scale(1)}}.folder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 22px}.folder-card{position:relative;min-width:0;border:0}.folder-summary{display:block;list-style:none;cursor:pointer}.folder-summary::-webkit-details-marker{display:none}.folder-tab{display:flex;justify-content:space-between;width:72%;min-height:28px;align-items:center;padding:5px 10px 4px;border:1px solid var(--line);border-bottom:0;border-radius:6px 6px 0 0;background:#191e18ed;color:#b5baae;font-size:8px;letter-spacing:.1em}.folder-image-wrap{position:relative;display:block;overflow:hidden;aspect-ratio:1.35 / 1;border:1px solid var(--line);background:#171a16}.folder-image-wrap:after{position:absolute;inset:25% 0 0;content:"";background:linear-gradient(180deg,transparent,rgba(4,5,4,.45));pointer-events:none}.folder-image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s;filter:saturate(.82)}.folder-card:hover .folder-image-wrap img,.folder-card[open] .folder-image-wrap img{transform:scale(1.035);filter:saturate(1)}.folder-corner{position:absolute;z-index:1;left:12px;bottom:11px;color:#fff;font-size:9px;letter-spacing:.15em}.folder-open{position:absolute;z-index:1;right:11px;bottom:10px;width:29px;height:29px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.48);border-radius:50%;color:#fff;font-size:18px;font-weight:300;transition:color .2s,background .2s,transform .2s}.folder-card[open] .folder-open{transform:rotate(45deg);background:var(--accent);color:var(--ink)}.folder-caption{display:flex;align-items:start;justify-content:space-between;gap:15px;padding:15px 1px 10px}.folder-caption strong{display:block;font-size:15px;font-weight:650;line-height:1.45}.folder-caption small{display:block;margin-top:5px;color:#999d93;font-size:10px;line-height:1.6}.folder-arrow{color:var(--accent);font-size:18px;transition:transform .2s}.folder-card:hover .folder-arrow{transform:translate(3px,-3px)}.folder-meta{display:flex;justify-content:space-between;gap:12px;padding-top:9px;border-top:1px solid var(--line-soft);color:#72776e;font-size:8px;letter-spacing:.09em}.project-gallery-wrap{margin-top:22px;padding:18px;border:1px solid var(--line);background:#040504bd}.gallery-heading{display:flex;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid var(--line-soft);color:#d5d8d0;font-size:10px}.gallery-heading span:last-child{color:var(--accent)}.project-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-top:14px}.gallery-item{overflow:hidden;border:1px solid var(--line-soft);background:#111310}.gallery-item img{width:100%;aspect-ratio:1 / .77;object-fit:cover}.gallery-item span{display:block;overflow:hidden;padding:7px 8px;color:#9a9e95;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.gallery-item:hover span{color:var(--accent)}.profile-section{background:linear-gradient(180deg,#080a08f5,#0d100df0)}.profile-intro-grid{display:grid;grid-template-columns:1.28fr .94fr;gap:clamp(26px,5vw,78px);align-items:center;padding:58px 0 72px;border-bottom:1px solid var(--line)}.profile-bio .eyebrow{margin-bottom:19px;color:var(--accent)}.profile-bio h3{margin:0 0 20px;font-size:clamp(25px,3vw,42px);font-weight:700;letter-spacing:-.05em;line-height:1.42}.profile-bio>p:not(.eyebrow){max-width:570px;margin:0;color:#a6aaa1;font-size:13px;line-height:2}.email-link{display:inline-flex;align-items:center;gap:14px;margin-top:27px;padding-bottom:9px;border-bottom:1px solid var(--line);color:#d9ddd3;font-size:10px;letter-spacing:.08em}.email-link .arrow{color:var(--accent);font-size:16px}.profile-metrics{display:grid;gap:0;border-top:1px solid var(--line)}.profile-metrics>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 0;border-bottom:1px solid var(--line)}.profile-metrics strong{color:var(--accent);font-size:clamp(34px,4vw,55px);font-weight:800;letter-spacing:-.08em;line-height:.9;white-space:nowrap}.profile-metrics strong span{font-size:.42em;letter-spacing:0}.profile-metrics>div>span{color:#9a9e95;font-size:8px;line-height:1.7;text-align:right;letter-spacing:.08em}.resume-columns{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(36px,8vw,128px);padding-top:35px}.resume-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:0 0 17px}.resume-heading h3{margin:0;font-size:18px;font-weight:650}.resume-heading span{color:#858a80;font-size:8px;letter-spacing:.13em}.experience-row,.education-row{display:grid;grid-template-columns:minmax(120px,.78fr) 1.5fr 20px;align-items:center;gap:18px;min-height:65px;border-top:1px solid var(--line-soft)}.experience-period{color:#90958b;font-size:10px;letter-spacing:.025em}.experience-company{color:#e2e5dc;font-size:12px}.experience-company small{display:block;margin-top:5px;color:#8b9086;font-size:9px}.experience-marker{color:var(--accent);font-size:13px;text-align:right}.education-row{min-height:73px}.strengths-section{background:linear-gradient(180deg,#0d100df0,#080a08f5)}.strength-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;padding-top:40px}.strength-card{min-height:300px;display:flex;flex-direction:column;padding:20px 19px;border:1px solid var(--line);background:#0b0d0bad;transition:border-color .25s,transform .25s,background .25s}.strength-card:hover{transform:translateY(-5px);border-color:#d8fa7085;background:#141812d1}.strength-topline{display:flex;justify-content:space-between;color:var(--accent);font-size:11px}.strength-topline .arrow{font-size:16px}.strength-card .eyebrow{margin-top:32px;color:#848a7d;font-size:8px}.strength-card h3{margin:11px 0 12px;font-size:19px;font-weight:650;letter-spacing:-.035em}.strength-text{margin:0;color:#9da197;font-size:11px;line-height:1.9}.strength-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:24px}.strength-tags span{padding:5px 7px;border:1px solid var(--line-soft);color:#afb4a8;font-size:8px}.blog-section{background:#080a08f5}.notes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:42px}.note-card{min-height:260px;display:flex;flex-direction:column;padding:19px 20px 17px;border:1px solid var(--line);background:linear-gradient(145deg,#161a15d6,#090b09c2)}.note-topline{display:flex;justify-content:space-between;color:#898e84;font-size:8px;letter-spacing:.11em}.note-topline span:last-child{color:var(--accent);font-size:14px}.note-card h3{max-width:400px;margin:40px 0 12px;font-size:clamp(17px,1.65vw,23px);font-weight:650;line-height:1.55}.note-card p{margin:0;color:#999e94;font-size:10px;line-height:1.9}.note-card a{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:20px;color:#dfe3d8;font-size:10px}.note-card a .arrow{color:var(--accent);font-size:15px}.contact-section{min-height:100svh;position:relative;display:flex;align-items:stretch;background:linear-gradient(135deg,#111510ed,#050705f7 60%)}.contact-frame{min-height:100svh;display:flex;flex-direction:column;justify-content:space-between;padding-top:110px;padding-bottom:24px}.contact-topline,.contact-footer{position:relative;z-index:1;display:flex;justify-content:space-between;gap:16px;color:#8b9086;font-size:8px;letter-spacing:.13em}.contact-content{position:relative;z-index:1;padding-block:60px}.contact-content .eyebrow{display:flex;align-items:center;gap:9px;color:#b0b5a9}.contact-content h2{margin:20px 0 18px;font-size:clamp(62px,10vw,148px);font-weight:850;letter-spacing:-.09em;line-height:.95}.contact-content h2 em{color:var(--accent);font-style:normal}.contact-description{color:#a0a59a;font-size:14px;line-height:1.9}.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:15px;margin-top:20px}.contact-link{display:inline-flex;align-items:center;gap:13px;padding-bottom:10px;border-bottom:1px solid rgba(216,250,112,.48);color:#f0f1eb;font-size:clamp(14px,2vw,20px);transition:border-color .25s ease,color .25s ease}.contact-link:hover{border-color:var(--accent);color:var(--accent)}.contact-link .arrow{margin-left:4px;color:var(--accent)}.contact-icon{width:19px;height:19px;flex:none;color:var(--accent)}.contact-footer{padding-top:18px;border-top:1px solid var(--line)}.contact-footer a{color:#d9ddd2}[data-reveal]{opacity:0;filter:blur(3px);transform:translate3d(0,68px,0) scale(.965);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform 1.05s cubic-bezier(.16,1,.3,1),filter .85s ease;transition-delay:var(--reveal-delay, 0ms);will-change:opacity,transform,filter}[data-reveal=rise]{transform:perspective(1300px) translate3d(0,78px,0) scale(.96) rotateX(2deg);transform-origin:center bottom}[data-reveal=left]{transform:translate3d(-86px,30px,0) scale(.97)}[data-reveal=right]{transform:translate3d(86px,30px,0) scale(.97)}[data-reveal=card]{transform:perspective(900px) translate3d(0,76px,0) rotateY(-4deg) scale(.93);transform-origin:center}[data-reveal].is-visible{opacity:1;filter:blur(0);transform:translateZ(0) scale(1) rotateX(0) rotateY(0)}.strength-card[data-reveal].is-visible:hover{transform:translateY(-5px)}.strength-card,.note-card,.folder-image-wrap,.project-viewer-image{transition:border-color .3s ease,box-shadow .35s ease,transform .3s ease,background .3s ease}.strength-card[data-reveal],.note-card[data-reveal]{transition:opacity .9s cubic-bezier(.2,.7,.2,1) var(--reveal-delay, 0ms),filter .85s ease var(--reveal-delay, 0ms),transform 1.05s cubic-bezier(.16,1,.3,1) var(--reveal-delay, 0ms),border-color .3s ease,box-shadow .35s ease,background .3s ease}.strength-card:hover,.note-card:hover,.project-viewer-image:hover,.folder-card:hover .folder-image-wrap{border-color:#d8fa70b8;box-shadow:0 0 0 1px #d8fa7024,0 0 24px #d8fa7021}.folder-image-wrap img{transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s,box-shadow .35s}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media(max-width:1080px){.section-heading{grid-template-columns:1.1fr .9fr;gap:20px}.work-library{grid-template-columns:minmax(0,1fr);gap:clamp(26px,4vw,42px)}.work-library-sidebar h2{height:clamp(110px,16vw,170px);margin-top:12px}.project-book-accordion{height:500px;gap:8px}.project-book-accordion-item{flex-basis:52px;min-width:52px;border-radius:20px}.project-book-accordion-item.is-expanded{flex-basis:clamp(260px,34vw,390px)}.folder-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 20px}.profile-intro-grid{grid-template-columns:1.2fr .8fr}.profile-metrics{grid-column:1 / -1;grid-template-columns:repeat(3,1fr)}.profile-metrics>div{padding-inline:12px;border-right:1px solid var(--line)}.profile-metrics>div:first-child{padding-left:0}.profile-metrics>div:last-child{border-right:0}.strength-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){:root{--pad: 22px}.site-header{height:68px}.wordmark{font-size:16px}.menu-toggle{width:38px;height:38px;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:8px;border:1px solid var(--line);background:#080a0880}.menu-toggle span{display:block;height:1px;width:100%;background:var(--white)}.main-nav{position:absolute;top:68px;right:0;left:0;height:auto;display:none;flex-direction:column;align-items:stretch;gap:0;padding:12px 18px 18px;border:1px solid var(--line);background:#080a08f7}.main-nav.is-open{display:flex}.main-nav a{justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line-soft)}.main-nav .nav-contact{padding-left:0;border-left:0;border-bottom:0}.section-pad{padding-block:85px}.work-library{grid-template-columns:1fr;align-items:start;gap:30px;min-height:0}.work-library-sidebar{align-self:auto}.work-library-sidebar h2{height:clamp(92px,24vw,150px);margin-top:14px}.work-library-filters{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:16px}.work-library-filters .work-category-tab{padding:3px 0;font-size:10px}.project-book-accordion{height:430px;gap:7px}.project-book-accordion-item{flex-basis:42px;min-width:42px;border-radius:17px}.project-book-accordion-item.is-expanded{flex-basis:min(76vw,355px)}.project-book-title{font-size:15px}.section-heading{gap:10px;align-items:stretch;padding-bottom:25px}.section-heading h2{font-size:clamp(23px,5vw,34px)}.section-heading .section-halftone-heading{height:clamp(74px,20vw,132px)}.section-heading-description{align-self:flex-start;margin-top:4px;font-size:10px;text-align:left}.work-intro{grid-template-columns:1fr;gap:0;padding-bottom:18px}.work-intro h2{grid-column:1;margin-top:10px;font-size:clamp(39px,9vw,68px);letter-spacing:-.07em}.work-intro-meta{grid-column:1;margin:11px 0 0;font-size:7px}.archive-toolbar{align-items:end;gap:12px;padding-top:14px}.work-category-tabs{flex:1;flex-wrap:wrap;justify-content:flex-start;gap:9px 14px}.work-category-tab{gap:5px;padding-bottom:8px;font-size:10px;white-space:nowrap}.work-category-tab span{font-size:6px}.archive-count{padding-bottom:8px;font-size:7px}.archive-count b{font-size:12px}.archive-count i{display:inline;font-size:7px}.work-scene-caption{gap:7px;margin-top:15px;font-size:7px;letter-spacing:.08em}.work-scene-caption b{font-size:6px}.project-book-carousel{--book-step: clamp(126px, 37vw, 185px);height:455px}.project-book-card{top:45%;width:clamp(180px,54vw,255px)}.book-carousel-arrow{top:45%;width:34px;height:34px;font-size:17px}.book-carousel-arrow.is-previous{left:0}.book-carousel-arrow.is-next{right:0}.book-carousel-hint{gap:6px;font-size:6px;letter-spacing:.08em}.book-carousel-hint b{font-size:9px}.work-scene-footer{gap:8px;font-size:6px;letter-spacing:.07em}.work-scene-footer span:nth-child(2){display:none}.book-open-toolbar{gap:10px;font-size:6px}.book-open-toolbar>span{flex:1;text-align:center}.book-open-toolbar .work-detail-back{margin:0;font-size:8px}.book-open-close{gap:4px;padding-left:7px;font-size:8px}.book-open-close b{font-size:18px}.book-open-spread{grid-template-columns:1fr;min-height:0;margin-top:12px}.book-open-copy-page{padding:26px 22px 28px;border-right:0;border-bottom:1px solid rgba(64,49,30,.28)}.book-open-category{margin-top:28px}.book-open-copy-page h3{font-size:clamp(34px,10vw,56px)}.book-open-description{margin-top:12px;font-size:12px}.book-open-facts{gap:10px;margin-top:24px}.book-open-facts b,.book-open-outcome p{font-size:10px}.book-open-image-page{padding:19px 16px}.book-open-preview-list{max-height:430px}.work-detail-back,.work-detail-open{font-size:9px}.project-viewer-dialog{width:calc(100% - 30px);padding-top:12px}.project-viewer-header{gap:12px;padding-top:12px}.project-viewer-title h2{font-size:28px}.project-viewer-title>p:last-child{max-width:250px;line-height:1.6}.project-viewer-close{gap:6px;padding-left:7px;font-size:0}.project-viewer-close b{width:28px;height:28px}.project-viewer-grid{grid-template-columns:1fr;gap:12px}.project-viewer-image img{max-height:none}.folder-grid{gap:30px 14px}.folder-tab{width:80%;min-height:25px;padding-inline:7px;font-size:7px}.folder-image-wrap{aspect-ratio:1.15 / 1}.folder-caption{gap:6px;padding-top:11px}.folder-caption strong{font-size:12px}.folder-caption small{font-size:9px}.folder-meta{flex-direction:column;gap:4px;font-size:7px}.folder-open{width:25px;height:25px}.project-gallery-wrap{margin-top:15px;padding:10px}.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gallery-item span{font-size:8px}.profile-intro-grid{grid-template-columns:1fr;gap:28px;padding:35px 0 48px}.profile-bio h3{font-size:27px}.profile-metrics{grid-column:auto;grid-template-columns:1fr}.profile-metrics>div{padding-inline:0;border-right:0}.profile-metrics strong{font-size:42px}.resume-columns{grid-template-columns:1fr;gap:42px;padding-top:28px}.experience-row,.education-row{grid-template-columns:minmax(100px,.8fr) 1.5fr 16px;gap:10px;min-height:61px}.experience-period{font-size:9px}.experience-company{font-size:11px}.strength-grid{gap:10px;padding-top:28px}.strength-card{min-height:282px;padding:15px 13px}.strength-card .eyebrow{font-size:7px}.strength-card h3{font-size:16px}.strength-text{font-size:10px}.strength-tags{gap:4px}.strength-tags span{padding:4px 5px;font-size:7px}.notes-grid{grid-template-columns:1fr;gap:10px;padding-top:28px}.note-card{min-height:235px}.note-card h3{margin-top:30px;font-size:20px}.contact-frame{min-height:100svh;padding-top:88px}.contact-topline,.contact-footer{font-size:7px}.contact-topline span:nth-child(2),.contact-footer span:nth-child(2){display:none}.contact-content h2{font-size:clamp(58px,16vw,100px)}.contact-description{font-size:12px}.contact-link{gap:10px;font-size:13px}}@media(max-width:420px){:root{--pad: 17px}.folder-grid{grid-template-columns:1fr;gap:28px}.folder-image-wrap{aspect-ratio:1.4 / 1}.folder-meta{flex-direction:row}.archive-toolbar{gap:7px}.work-category-tabs{gap:4px}.work-category-tab{font-size:9px}.project-viewer-meta{font-size:7px}.strength-card{min-height:290px}.contact-link{font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}[data-reveal]{opacity:1;filter:none;transform:none}}
