@font-face{font-family:DM Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/dm-sans-400.ttf)format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/dm-sans-500.ttf)format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/dm-sans-600.ttf)format("truetype")}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/dm-sans-700.ttf)format("truetype")}:root{color:#1c1d19;font-synthesis:none;--paper:#fff;--ink:#1c1d19;--accent:#2e6b32;--muted:#6c7069;--ease:cubic-bezier(.22, 1, .36, 1);background:#fff;font-family:DM Sans,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}button:disabled{opacity:.5;cursor:default}a:focus-visible,button:focus-visible,.canvas-viewport:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}img{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}::selection{color:var(--ink);background:#e5efdf}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{background:var(--ink);color:#fff;z-index:100;opacity:0;pointer-events:none;padding:12px;position:fixed;top:12px;left:24px}.skip:focus{opacity:1;pointer-events:auto}.site-header{z-index:15;pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:fixed;top:34px;left:42px;right:42px}.site-header a,.site-header nav{pointer-events:auto}.wordmark{letter-spacing:-1.4px;background:#fff;padding:7px 9px 8px 0;font-size:27px;font-weight:600;line-height:.88}.name-dot{color:var(--accent)}.language-switch{background:#fff;align-items:center;gap:10px;min-height:44px;padding:0 8px;font-size:12px;display:flex}.language-switch a{min-width:26px;min-height:44px;color:var(--muted);place-items:center;display:grid}.language-switch a[aria-current=page]{color:var(--accent);font-weight:700}.language-switch>span{color:#9a9e96}.page-container{max-width:1240px;margin:auto;padding:135px 58px 150px}h1,h2,p{margin-top:0}h1{letter-spacing:-1.4px;font-size:46px;font-weight:500;line-height:1.1}h2{font-weight:500}.page-intro{max-width:760px;margin-bottom:48px}.page-intro h1{letter-spacing:-2px;margin-bottom:22px;font-size:clamp(46px,5.6vw,76px);font-weight:500}.page-intro>p{max-width:640px;color:var(--muted);font-size:19px;line-height:1.5}.category-navigation{flex-wrap:wrap;gap:28px;padding-top:12px;font-size:15px;display:flex}.category-navigation a{min-height:44px;color:var(--accent);align-items:center;display:flex}.category-navigation a:hover{text-underline-offset:5px;text-decoration:underline}.preview-notice{color:var(--muted);max-width:640px;margin-bottom:65px;font-size:12px;line-height:1.7}.category-section{margin-bottom:100px}.category-section>header{align-items:baseline;gap:16px;margin-bottom:36px;display:flex}.category-section>header h2{letter-spacing:-.7px;margin:0;font-size:28px}.category-section>header>span{color:var(--muted);font-size:12px}.collection-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:55px 34px;display:grid}.project{min-width:0;display:block}.project-photo{background:#fff}.project img{user-select:none;width:100%;height:auto}.project:hover .project-caption h2,.project:focus-visible .project-caption h2{color:var(--accent)}.project-caption{padding-top:12px;line-height:1.4}.project-caption h2{letter-spacing:-.2px;margin:0 0 4px;font-size:15px;font-weight:500;transition:color .18s}.project-caption p{color:var(--muted);margin:0;font-size:12px}.demo-label{display:none}.collection-grid .project img{object-fit:contain;object-position:center bottom;height:330px}.collection-grid .project-caption h2{font-size:16px}.eyebrow{color:var(--muted);font-size:12px;line-height:1.6}.pending-copy{color:var(--muted);font-size:14px;line-height:1.6}.text-link{min-height:44px;color:var(--accent);align-items:center;font-size:15px;display:inline-flex}.text-link:hover{text-underline-offset:5px;text-decoration:underline}.explore-page{padding:140px 5% 130px;position:relative}.canvas-viewport{position:relative}.project-wall{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:55px 45px;display:grid}.project-wall .project img{object-fit:contain;object-position:center bottom;height:320px}.explore-intro,.explore-status{display:none}.wall-preview{color:var(--muted);text-align:center;margin:35px 0 0;font-size:11px}.touch-instruction{display:none}:is(.explore-enhanced,.explore-touch) body:has(.explore-page){overflow:hidden}:is(.explore-enhanced,.explore-touch) .explore-page{height:100svh;padding:0;overflow:hidden}:is(.explore-enhanced,.explore-touch) .canvas-viewport{width:100%;height:100svh;overflow:clip}:is(.explore-enhanced,.explore-touch) .project-wall{width:var(--world-width);height:var(--world-height);transform-origin:0 0;will-change:transform;display:block;position:absolute;top:0;left:0}:is(.explore-enhanced,.explore-touch) .project-wall .project{left:var(--x);top:var(--y);width:var(--card-width);position:absolute}:is(.explore-enhanced,.explore-touch) .project-wall .project img{object-fit:contain;width:100%;height:auto}:is(.explore-enhanced,.explore-touch) .project-wall .project-caption{padding-top:9px}:is(.explore-enhanced,.explore-touch) .project-wall .project-caption h2{font-size:15px}:is(.explore-enhanced,.explore-touch) .project-wall .project-caption p{font-size:12px}:is(.explore-enhanced,.explore-touch) .explore-intro{text-align:center;pointer-events:none;width:max-content;max-width:88%;transition:opacity .3s var(--ease), translate .3s var(--ease);z-index:5;background:#fffffff2;padding:24px 32px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.explore-intro>p:first-child{margin-bottom:10px;font-size:20px;font-weight:500}.explore-intro h1{letter-spacing:-1.7px;margin:0 0 20px;font-size:clamp(38px,4.2vw,64px);font-weight:500;line-height:1.1}.explore-intro .intro-instruction{margin:0;font-size:14px}.has-explored .explore-intro{opacity:0;translate:0 -6px}:is(.explore-enhanced,.explore-touch) .explore-status{z-index:10;background:#ffffffed;align-items:center;gap:18px;padding:5px 10px;display:flex;position:fixed;bottom:28px;right:28px}.explore-status p{color:var(--muted);max-width:230px;margin:0;font-size:11px;line-height:1.5}.explore-status button{min-height:38px;color:var(--accent);white-space:nowrap;font-size:11px}:is(.explore-enhanced,.explore-touch) .wall-preview{z-index:10;background:#fff;margin:0;padding:5px;font-size:10px;position:fixed;bottom:83px;right:38px}.info-page{grid-template-columns:340px 1fr;align-items:start;gap:95px;display:grid}.info-portrait h1{letter-spacing:-2px;margin:0 0 50px;font-size:64px}.info-portrait figure{margin:0}.info-portrait figure>img{aspect-ratio:845/1280;object-fit:cover;width:100%}.info-portrait figcaption{color:var(--muted);margin-top:14px;font-size:12px}.portrait-placeholder{aspect-ratio:845/1280;color:var(--muted);background:#f3f4f0;flex-direction:column;justify-content:center;align-items:center;gap:45px;display:flex}.portrait-placeholder .portrait-initials{letter-spacing:-9px;color:var(--accent);font-size:120px;font-weight:500;line-height:1}.portrait-placeholder>span:last-child{font-size:12px}.info-body{padding-top:4px;font-size:18px;line-height:1.55}.info-body>h2{letter-spacing:-.7px;margin:0 0 8px;font-size:29px}.profession{color:var(--muted);margin-bottom:35px;font-size:15px}.info-body .bio{font-size:20px;line-height:1.5}.info-body>.pending-copy{margin-top:24px}.cv-section{margin-top:60px}.cv-section>h2{margin-bottom:30px;font-size:25px}.cv-section dl{margin:0}.cv-section dl>div{grid-template-columns:125px 1fr;gap:22px;margin-bottom:28px;display:grid}.cv-section dt{font-size:13px;font-weight:500}.cv-section dd{margin:0;font-size:15px;line-height:1.6}.cv-section dd p{margin:0 0 8px}.contact-page{grid-template-columns:340px 1fr;gap:95px;min-height:90svh;display:grid}.contact-page h1{letter-spacing:-2.5px;margin-bottom:35px;font-size:clamp(54px,6vw,82px)}.contact-page>div>p{color:var(--muted);max-width:300px;font-size:18px;line-height:1.5}.contact-details{padding-top:8px}.contact-details>section{margin-bottom:52px}.contact-details h2{color:var(--muted);margin:0 0 14px;font-size:14px;font-weight:500}.contact-details>section>a{overflow-wrap:anywhere;min-height:44px;font-size:26px;line-height:1.4;display:inline-block}.contact-details a:hover{color:var(--accent)}.social-links{flex-direction:column;gap:18px;font-size:23px;display:flex}.social-links p{margin:0}.social-links a{min-height:44px}.social-links .pending-copy{margin-left:8px;font-size:13px}.contact-notice{margin-top:55px!important;font-size:12px!important}.standalone-project{grid-template-columns:1.25fr 1fr;align-items:start;gap:70px;display:grid}.standalone-image>img{object-fit:contain;width:100%;max-height:75vh}.standalone-project h1{margin-bottom:30px;font-size:40px}.standalone-project>div>p:not(.eyebrow){line-height:1.7}.standalone-project .text-link{margin-top:30px}dialog{color:var(--ink);overscroll-behavior:contain;background:#fff;border:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;margin:0;padding:0}body:has(dialog[open]){overflow:hidden}.dialog-top{z-index:5;background:#fff;justify-content:space-between;align-items:center;min-height:76px;padding:18px 35px;font-size:12px;display:flex;position:sticky;top:0}.close-dialog{align-items:center;gap:18px;min-height:44px;font-size:13px;display:flex}.close-dialog>span{font-size:27px}.close-dialog:hover{color:var(--accent)}.project-detail{grid-template-columns:1.35fr 1fr;align-items:center;gap:70px;min-height:calc(100dvh - 76px);padding:20px 6% 65px;display:grid}.detail-visual{min-width:0}.detail-visual img{object-fit:contain;width:100%;max-height:75dvh}.project-description{max-width:450px}.project-description h2{letter-spacing:-1px;margin:20px 0 25px;font-size:clamp(30px,3vw,44px);font-weight:500;line-height:1.12}.project-description>p:not(.eyebrow){font-size:16px;line-height:1.65}.project-description .medium-label{color:var(--muted);margin-top:30px;font-size:12px!important}.project-description .sample-disclaimer{color:var(--muted);margin:30px 0;font-size:12px!important}.project-pagination{justify-content:space-between;gap:25px;margin-top:40px;display:flex}.project-pagination button{min-height:44px;font-size:13px}.project-pagination button:hover{color:var(--accent)}@media (width>=1600px){.page-container{max-width:1380px}.info-page,.contact-page{grid-template-columns:380px 1fr;gap:120px}.collection-grid .project img{height:380px}}@media (width<=1050px){.site-header{top:28px;left:30px;right:30px}.page-container{padding:125px 42px 140px}.info-page,.contact-page{grid-template-columns:290px 1fr;gap:50px}.collection-grid{gap:45px 26px}.collection-grid .project img{height:260px}.project-detail{gap:40px}:is(.explore-enhanced,.explore-touch) .explore-status p{display:none}.cv-section dl>div{grid-template-columns:100px 1fr;gap:15px}}@media (width<=760px){html{scroll-padding-top:105px}.site-header{top:22px;left:24px;right:24px}.wordmark{font-size:25px}.language-switch{gap:7px;padding-right:0;font-size:11px}.page-container{padding:125px 24px}.page-intro{margin-bottom:28px}h1{font-size:39px}.page-intro>p{font-size:16px}.category-navigation{gap:22px;font-size:13px}.preview-notice{margin-bottom:45px;font-size:11px}.category-section{margin-bottom:65px}.category-section>header{margin-bottom:27px}.category-section>header h2{font-size:25px}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 20px}.collection-grid .project img{height:230px}.collection-grid .project-caption h2{font-size:13px}.project-caption p{font-size:10px;line-height:1.6}.project-caption h2{font-size:13px;line-height:1.4}.explore-page{padding:125px 24px 130px}.project-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 22px}.project-wall .project img{object-fit:contain;height:230px}.wall-preview{margin-top:45px;font-size:10px;line-height:1.6}.mouse-instruction{display:none}.touch-instruction{display:inline}.info-page,.contact-page{display:block}.info-portrait{max-width:440px;margin-bottom:45px}.info-portrait h1{letter-spacing:-2px;margin-bottom:35px;font-size:64px}.portrait-placeholder{aspect-ratio:4/5}.info-body{font-size:16px}.info-body>h2{font-size:28px}.info-body .bio{font-size:18px}.cv-section{margin-top:40px}.cv-section>h2{font-size:24px}.cv-section dl>div{grid-template-columns:105px 1fr;gap:18px}.cv-section dd{font-size:14px}.contact-page>div>p{max-width:340px;font-size:17px}.contact-details{margin-top:55px}.contact-details>section{margin-bottom:40px}.contact-details>section>a{font-size:23px}.social-links{font-size:21px}.standalone-project{display:block}.standalone-image{margin-bottom:40px}.standalone-project h1{font-size:34px}.project-detail{padding:10px 24px 50px;display:block}.detail-visual img{height:auto;max-height:52dvh}.project-description{max-width:none;margin-top:35px}.project-description h2{font-size:32px}.project-description>p:not(.eyebrow){font-size:15px}.dialog-top{min-height:65px;padding:12px 24px}.project-pagination{margin-top:25px}.project-description .sample-disclaimer{font-size:11px!important}}@media (width<=380px){.collection-grid .project img,.project-wall .project img{height:200px}.project-caption h2,.collection-grid .project-caption h2{font-size:12px}.project-caption p{font-size:10px}.page-container,.explore-page{padding-left:20px;padding-right:20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}:is(.explore-enhanced,.explore-touch) .canvas-viewport:focus-visible{outline-offset:-4px}.title-dot{color:var(--accent)}.info-portrait figure{position:relative}.portrait-mark{width:105px;height:60px;color:var(--accent);pointer-events:none;position:absolute;bottom:22px;right:-30px}.portrait-placeholder{background:#f5f6f2}.contact-drawing{width:150px;height:90px;color:var(--accent);margin-top:24px}.contact-drawing path{stroke-dasharray:250;stroke-dashoffset:0;animation:draw-mark 1s var(--ease) both}.channel-icon{width:27px;height:27px;color:var(--accent);grid-area:1/1/span 2;margin-top:3px}.channel-icon svg{width:100%;height:100%}.contact-details>section{grid-template-columns:30px 1fr;gap:3px 20px;display:grid}.contact-details>section>h2,.contact-details>section>a,.contact-details>section>p,.contact-details>section>.social-links{grid-column:2}.contact-details h2{margin-bottom:7px}.contact-details>section>p{margin:0}.cv-section dt{color:var(--accent)}.category-section>header h2{letter-spacing:-.8px;font-size:30px}.category-section>header>span{font-variant-numeric:tabular-nums;color:var(--accent)}.category-navigation a{position:relative}.category-navigation a:after{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform .25s var(--ease);position:absolute;bottom:5px;left:0;right:0;transform:scaleX(0)}.category-navigation a[aria-current]:after,.category-navigation a:hover:after{transform:scaleX(1)}.category-navigation a:hover{text-decoration:none}.awaiting-reveal{opacity:0}@keyframes draw-mark{0%{stroke-dashoffset:250px}to{stroke-dashoffset:0}}@media (width<=760px){.page-intro h1,.info-portrait h1{letter-spacing:-1.5px;font-size:46px}.contact-page h1{letter-spacing:-2px;font-size:56px}.contact-drawing{width:110px;height:65px;margin-top:5px}.portrait-mark{width:85px;bottom:25px;right:0}.category-section>header h2{font-size:26px}}@media (prefers-reduced-motion:reduce){.awaiting-reveal{opacity:1}}@media (scripting:enabled){@view-transition{navigation:auto}}.site-header{view-transition-name:site-header}::view-transition-old(root){animation:.16s both route-out}::view-transition-new(root){animation:.22s both route-in}::view-transition-group(menu-toggle),::view-transition-group(site-header){animation-duration:.22s}@keyframes route-out{to{opacity:0}}@keyframes route-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}.world-accent{display:none}:is(.explore-enhanced,.explore-touch) .world-accent{width:38px;height:38px;color:var(--accent);opacity:.65;pointer-events:none;display:block;position:absolute}.world-accent svg{stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%;animation:7s ease-in-out infinite alternate accent-sway;animation-delay:var(--accent-delay)}.world-paused .world-accent svg{animation-play-state:paused}@keyframes accent-sway{0%{transform:translateY(3px)rotate(-7deg)}to{transform:translateY(-3px)rotate(7deg)}}@media (hover:hover) and (pointer:fine){:is(.explore-enhanced,.explore-touch) .project-photo img{transition:transform .35s var(--ease)}:is(.explore-enhanced,.explore-touch) .project:hover .project-photo img{transform:scale(1.025)}:is(.explore-enhanced,.explore-touch) .project-caption h2:after{content:"↗";opacity:0;transition:opacity .2s ease, transform .2s var(--ease);margin-left:7px;display:inline-block;transform:translate(-4px)}:is(.explore-enhanced,.explore-touch) .project:hover .project-caption h2:after,:is(.explore-enhanced,.explore-touch) .project:focus-visible .project-caption h2:after{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.world-accent svg{animation:none}:is(.explore-enhanced,.explore-touch) .project:hover .project-photo img{transform:none}}.menu-toggle{z-index:20;background:var(--ink);color:#fff;view-transition-name:menu-toggle;border-radius:999px;align-items:center;gap:10px;min-height:52px;padding:0 20px 0 16px;font-size:13px;display:flex;position:fixed;bottom:24px;left:24px;box-shadow:0 4px 18px #1c1d1914}.menu-symbol{stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;width:22px;height:22px}.menu-symbol path{transform-box:fill-box;transform-origin:50%;transition:transform .25s var(--ease)}body:has(#site-menu:popover-open) .menu-symbol path:first-child{transform:translateY(5px)rotate(45deg)}body:has(#site-menu:popover-open) .menu-symbol path:last-child{transform:translateY(-5px)rotate(-45deg)}.menu-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.site-navigation{overscroll-behavior:contain;width:min(320px,100vw - 48px);max-height:calc(100svh - 112px);color:var(--ink);background:#fff;border:0;border-radius:18px;margin:0;padding:16px 24px;position:fixed;inset:auto auto 88px 24px;overflow-y:auto;box-shadow:0 8px 40px #1c1d1914,0 0 0 1px #1c1d1909}.site-navigation:popover-open{animation:.18s ease-out both menu-appear}.site-navigation::backdrop{background:0 0}.site-navigation a{min-height:56px;color:var(--ink);letter-spacing:-.9px;justify-content:space-between;align-items:center;gap:14px;padding:8px 0;font-size:29px;font-weight:450;line-height:1.2;display:flex}.site-navigation a[aria-current=page]{font-weight:550}.site-navigation a:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}.menu-label{position:relative}.menu-label:after{content:"";transform-origin:0;height:1px;transition:transform .22s var(--ease);background:currentColor;position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}.site-navigation a:hover .menu-label:after,.site-navigation a:focus-visible .menu-label:after{transform:scaleX(1)}.menu-dot{background:var(--accent);opacity:0;border-radius:50%;flex-shrink:0;width:5px;height:5px}.site-navigation a[aria-current=page] .menu-dot{opacity:1}@keyframes menu-appear{0%{opacity:0}to{opacity:1}}.collection-pagination{flex-wrap:wrap;align-items:center;gap:8px;margin-top:60px;display:flex}.collection-pagination a,.collection-pagination>span{border-radius:12px;place-items:center;min-width:44px;min-height:44px;padding:8px 12px;display:grid}.collection-pagination a:hover{background:#f0f4ed}.collection-pagination [aria-current]{color:#fff;background:#244a2c}.collection-range{color:var(--muted);margin:0 0 35px;font-size:12px}.image-error{max-width:360px;color:var(--muted);margin:auto;padding:30px}.image-error button{color:var(--accent);min-height:44px;text-decoration:underline}.project-open-link{min-height:44px;color:var(--accent);align-items:center;margin-top:12px;display:inline-flex}.not-found h1{color:var(--accent);margin-bottom:20px;font-size:clamp(90px,20vw,220px)}@media (width<=760px){.menu-toggle{bottom:max(16px, env(safe-area-inset-bottom));min-height:54px;left:16px}.site-navigation{left:16px;bottom:calc(82px + env(safe-area-inset-bottom));width:min(320px,100vw - 32px);max-height:calc(100svh - 110px - env(safe-area-inset-bottom))}.site-navigation a{min-height:54px;font-size:27px}}.touch-world-entry{margin-bottom:30px}.touch-world-entry:has(button[hidden]){display:none}#touch-world-enter{min-height:44px;color:var(--ink);font-size:13px}#touch-world-enter span{margin-left:12px;display:inline-block}#touch-world-enter:hover{color:var(--accent)}#touch-world-exit{bottom:max(20px, env(safe-area-inset-bottom));z-index:15;background:#fff;border-radius:999px;min-height:48px;padding:0 16px;font-size:12px;position:fixed;right:20px;box-shadow:0 0 0 1px #1c1d1910}.touch-world-hint{z-index:10;text-align:center;pointer-events:none;background:#fffffff2;border-radius:999px;width:max-content;max-width:calc(100% - 40px);padding:10px 14px;font-size:11px;transition:opacity .2s;position:fixed;top:112px;left:50%;translate:-50%}.explore-touch:has(.has-explored) .touch-world-hint{opacity:0}.explore-touch .canvas-viewport{overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom;overflow:auto}.explore-touch .project-wall{width:calc(var(--world-width) * .78);height:calc(var(--world-height) * .78)}.explore-touch .project-wall .project{left:calc(var(--x) * .78);top:calc(var(--y) * .78);width:calc(var(--card-width) * .78)}.world-accent{left:var(--accent-x);top:var(--accent-y)}.explore-touch .world-accent{left:calc(var(--accent-x) * .78);top:calc(var(--accent-y) * .78)}.explore-touch .explore-intro,.explore-touch .explore-status,.explore-touch .wall-preview{display:none}.collection-grid .project-featured{grid-column:span 2}.collection-grid .project-featured img{height:clamp(320px,30vw,460px)}.collection-grid .project-featured .project-caption h2{font-size:20px}html:has(.collection-page),html:has(.standalone-project){scrollbar-gutter:stable}dialog::backdrop{background:0 0}.project-flight{z-index:8;object-fit:contain;pointer-events:none;transform-origin:0 0;max-width:none;position:fixed;top:0;left:0}.project-detail{gap:clamp(40px,6vw,100px)}.project-detail[data-format=portrait]{grid-template-columns:1.15fr 1fr}.project-detail[data-format=landscape]{grid-template-columns:1fr;gap:32px;max-width:1400px;margin:auto}.project-detail[data-format=landscape] .detail-visual img{max-height:70dvh}.project-detail[data-format=landscape] .project-description{width:min(100%,760px);max-width:none}.detail-visual{touch-action:pan-y pinch-zoom}.detail-visual[aria-busy=true]{cursor:progress}.project-pagination{align-items:center;gap:20px}.project-pagination .next-project-preview{text-align:left;align-items:center;gap:14px;max-width:260px;display:flex}.next-project-preview img{object-fit:contain;width:64px;height:64px}.next-project-preview>span{min-width:0}.next-project-label{color:var(--muted);margin-bottom:6px;font-size:10px;display:block}#next-project-title{font-size:13px;line-height:1.4;display:block}.standalone-project[data-format=landscape]{grid-template-columns:1fr;max-width:1400px}.standalone-project[data-format=landscape]>div:last-child{max-width:760px}@media (width<=760px){.collection-grid .project-featured img{height:auto;max-height:60svh}.collection-grid .project-featured .project-caption h2{font-size:17px}.project-detail[data-format]{padding-top:14px;display:block}.project-detail[data-format] .detail-visual img{max-height:58dvh}.project-pagination .next-project-preview{gap:10px;max-width:210px}.next-project-preview img{width:48px;height:48px}.standalone-project[data-format]{display:block}}.collection-page .page-intro{margin-bottom:28px}.collection-page .preview-notice{margin-bottom:42px}.category-section>header{margin-bottom:32px}.explore-touch:has(#site-menu:popover-open) .canvas-viewport,.explore-touch:has(dialog[open]) .canvas-viewport{overflow:hidden}.project-pagination .next-project-preview{min-width:0}.next-project-preview img,#previous-project{flex-shrink:0}#next-project-title,.project-description h2,.standalone-project h1{overflow-wrap:anywhere}.standalone-project .project-pagination .text-link{margin-top:0}.detail-visual{min-height:160px;position:relative}#project-loading{color:var(--muted);white-space:nowrap;pointer-events:none;background:#fffffff2;margin:0;padding:8px 12px;font-size:12px;position:absolute;top:50%;left:50%;translate:-50% -50%}
