:root{--space:#ecedea;--paper:#fafaf7;--ink:#272a27;--muted:#6d716b;--line:#c9ccc5;--ease:cubic-bezier(.2,.7,.25,1);--fast:120ms;font-family:Arial,"Helvetica Neue","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--space);font-synthesis:none}
*{box-sizing:border-box}html{scrollbar-gutter:auto}html:has(body[data-mode=grid]){scrollbar-gutter:auto;scrollbar-width:none}body[data-mode=grid]{scrollbar-width:none}html:has(body[data-mode=grid])::-webkit-scrollbar,body[data-mode=grid]::-webkit-scrollbar{display:none}body{margin:0}body[data-mode=space]{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{font:inherit;color:inherit;cursor:pointer;border:0;background:transparent}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:1px solid var(--ink);outline-offset:6px}::selection{background:#ccd1c4}button:active{transform:translateY(1px)}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}svg{display:block}.text-button{font-size:12px;letter-spacing:.02em;padding:12px 0;transition:opacity var(--fast)}.text-button:hover{opacity:.55}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:200;top:12px;left:12px;background:var(--paper);padding:14px;transform:translateY(-160%);font-size:14px}.skip-link:focus{transform:none}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:70;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23272a27' d='M0 0h160v160H0z' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.site-header{position:fixed;left:36px;right:36px;top:25px;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;height:42px}.wordmark{font:italic 30px/.9 Georgia,"Times New Roman",serif;letter-spacing:-1.5px;position:relative}.wordmark-dot{font:9px Arial;position:absolute;right:-11px;top:0;letter-spacing:0}.header-notes{display:flex;align-items:center;gap:20px;margin-left:54px;font-size:10px;letter-spacing:.08em}.header-notes>span:first-child{font-size:11px;letter-spacing:.08em}.header-divider{width:24px;height:1px;background:#aeb3a9}.about-trigger{display:flex;gap:12px;align-items:center;min-height:44px}.tiny-cross{width:10px;height:10px;position:relative;transition:transform 320ms var(--ease)}.tiny-cross:before,.tiny-cross:after{content:"";position:absolute;top:5px;left:0;width:10px;height:1px;background:currentColor}.tiny-cross:after{transform:rotate(90deg)}.about-trigger:hover .tiny-cross{transform:rotate(90deg)}
.space-view{height:100svh;min-height:540px;position:relative;overflow:hidden;isolation:isolate}.scene-light{position:absolute;inset:0;background:radial-gradient(ellipse at 45% 34%,#f8f8f4b3 0%,transparent 65%);pointer-events:none}.scene{position:absolute;inset:0;touch-action:pinch-zoom;outline:none;cursor:grab}.scene.dragging{cursor:grabbing}.scene.hovering:not(.dragging){cursor:pointer}#paper-canvas{width:100%;height:100%;display:block;opacity:0;transition:opacity 650ms var(--ease)}.sketch{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;transition:opacity 650ms var(--ease)}.sketch path{fill:none;stroke:#72796c;stroke-width:.75;vector-effect:non-scaling-stroke;stroke-dasharray:1800;stroke-dashoffset:1800;opacity:.62;transition:stroke-dashoffset 180ms linear}.paper-focus-targets{position:absolute;inset:0;pointer-events:none}.paper-target{position:absolute;pointer-events:none;opacity:0;transform:translate(-50%,-50%);border:0;background:transparent}.paper-target:focus-visible{opacity:0;outline:none}.chrome{transition:opacity 400ms var(--ease),transform 400ms var(--ease)}body[data-phase=drawing] .chrome{opacity:0;pointer-events:none}body[data-phase=ready] #paper-canvas{opacity:1}body[data-phase=ready] .sketch{opacity:0}body[data-phase=ready] .loading-note{opacity:0;visibility:hidden}.loading-note{position:absolute;z-index:25;left:36px;bottom:34px;display:flex;gap:12px;align-items:center;font-size:12px;letter-spacing:.04em;transition:opacity 240ms,visibility 240ms}.loading-note button{padding:12px;text-decoration:underline;text-underline-offset:5px}.pencil-dot{width:5px;height:5px;background:#777e70;animation:pencil 1.2s ease-in-out infinite}@keyframes pencil{50%{transform:rotate(45deg);opacity:.3}}
.hero-identity{position:absolute;left:9.4%;bottom:13.3%;pointer-events:none}.identity-meta{color:var(--muted);display:flex;gap:52px;margin-bottom:24px;font-size:9px;line-height:1.35;letter-spacing:.03em}h1{font-size:clamp(46px,4.9vw,94px);font-weight:400;letter-spacing:-.065em;line-height:.9}.identity-note{font-size:11px;letter-spacing:.08em;margin-top:23px;color:var(--muted)}.manifesto{position:absolute;top:21%;right:9.5%;text-align:right;pointer-events:none}.manifesto-mark{display:block;margin-bottom:16px;font-size:28px;line-height:1}.manifesto p{font-size:clamp(20px,1.85vw,36px);line-height:.96;letter-spacing:-.045em}.manifesto>span:last-child{display:block;margin-top:18px;font-size:10px;letter-spacing:.08em;color:var(--muted)}.active-work{position:absolute;left:66.4%;bottom:19%;display:grid;gap:8px;max-width:25vw}.work-label{font-size:9px;letter-spacing:.12em;color:var(--muted)}.work-label span{margin-left:8px;font-variant-numeric:tabular-nums}.active-work-title{padding:3px 0;text-align:left;font-size:17px;letter-spacing:-.01em;display:flex;align-items:center;gap:20px;line-height:1.4}.active-work-title>span{font-size:18px;transition:transform var(--fast)}.active-work-title:hover>span{transform:translate(2px,-2px)}.active-work-tags{font-size:9px;letter-spacing:.09em;color:var(--muted);text-transform:uppercase}.space-controls{position:absolute;left:50%;bottom:8.7%;transform:translateX(-50%);display:flex;align-items:center;gap:20px}.arrow-button{width:44px;height:44px;font-size:22px;transition:background var(--fast);border-radius:50%;font-weight:400}.arrow-button:hover{background:#dfe2d9}.page-count{display:flex;align-items:center;gap:16px;font-size:12px;font-variant-numeric:tabular-nums}.page-count>span:last-child{color:#848a7e}.scroll-note{position:absolute;bottom:9.8%;right:36px;display:flex;align-items:center;gap:13px;color:var(--muted);font-size:11px;line-height:1.6;letter-spacing:.04em}.scroll-note small{font-size:8px;letter-spacing:.08em}.scroll-stroke{width:1px;height:27px;background:#8b9282;position:relative}.scroll-stroke:after{content:"";position:absolute;bottom:0;left:-2px;width:5px;height:5px;border-right:1px solid #8b9282;border-bottom:1px solid #8b9282;transform:rotate(45deg)}
.mode-switch{position:fixed;z-index:22;overflow:hidden;isolation:isolate;contain:paint;clip-path:inset(0 round 999px);right:max(16px,env(safe-area-inset-right));top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:4px;width:52px;padding:3px;border:1px solid #fafaf755;border-radius:999px;background:#fafaf766;box-shadow:0 2px 8px #333c2008;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.mode-button{flex:0 0 44px;width:44px;height:44px;min-height:44px;display:grid;place-items:center;padding:0;border-radius:50%;color:#687167;transition:color var(--fast),background var(--fast),box-shadow var(--fast)}
.mode-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.4;flex-shrink:0}
.mode-button:not(.active) svg{color:#272a27;transition:color 120ms ease-out}.mode-button.is-on-dark:not(.active) svg{color:#fafaf7}
@media(hover:hover){.mode-button:not(.active):not(:disabled):hover{color:var(--ink);background:#e3e5df}.mode-button:not(.active):not(:disabled):hover svg{color:#272a27}}.mode-button.active{color:var(--ink);background:#fafaf7f5;box-shadow:0 1px 4px #242a170a}.mode-button:focus-visible{outline-offset:3px}
.site-footer{position:fixed;z-index:15;bottom:20px;left:36px;right:36px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.065em;color:#72796a;pointer-events:none}.footer-center{position:absolute;left:50%;transform:translateX(-50%);font-size:8px}.site-footer>span:last-child{font-size:10px;letter-spacing:.04em}
.gallery-view{padding:140px 9.4% 0;min-height:100svh}.gallery-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:50px}.eyebrow{font-size:10px;line-height:1.5;letter-spacing:.1em;color:var(--muted);margin-bottom:22px}.gallery-heading h2{font-size:clamp(44px,5.4vw,92px);line-height:.91;font-weight:400;letter-spacing:-.06em}.title-period{color:#979d8e}.gallery-intro{white-space:nowrap;font-size:12px;line-height:1.9;letter-spacing:.04em;color:var(--muted);padding-bottom:5px;margin-right:0;text-align:right}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-bottom:30px;padding-top:15px}.filters{display:flex;gap:7px;flex-wrap:wrap}.filter{padding:10px 13px;min-width:44px;min-height:44px;font-size:11px;color:var(--muted);transition:background var(--fast),color var(--fast)}.filter.active{color:var(--ink);background:var(--paper)}.filter:hover{color:var(--ink)}.filter-count{font-size:10px;letter-spacing:.08em;white-space:nowrap;color:var(--muted)}.gallery{columns:4;column-gap:22px}.work-card{display:inline-block;width:100%;break-inside:avoid;vertical-align:top;margin:0 0 28px}.work-card-button{width:100%;padding:0;display:block;text-align:left}.work-image{display:block;position:relative;background:var(--paper);padding:5px;box-shadow:0 1px 2px #343b2526,0 10px 18px -14px #343b2533;transition:transform 240ms var(--ease),box-shadow 240ms var(--ease)}.work-image:after{content:"";position:absolute;inset:1px;border:1px solid #ffffff61;pointer-events:none}.work-card-button:hover .work-image{transform:translateY(-4px) rotate(-.5deg);box-shadow:0 3px 5px #343b2526,0 16px 26px -14px #343b2533}.work-image img{display:block;width:100%;height:auto;object-fit:contain;background:#e1e3dc}.work-caption{padding:13px 1px 0;display:flex;justify-content:space-between;align-items:baseline;gap:12px}.work-caption h3{font-size:12px;line-height:1.6;font-weight:400;letter-spacing:.03em}.work-caption>span{font-size:9px;color:var(--muted);font-variant-numeric:tabular-nums}.work-category{display:block;margin-top:3px;font-size:9px;line-height:1.4;letter-spacing:.07em;color:var(--muted);text-transform:uppercase}.gallery-footer{display:flex;justify-content:flex-start;align-items:center;gap:20px;border-top:1px solid var(--line);padding:28px 0 52px;margin-top:30px;font-size:9px;letter-spacing:.065em;color:#72796a;text-align:left}.gallery-copyright{white-space:nowrap}.empty-state{padding:100px 0;text-align:center;font-size:18px}.empty-state button{margin-top:15px}body[data-mode=grid] .site-header{position:fixed;z-index:40;left:0;right:0;top:0;padding:calc(22px + env(safe-area-inset-top)) max(36px,env(safe-area-inset-right)) 22px max(36px,env(safe-area-inset-left));height:calc(88px + env(safe-area-inset-top));background:#ecedeab3;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid transparent}body[data-mode=grid] .site-footer{display:none}
#transition-layer{position:fixed;inset:0;z-index:30;pointer-events:none}.transition-paper{position:fixed;top:0;left:0;object-fit:contain;box-sizing:border-box;padding:5px;background:var(--paper);box-shadow:0 5px 18px #343b2526;transform-origin:0 0;will-change:transform,width,height;pointer-events:none}
 dialog{color:var(--ink);border:0;padding:0;overscroll-behavior:contain}dialog::backdrop{background:#333a2b4d;backdrop-filter:blur(6px)}.detail-dialog{position:fixed;inset:0;margin:0;width:100%;height:100svh;max-width:none;max-height:none;background:#f1f2ed;overflow-y:auto}.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 36px;min-height:85px;border-bottom:1px solid #c9ccc582;position:sticky;top:0;z-index:2;background:#f1f2edf0;backdrop-filter:blur(12px)}.dialog-brand{font-size:10px;letter-spacing:.1em}.close-button{font-size:12px;display:flex;gap:18px;align-items:center;min-height:44px;padding:0 7px}.close-button>span{font-size:25px;font-weight:300}.detail-content{width:min(1080px,83%);margin:55px auto 0}.detail-art{width:100%;background:var(--paper);padding:12px;box-shadow:0 1px 3px #343b2526,0 16px 50px -26px #343b2540;min-height:200px;display:grid;place-items:center}.detail-art img{display:block;width:auto;max-width:100%;max-height:65svh;height:auto}.detail-info{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:36px 0 45px}.detail-info .eyebrow{margin-bottom:12px}.detail-info h2{font-size:38px;letter-spacing:-.035em;line-height:1.25;font-weight:400}.detail-tags{font-size:10px;letter-spacing:.1em;text-transform:uppercase;margin:3px 0 14px}.detail-description{max-width:48ch;font-size:14px;line-height:1.9;letter-spacing:.02em;color:var(--muted)}.detail-navigation{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:16px 0 30px}.detail-navigation>span{font-size:9px;color:var(--muted);letter-spacing:.08em}.about-dialog{position:fixed;inset:24px 24px 24px auto;margin:0;width:min(760px,calc(100% - 48px));height:calc(100svh - 48px);max-width:none;max-height:none;background:var(--paper);box-shadow:0 30px 100px #20251933;overflow-y:auto}.about-dialog .dialog-header{background:#fafaf7f0}.about-content{padding:52px 11% 40px}.about-content h2{font-size:clamp(42px,5vw,72px);line-height:1.15;letter-spacing:-.05em;font-weight:400;margin-bottom:40px}.about-prose{font-size:14px;line-height:2;color:#62695b;max-width:42ch}.about-prose p+p{margin-top:22px}.about-signature{margin-top:46px;padding-top:28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.about-signature>span{font:italic 37px Georgia;letter-spacing:-1.7px}.about-signature small{font-size:8px;letter-spacing:.1em;color:var(--muted)}.image-error{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;min-height:120px;padding:20px;text-align:center;font-size:12px;background:#e1e3dc;color:#555d4b;width:100%;height:100%}.image-error small{font-size:10px}.retry-image{font-size:11px;padding:12px;text-decoration:underline;text-underline-offset:4px}.no-script{position:fixed;inset:0;z-index:500;background:var(--space);padding:10vw;font-size:16px;line-height:2}.no-script h1{font-size:36px;margin-bottom:30px}.no-script a{text-decoration:underline}
@media(min-width:1700px){.gallery{column-gap:28px}.hero-identity{bottom:14%}.identity-meta{margin-bottom:30px;gap:70px}.active-work{bottom:20%}.gallery-view{padding-top:155px}}
@media(max-width:1399px){.gallery{columns:3}.hero-identity{left:7.5%;bottom:15%}.manifesto{right:10%}.gallery-view{padding-left:7.5%;padding-right:11%}.identity-meta{gap:35px}.active-work{left:65%;bottom:21%}}
@media(max-width:999px){.gallery{columns:2}.header-notes{display:none}.gallery-heading{margin-bottom:36px}.gallery-intro{font-size:11px;margin-right:0}.active-work{left:62%;bottom:22%}.hero-identity{left:7%;bottom:17%}.identity-meta{gap:23px;font-size:8px}.manifesto{top:17%;right:8%}.manifesto p{font-size:24px}.gallery-view{padding-right:16%}.scroll-note{bottom:10%;right:24px}.site-header{left:24px;right:24px}.site-footer{left:24px;right:24px}.footer-center{display:none}.space-controls{bottom:9%;gap:10px}}
@media(max-width:767px){html{scrollbar-gutter:auto}.site-header{left:22px;right:22px;top:18px;height:38px}.wordmark{font-size:27px}.about-trigger{font-size:11px;gap:9px}.space-view{min-height:560px}.hero-identity{left:23px;bottom:calc(151px + env(safe-area-inset-bottom))}.identity-meta{font-size:7px;gap:24px;margin-bottom:16px}h1{font-size:clamp(28px,8.7vw,42px);line-height:.9}.identity-note{font-size:10px;letter-spacing:.02em;margin-top:15px;max-width:135px;line-height:1.6}.manifesto{top:16%;right:24px}.manifesto-mark{font-size:23px;margin-bottom:10px}.manifesto p{font-size:21px}.manifesto>span:last-child{font-size:8px;max-width:100px;line-height:1.6;margin-top:12px}.active-work{left:auto;right:23px;bottom:calc(172px + env(safe-area-inset-bottom));max-width:48%;gap:6px;text-align:right}.active-work-title{font-size:13px;justify-content:flex-end;gap:10px}.work-label{font-size:7px;letter-spacing:.08em}.active-work-tags{font-size:7px;letter-spacing:.03em}.space-controls{bottom:calc(91px + env(safe-area-inset-bottom));gap:15px}.page-count{font-size:11px;gap:12px}.arrow-button{font-size:21px}.mode-switch{top:auto;right:auto;left:50%;bottom:calc(33px + env(safe-area-inset-bottom));width:100px;transform:translateX(-50%);flex-direction:row}.site-footer{bottom:calc(11px + env(safe-area-inset-bottom));left:23px;right:23px;font-size:7px;letter-spacing:.03em}.site-footer>span:last-child{font-size:8px}.scroll-note{display:none}.gallery-view{padding:118px 22px 0}.gallery-heading{display:block;margin-bottom:30px}.gallery-heading h2{font-size:53px}.gallery-heading .eyebrow{font-size:8px;margin-bottom:17px}.gallery-intro{margin-top:22px;font-size:11px}.gallery-toolbar{padding-top:10px;gap:5px;margin-bottom:24px}.filters{gap:0}.filter{padding:10px 11px;font-size:10px;min-width:40px}.filter-count{font-size:9px}.gallery{column-gap:16px}.gallery-footer{padding-bottom:130px;font-size:8px;margin-top:12px}.work-card{margin-bottom:25px}.work-caption h3{font-size:12px}.work-category{font-size:8px}body[data-mode=grid] .site-header{padding:calc(16px + env(safe-area-inset-top)) max(22px,env(safe-area-inset-right)) 16px max(22px,env(safe-area-inset-left));height:calc(76px + env(safe-area-inset-top))}.loading-note{left:23px;right:23px;bottom:35px;font-size:11px;flex-wrap:wrap;gap:9px}.dialog-header{padding:14px 22px;min-height:75px}.dialog-brand{font-size:8px;letter-spacing:.06em}.close-button{font-size:11px;gap:12px}.detail-content{width:calc(100% - 36px);margin:28px auto 0}.detail-art{padding:7px;min-height:100px}.detail-art img{max-height:none;max-width:100%}.detail-info{grid-template-columns:1fr;gap:23px;padding:29px 5px 34px}.detail-info h2{font-size:30px}.detail-description{font-size:13px;line-height:1.9}.detail-navigation{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.detail-navigation>span{font-size:7px;letter-spacing:.02em}.about-dialog{inset:0;width:100%;height:100svh}.about-content{padding:38px 30px}.about-content h2{font-size:50px;margin-bottom:30px}.about-prose{font-size:13px}.about-signature{margin-top:35px}.about-signature small{font-size:7px}}
@media(max-width:599px){.gallery{columns:1}.work-card{margin-bottom:30px}.work-image{padding:6px}.gallery-intro br{display:none}.gallery-heading h2{font-size:clamp(46px,14.25vw,56px)}.filter{padding:10px 10px;min-width:38px}.filter-count{font-size:8px}.work-caption h3{font-size:13px}.work-category{font-size:9px}}
@media(max-height:620px) and (min-width:768px){.space-view{min-height:420px}.hero-identity{bottom:19%}h1{font-size:46px}.identity-meta{margin-bottom:12px}.identity-note{margin-top:12px}.manifesto{top:20%}.active-work{bottom:22%}.site-footer{bottom:12px}.space-controls{bottom:7%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}.chrome,#paper-canvas,.sketch{transition-duration:100ms}.work-image{transition:opacity 100ms}.work-card-button:hover .work-image{transform:none}.transition-paper{display:none}.scroll-stroke{display:none}}
/* Keep mobile typography outside the paper corridor. */
@media(max-width:767px){.manifesto{top:104px}.manifesto-mark{display:none}.manifesto p{font-size:18px}.manifesto>span:last-child{font-size:9px;margin-top:10px}.work-label,.active-work-tags{font-size:9px}.active-work{max-width:45%}.identity-meta{font-size:8px}.site-footer{font-size:8px}.filter{min-width:44px}.filter-count{letter-spacing:0}.mode-button:disabled{opacity:.4}.gallery-toolbar{gap:10px}}
@media(max-width:767px) and (max-height:740px){.hero-identity{bottom:149px}.identity-meta,.identity-note{display:none}.hero-identity h1{font-size:clamp(28px,8.7vw,42px)}.active-work{bottom:164px}.manifesto{top:92px}.manifesto p{font-size:16px}.manifesto>span:last-child{display:none}}
.paper-hover{position:absolute;z-index:8;overflow:hidden;isolation:isolate;contain:paint;clip-path:inset(0 round 14px);display:flex;align-items:center;gap:12px;width:max-content;max-width:min(264px,calc(100% - 24px));height:60px;padding:6px;border:1px solid #fafaf733;border-radius:14px;background:#fafaf7d1;box-shadow:0 2px 8px #333c2008;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;opacity:0;transition:opacity 120ms;white-space:nowrap}.paper-hover__image{flex:0 0 46px;width:46px;height:46px;object-fit:cover;border-radius:9px;background:#e7eae5}.paper-hover__image.is-unavailable{visibility:hidden}.paper-hover__title{min-width:0;flex:1;padding-right:10px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;letter-spacing:.01em;line-height:1.4;color:#303831}.scene.hovering:not(.dragging) .paper-hover{opacity:1}body[data-phase=drawing] .paper-hover{display:none}.site-header{transition-delay:80ms}.hero-identity{transition-delay:160ms}.manifesto{transition-delay:240ms}.space-controls,.scroll-note{transition-delay:280ms}.gallery-toolbar .filter-count{padding-right:2px}.mode-button:disabled{opacity:.4;cursor:default}
@media(max-width:767px){.manifesto>span:last-child{max-width:none;white-space:nowrap;font-size:8px}.identity-note{max-width:160px}.paper-hover{display:none}}
@media(min-width:1400px){.gallery-view{padding-right:12%}}
@media(min-width:768px) and (max-width:999px){.gallery-view{padding-right:147px}}
@media(min-width:1000px){.active-work{bottom:14%}}
@media(min-width:768px) and (max-width:1199px){.manifesto{top:15%}}
@media(max-height:579px){.space-view{min-height:0}.hero-identity{bottom:55px}.hero-identity h1{font-size:30px}.identity-meta,.identity-note{display:none}.manifesto p{font-size:16px}.manifesto-mark,.manifesto>span:last-child{display:none}.scroll-note{display:none}}
@media(max-width:767px) and (max-height:579px){.hero-identity{bottom:151px}.hero-identity h1{font-size:clamp(28px,8.7vw,42px)}.active-work,.manifesto{display:none}}
.detail-art{max-width:100%;margin-inline:auto}.detail-art img{width:100%;height:auto;max-height:none}

/* Opening reference: dotted drawing paper, graphite tracing and a cyan counter. */
.entry-dots{position:absolute;inset:0;pointer-events:none;background-color:#f3f2ed;background-image:radial-gradient(circle at 1px 1px,#91958b50 .8px,transparent 1.15px);background-size:20px 20px;opacity:1;transition:opacity 650ms var(--ease)}
.entry-guides{position:absolute;inset:0;pointer-events:none;opacity:1;transition:opacity 650ms var(--ease)}
.entry-guides i{position:absolute;display:block;background:#959b8a29}
.entry-guide-vertical{left:var(--entry-guide-x,9.4%);top:0;width:1px;height:100%}
.entry-guide-horizontal{left:0;top:var(--entry-guide-y,60%);height:1px;width:100%}
.entry-filter-definitions{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.entry-lettering{position:absolute;inset:0;z-index:4;pointer-events:none;opacity:var(--entry-type-opacity,0);transition:opacity 220ms ease-out}
.entry-type{position:absolute;margin:0;font-weight:400;color:transparent!important;-webkit-text-fill-color:transparent;-webkit-text-stroke:.8px #686c61;background-image:repeating-linear-gradient(132deg,#666c6080 0px,#666c6080 .7px,transparent 1px,transparent 4px,#666c603d 4.5px,transparent 5.2px,transparent 7px);-webkit-background-clip:text;background-clip:text;filter:url(#entry-pencil);pointer-events:none}
.entry-progress{position:absolute;z-index:8;left:84%;top:34%;width:54px;height:54px;transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:50%;background:#7ae9ed;color:#24565a;font-size:13px;font-weight:500;letter-spacing:-.02em;font-variant-numeric:tabular-nums;pointer-events:none;transition:opacity 300ms ease-out,visibility 650ms}
.sketch path{stroke:#777b70;stroke-width:1.05;stroke-linecap:round;stroke-linejoin:round;opacity:.72;filter:url(#entry-pencil);transition:stroke-dashoffset 75ms linear}
.sketch .sketch-echo{stroke:#919588;stroke-width:.65;opacity:.23}
body[data-phase=ready] .entry-dots,body[data-phase=ready] .entry-guides,body[data-phase=ready] .entry-lettering,body[data-phase=ready] .entry-progress{opacity:0!important;visibility:hidden;transition:opacity 650ms var(--ease),visibility 650ms}
.entry-skipped .entry-dots,.entry-skipped .entry-guides,.entry-skipped .entry-lettering,.entry-skipped .entry-progress{display:none}
@media(max-width:767px){.entry-dots{background-size:17px 17px}.entry-progress{width:44px;height:44px;font-size:11px}.entry-type{-webkit-text-stroke:.65px #686c61;background-size:auto;filter:none}.entry-guide-horizontal{top:var(--entry-guide-y,60%)}}
@media(prefers-reduced-motion:reduce){.entry-dots,.entry-guides,.entry-lettering,.entry-progress{display:none}.sketch path{filter:none}}

/* Three permanent text links share the existing exhibition header. */
.site-header{display:grid;grid-template-columns:1fr auto;gap:24px;min-height:44px;height:auto}
.wordmark{justify-self:start;flex-shrink:0}
.header-notes{margin-left:0}
.site-nav{display:flex;align-items:center;justify-self:end;gap:20px;white-space:nowrap}
.site-nav-link{position:relative;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 8px;font-size:14px;line-height:1.3;letter-spacing:.015em;color:var(--muted);transition:color 120ms ease-out}
.site-nav-link:after{content:"";position:absolute;left:8px;right:8px;bottom:5px;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform 260ms cubic-bezier(.2,.7,.25,1)}
.site-nav-link:hover,.site-nav-link.active{color:var(--ink)}
.site-nav-link.active:after,.site-nav-link:hover:after,.site-nav-link:focus-visible:after{transform:scaleX(1)}
.site-nav-link:focus-visible{outline-offset:0}
.skills-intro{max-width:42ch;font-size:14px;line-height:1.9;color:var(--muted);margin-bottom:32px}
.skill-list{margin:0}
.skill-list>div{display:grid;grid-template-columns:150px 1fr;gap:24px;border-top:1px solid var(--line);padding:24px 0}
.skill-list dt{font-size:15px;line-height:1.8}
.skill-list dt span{display:inline-block;margin-right:20px;font-size:10px;letter-spacing:.05em;color:var(--muted);font-variant-numeric:tabular-nums}
.skill-list dd{margin:0;font-size:13px;line-height:1.9;color:var(--muted)}
@media(max-width:1199px){.site-nav{gap:12px}.header-notes{gap:14px;font-size:9px}.header-notes>span:first-child{font-size:10px}}
@media(max-width:999px){.site-header{display:flex;justify-content:space-between;gap:20px}.site-nav{gap:18px}}
@media(max-width:767px){.site-header{top:max(16px,env(safe-area-inset-top));left:max(22px,env(safe-area-inset-left));right:max(22px,env(safe-area-inset-right));gap:12px}.site-nav{gap:6px}.site-nav-link{font-size:11px;padding-inline:6px;letter-spacing:0}.site-nav-link:after{left:6px;right:6px}.skills-content h2{font-size:clamp(32px,9.7vw,46px)}.skills-intro{font-size:13px;margin-bottom:28px}.skill-list>div{grid-template-columns:1fr;gap:8px;padding:20px 0}.skill-list dt{font-size:15px}.skill-list dd{padding-left:34px}.skill-list dt span{margin-right:18px}}
@media(max-width:359px){.site-header{left:16px;right:16px;gap:8px}.site-nav{gap:2px}.site-nav-link{padding-inline:5px}.site-nav-link:after{left:5px;right:5px}body[data-mode=grid] .site-header{padding-inline:16px}}
@media(prefers-reduced-motion:reduce){.site-nav-link:after{transition:none}}

/* Shared static-page navigation and a single full-height drawer. */
.linear-toggle{position:relative;display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;flex-shrink:0}
.linear-toggle span{position:absolute;left:11px;top:calc(50% - .7px);display:block;width:22px;height:1.4px;margin:0;background:var(--ink);transform-origin:center;transition:transform 240ms cubic-bezier(.2,.7,.25,1),height 240ms cubic-bezier(.2,.7,.25,1),top 240ms cubic-bezier(.2,.7,.25,1)}
.linear-toggle span:first-child{transform:translateY(-3.5px)}
.linear-toggle span:last-child{transform:translateY(3.5px)}
.linear-toggle[aria-expanded=true] span:first-child,.linear-toggle.is-close span:first-child{transform:rotate(45deg)}
.linear-toggle[aria-expanded=true] span:last-child,.linear-toggle.is-close span:last-child{transform:rotate(-45deg)}
.menu-toggle:not([aria-expanded=true]) span{height:2px;top:calc(50% - 1px)}
.menu-toggle-slot{display:none;width:44px;height:44px;flex:0 0 44px}
.menu-toggle-slot .menu-toggle{display:none}
.site-panel{position:fixed;inset:0;margin:0;padding:0;border:0;width:100vw;height:100vh;height:100dvh;max-height:none;max-width:none;background:transparent;overflow:hidden;box-shadow:none}
.panel-sheet{position:absolute;inset:0 0 0 auto;width:min(760px,100vw);height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:var(--paper);box-shadow:-12px 0 60px #2025191a;transition:width 200ms var(--ease)}
.site-panel:not([open]) .panel-sheet{transition:none}
.site-panel>.menu-toggle{position:fixed;top:var(--toggle-top,22px);right:var(--toggle-right,29px);display:grid;margin:0;z-index:4}
.site-panel::backdrop{background:#272a273d;backdrop-filter:blur(6px)}
.site-panel .dialog-header{position:sticky;top:0;background:#fafaf7f5;padding-top:max(22px,env(safe-area-inset-top));z-index:2}
.site-panel .about-content{padding-bottom:calc(40px + env(safe-area-inset-bottom))}
.site-panel .panel-body{min-height:calc(100% - 89px)}
.site-panel[data-panel=menu] .panel-sheet{width:min(320px,calc(100vw - 80px))}
.site-panel[data-panel=menu] .panel-body{display:flex;flex-direction:column;padding:48px 30px max(30px,env(safe-area-inset-bottom));min-height:calc(100% - 89px)}
.drawer-nav{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.drawer-nav a{position:relative;font-size:30px;line-height:1.2;letter-spacing:-.035em;min-height:56px;padding:10px 0;color:var(--muted);width:100%;display:flex;align-items:center}
.drawer-nav a.active{color:var(--ink)}
.drawer-nav-label{position:relative;display:block;width:max-content}
.drawer-nav-label:after{content:"";position:absolute;left:0;bottom:-5px;width:100%;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform 260ms cubic-bezier(.2,.7,.25,1)}
.drawer-nav a.active .drawer-nav-label:after,.drawer-nav a:hover .drawer-nav-label:after,.drawer-nav a:focus-visible .drawer-nav-label:after{transform:scaleX(1)}
.drawer-nav a:hover{color:var(--ink)}
.drawer-signature{margin-top:auto;padding-top:64px;font-size:9px;line-height:1.5;letter-spacing:.09em;color:var(--muted)}
.placeholder-page{min-height:100svh}
.placeholder-content{min-height:100svh;padding:clamp(160px,22vh,260px) 9.4% 140px;display:flex;align-items:flex-start;flex-direction:column}
.placeholder-content .eyebrow{margin-bottom:28px}
.placeholder-content h1{font-size:clamp(64px,8vw,144px);line-height:1;letter-spacing:-.065em}
.placeholder-note{margin-top:32px;font-size:14px;line-height:1.8;color:var(--muted)}
.placeholder-back{margin-top:48px;min-height:44px;display:flex;align-items:center;gap:35px;font-size:12px;border-bottom:1px solid var(--line)}
.placeholder-back span{font-size:18px}
.placeholder-back:hover{border-bottom-color:var(--ink)}
@media(max-width:767px){
  .site-header .site-nav{display:none}
  .menu-toggle-slot{display:block;margin-right:-11px}.menu-toggle-slot .menu-toggle{display:grid}
  .site-panel[data-panel=about] .panel-sheet{width:100vw}
  .site-panel .dialog-header{padding: max(14px,env(safe-area-inset-top)) 22px 14px;min-height:75px}
  .site-panel[data-panel=menu] .panel-body{min-height:calc(100% - 75px)}
  .site-panel .about-content{padding:38px 30px calc(40px + env(safe-area-inset-bottom))}
  .placeholder-content{padding:156px 23px 115px}
  .placeholder-content h1{font-size:clamp(48px,12vw,90px)}
  .placeholder-note{font-size:13px;margin-top:26px}
  .placeholder-content .eyebrow{font-size:9px}
}
@media(prefers-reduced-motion:reduce){.panel-sheet,.linear-toggle span,.drawer-nav-label:after{transition:none}}

.mode-button[data-view=space] svg{transform:rotate(0deg);transform-origin:50% 50%}

@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body[data-mode=grid] .site-header{background:#ecedeaf2}}

/* Align the space browsing hint with the bottom copyright line. */
body[data-page=home] .site-footer{align-items:flex-end}
.site-footer .scroll-note{position:static;bottom:auto;right:auto;margin:0 0 0 auto}
body[data-page=home] .site-footer .footer-center{bottom:0;font-size:8px}

.wordmark{color:var(--ink);transition:color 120ms ease-out}
body[data-mode=space] .wordmark.is-on-dark{color:#fafaf7}
@media(prefers-reduced-motion:reduce){.wordmark{transition:none}}

.linear-toggle{border-radius:4px;transition:background-color 120ms ease-out}
.linear-toggle:focus-visible{outline:none}
@media(hover:hover){.linear-toggle.is-close:hover,.menu-toggle[aria-expanded=true]:hover{background:#eceee8}}

.arrow-button>span{display:inline-block;transition:transform 180ms ease-out}
@media(hover:hover){#next:hover>span{transform:translateX(4px)}#previous:hover>span{transform:translateX(-4px)}}
@media(prefers-reduced-motion:reduce){.arrow-button>span{transition:none}#next:hover>span,#previous:hover>span{transform:none}}

/* Current work replaces the former upper-right statement. */
#active-work{display:grid;top:21%;right:9.5%;bottom:auto;left:auto;width:max-content;max-width:25vw;text-align:right;justify-items:end;gap:10px;transition-delay:240ms}
#active-work .work-label,#active-work .active-work-tags{font-size:11px}
#active-work .active-work-title{text-align:right;justify-content:flex-end;font-size:22px}
#active-work .active-work-title>span{font-size:22px}
@media(max-width:1399px){#active-work{right:10%}}
@media(min-width:768px) and (max-width:1199px){#active-work{top:15%;right:8%;max-width:30vw}}
@media(max-width:767px){#active-work{top:104px;right:23px;max-width:45vw;gap:8px}#active-work .work-label,#active-work .active-work-tags{font-size:10px}#active-work .active-work-title{font-size:16px}#active-work .active-work-title>span{font-size:18px}}
@media(max-width:767px) and (max-height:740px){#active-work{top:92px}}

@media(max-width:767px) and (max-height:579px){#active-work{gap:6px}#active-work .work-label,#active-work .active-work-tags{font-size:9px}#active-work .active-work-title{font-size:14px}}

@media(min-width:768px){#active-work{gap:12px}#active-work .work-label,#active-work .active-work-tags{font-size:12px}#active-work .active-work-title{font-size:30px}#active-work .active-work-title>span{font-size:28px}}

#scene[data-entrance=falling] #paper-canvas,#scene[data-entrance=settling] #paper-canvas{transition-duration:100ms}

/* Keep the opening arrow above the right-aligned work information. */
#active-work{padding-top:44px}
#active-work .active-work-title>span{position:absolute;top:0;right:0;line-height:1}
@media(max-width:767px){#active-work{padding-top:30px}}
#active-work .active-work-title:active{transform:none}

/* The drawing is one opaque sheet; a growing circular hole reveals the page. */
.entry-overlay{position:fixed;inset:0;z-index:70;isolation:isolate;overflow:hidden;--reveal-x:84vw;--reveal-y:34vh;--reveal-radius:0px}
.entry-overlay .entry-dots{background-color:var(--space);transition:none}
.entry-overlay .entry-guides,.entry-overlay .sketch{transition:none}
.entry-overlay .entry-lettering{opacity:1;transition:none}
.entry-replica{pointer-events:none!important}
.entry-ink{color:transparent!important;-webkit-text-fill-color:transparent!important;-webkit-text-stroke:.65px #686c61;background-image:repeating-linear-gradient(132deg,#666c6080 0px,#666c6080 .7px,transparent 1px,transparent 4px,#666c603d 4.5px,transparent 5.2px,transparent 7px);-webkit-background-clip:text;background-clip:text;filter:url(#entry-pencil)}
.entry-progress{position:fixed;z-index:72;transition:none}
body[data-phase=revealing] .entry-overlay{-webkit-mask-image:radial-gradient(circle at var(--reveal-x) var(--reveal-y),transparent calc(var(--reveal-radius) - 1px),#000 var(--reveal-radius));mask-image:radial-gradient(circle at var(--reveal-x) var(--reveal-y),transparent calc(var(--reveal-radius) - 1px),#000 var(--reveal-radius))}
body[data-phase=revealing] #paper-canvas{opacity:1;transition:none}
body[data-phase=revealing] .chrome{opacity:1;transition:none}
body[data-phase=revealing] .loading-note{opacity:0;visibility:hidden}
body[data-phase=drawing] .loading-note{position:fixed;z-index:74}
body[data-phase=drawing] .chrome,body[data-phase=revealing] .chrome{pointer-events:none}
body[data-phase=ready] .entry-overlay,.entry-skipped .entry-overlay{display:none}
@media(max-width:767px){.entry-ink{-webkit-text-stroke:.55px #686c61}}
@media(prefers-reduced-motion:reduce){.entry-overlay{display:none}}

.hero-identity .identity-note{max-width:none;white-space:nowrap}

.count-separator{color:#848a7e;line-height:1}

@media(min-width:768px){
  .space-controls{position:fixed;bottom:20px;height:14px}
}
@media(min-width:768px) and (max-height:620px){.space-controls{bottom:12px}}

/* Fixed glass return-to-top control follows the grid scroll position. */
.back-top{position:fixed;z-index:24;right:max(22px,env(safe-area-inset-right));bottom:calc(35px + env(safe-area-inset-bottom));width:48px;height:48px;padding:0;display:grid;place-items:center;overflow:hidden;isolation:isolate;contain:paint;clip-path:circle(50%);border:1px solid #fafaf755;border-radius:50%;background:#fafaf766;color:var(--ink);box-shadow:0 2px 8px #333c2008;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:background var(--fast)}
.back-top svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform 160ms var(--ease)}
.back-top:hover{background:#fafaf7b3}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.back-top:hover svg{transform:translateY(-3px)}}
.back-top:focus-visible{outline:2px solid var(--ink);outline-offset:-4px}
body:not([data-mode=grid]) .back-top,body:has(dialog[open]) .back-top{display:none}

body[data-mode=grid].grid-scrolled .site-header{border-bottom-color:#c9ccc538}

/* Keep category scrolling inside its rail; the project count stays visible. */
.filters{position:relative;isolation:isolate;flex-wrap:nowrap;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none}
.filters::-webkit-scrollbar{display:none}
.filter{flex-shrink:0;white-space:nowrap}
.filter:focus-visible{outline-offset:-4px}
.filter-count{flex-shrink:0}
.drawer-signature{text-align:left}

/* Stretch the existing detail button across the complete current-work block. */
#active-work{cursor:pointer}
#active-work .active-work-title::before{content:"";position:absolute;inset:0}
#active-work:hover .active-work-title>span{transform:translate(2px,-2px)}
#active-work .active-work-title:focus-visible{outline:none}
#active-work:has(.active-work-title:focus-visible){outline:1px solid var(--ink);outline-offset:6px}

/* Keep filters available below the fixed navigation while browsing projects. */
.gallery-view{overflow-anchor:none;--gallery-inline-start:9.4vw}
.gallery-toolbar{position:sticky;top:calc(88px + env(safe-area-inset-top));z-index:21;padding-bottom:10px;margin-bottom:20px;isolation:isolate}
.gallery-toolbar::before{content:"";position:absolute;z-index:-1;inset:0 -12px;pointer-events:none}
.gallery-toolbar.is-stuck{z-index:41;width:100vw;height:48px;margin-left:calc(-1 * var(--gallery-inline-start));margin-bottom:42px;padding:1px max(36px,env(safe-area-inset-right)) 2px max(36px,env(safe-area-inset-left));border-top:0;border-bottom:1px solid #c9ccc538}
body[data-mode=grid]:has(.gallery-toolbar.is-stuck) .site-header{border-bottom-color:transparent;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;isolation:isolate}
/* One glass surface spans both rows so their blur has no visible seam. */
body[data-mode=grid]:has(.gallery-toolbar.is-stuck) .site-header::before{content:"";position:absolute;z-index:-1;inset:0 0 -48px;pointer-events:none;background:#ecedeab3;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.filter{position:relative;z-index:1;isolation:isolate;border-radius:999px;min-width:52px;padding-inline:17px}
.filter::before{content:"";position:absolute;inset:8px 0;z-index:-1;border-radius:inherit;transition:background var(--fast)}
.filter.active{background:transparent}
.filter-indicator{position:absolute;z-index:0;left:0;top:8px;height:calc(100% - 16px);border-radius:999px;background:var(--paper);pointer-events:none}
.filter-indicator.is-moving{transition:transform 280ms var(--ease),width 280ms var(--ease)}
.filter:not(.active):focus-visible::before{background:#fafaf7a6}
@media(hover:hover){.filter:not(.active):hover::before{background:#fafaf7a6}}
@media(prefers-reduced-motion:reduce){.filter-indicator.is-moving{transition:none}}
@media(max-width:767px){.filter{padding-inline:14px}}
@media(max-width:1399px){.gallery-view{--gallery-inline-start:7.5vw}}
@media(max-width:767px){.gallery-view{--gallery-inline-start:22px}.gallery-toolbar{top:calc(76px + env(safe-area-inset-top));margin-bottom:14px}.gallery-toolbar.is-stuck{margin-bottom:31px;padding-inline:max(22px,env(safe-area-inset-left)) max(22px,env(safe-area-inset-right))}}
@media(max-width:359px){.gallery-toolbar.is-stuck{padding-inline:max(16px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-right))}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body[data-mode=grid]:has(.gallery-toolbar.is-stuck) .site-header::before{background:#ecedeaf2}}

/* Blurred partial labels reveal which side of the category rail has more items. */
.filter-viewport{position:relative;min-width:0;overflow:hidden;isolation:isolate}
.filter-viewport::before,.filter-viewport::after{content:"";position:absolute;z-index:1;top:0;bottom:0;width:24px;pointer-events:none;background:#ecedea26;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;transition:opacity 120ms}
.filter-viewport::before{left:0;-webkit-mask-image:linear-gradient(to left,transparent,#000 70%);mask-image:linear-gradient(to left,transparent,#000 70%)}
.filter-viewport::after{right:0;-webkit-mask-image:linear-gradient(to right,transparent,#000 70%);mask-image:linear-gradient(to right,transparent,#000 70%)}
.filter-viewport.can-scroll-left::before,.filter-viewport.can-scroll-right::after{opacity:1}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.filter-viewport::before,.filter-viewport::after{background:#ecedeac4}}

/* A cut-paper self portrait sits beside the opening of the personal letter. */
.about-masthead{display:grid;grid-template-columns:minmax(0,1fr) 250px;align-items:center;gap:24px;margin-bottom:54px}
.about-heading{padding-bottom:24px}
.about-heading .eyebrow{margin-bottom:18px}
.about-heading h2{margin-bottom:0;text-wrap:balance}
.about-portrait{position:relative;margin:0;isolation:isolate}
.about-sticker-stage{--sticker-gutter:24px;position:relative;width:calc(100% + var(--sticker-gutter)*2);margin-inline:calc(var(--sticker-gutter)*-1);padding:var(--sticker-gutter);isolation:isolate}
.sticker-peel{position:absolute;left:0;top:0;pointer-events:none;will-change:transform}
.sticker-peel-canvas{display:block;width:100%;height:100%;pointer-events:none}
.sticker-peel-hit{position:absolute;left:50%;top:50%;pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}
.sticker-peel-hit:focus-visible{outline:1.5px dashed #747e6b;outline-offset:5px}
.about-sticker-stage.sticker-ready img{opacity:0;pointer-events:none;transform:rotate(3deg);transition:none}
.sticker-peel.is-dragging .sticker-peel-hit{cursor:grabbing}
.about-portrait img{position:relative;display:block;width:100%;height:auto;transform:rotate(3deg);transform-origin:50% 85%;filter:drop-shadow(0 2px 1px #2a302118) drop-shadow(0 10px 12px #2a302122);transition:transform 300ms var(--ease)}
.about-portrait-orbit{position:absolute;z-index:-1;width:125%;height:90%;left:-15%;top:8%;stroke:#a9afa0;stroke-width:.8;stroke-linecap:round;stroke-linejoin:round;transform:rotate(-12deg)}
.about-portrait figcaption{position:absolute;left:0;bottom:-24px;font-size:10px;line-height:1.5;letter-spacing:.08em;color:var(--muted);transform:rotate(-6deg)}
.about-portrait figcaption svg{position:absolute;width:66px;height:38px;left:calc(100% - 5px);bottom:3px;stroke:currentColor;stroke-width:1;stroke-linecap:round;stroke-linejoin:round}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.about-portrait:hover img{transform:translateY(-4px) rotate(0)}}
@media(max-width:767px){.about-masthead{grid-template-columns:minmax(0,1fr) 46%;gap:12px;margin-bottom:42px}.about-heading{padding-bottom:20px}.about-heading h2{font-size:clamp(32px,12vw,50px);line-height:1.02;max-width:3.1em}.about-heading .eyebrow{margin-bottom:16px}.about-portrait figcaption{left:-4px;bottom:-22px;font-size:8px;letter-spacing:.03em}.about-portrait figcaption svg{width:44px;height:26px}}
@media(prefers-reduced-motion:reduce){.about-portrait img{transition:none}}
@media(max-width:767px){.about-sticker-stage{--sticker-gutter:12px}}

/* SVG draws above the unchanged semantic title and never changes its layout. */
.stroke-title{position:relative}
.stroke-title-active>.stroke-title-source{opacity:0}
.stroke-title-layer{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible;pointer-events:none;user-select:none}
.stroke-title-layer text{user-select:none}
@media(prefers-reduced-motion:reduce){.stroke-title-active>.stroke-title-source{opacity:1}.stroke-title-layer{display:none}}
