:root{--font:"Inter", system-ui, sans-serif;--text:#0d0d0d;--text-2:#5c5854;--line:#e6e3e0;--paper:#f2f1f0;--pad:clamp(16px, 4vw, 64px);--wrap:1200px}*{box-sizing:border-box}html{background:#fff}body{color:var(--text);font:400 16px/1.5 var(--font);-webkit-font-smoothing:antialiased;background:#fff;margin:0}a{color:inherit;text-decoration:none}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--text);outline-offset:3px}.pb-wrap{width:min(100% - 2 * var(--pad), var(--wrap));margin-inline:auto}.pb-header{z-index:50;backdrop-filter:blur(12px);background:#ffffffeb;position:sticky;top:0}.pb-header-in{justify-content:space-between;align-items:center;height:72px;display:flex}.pb-logo svg{width:auto;height:24px;color:var(--text);display:block}.pb-nav{letter-spacing:-.01em;align-items:center;gap:clamp(16px,2.4vw,36px);font-size:15px;font-weight:500;display:flex}.pb-nav a{color:var(--text-2);transition:color .2s}.pb-nav a:hover{color:var(--text)}.pb-lang{letter-spacing:.04em;font-size:13px}.pb-hero{padding:clamp(80px,15vh,184px) 0 clamp(64px,11vh,144px)}.pb-hero h1{letter-spacing:-.035em;font-variation-settings:"opsz" 32;text-wrap:balance;max-width:18ch;margin:0;font-size:clamp(40px,5.4vw,84px);font-weight:400;line-height:1.04}.pb-hero-link{letter-spacing:-.01em;border-bottom:1px solid;align-items:center;gap:8px;margin-top:clamp(32px,5vh,56px);padding-bottom:2px;font-size:17px;font-weight:500;display:inline-flex}.pb-hero-link svg{width:18px;height:18px;transition:transform .3s}.pb-hero-link:hover svg{transform:translateY(3px)}.pb-work{padding-bottom:clamp(96px,14vh,184px)}.pb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(48px,5.4vw,88px) clamp(16px,1.6vw,24px);margin:0;padding:0;list-style:none;display:grid}.pb-card.is-wide{grid-column:1/-1}.pb-card a{display:block}.pb-media{background:var(--paper);aspect-ratio:1440/935;display:block;position:relative;overflow:hidden}.pb-media img,.pb-media video{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.pb-media img{transition:transform 1s cubic-bezier(.22,1,.36,1)}.pb-media video{opacity:0;transition:opacity .4s}.is-playing .pb-media video,.is-playing .pp-next-media video{opacity:1}.pb-card a:hover .pb-media img{transform:scale(1.02)}.pb-badge{z-index:1;background:#ffffffeb;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:500;position:absolute;top:12px;left:12px}.pb-meta{gap:2px;margin-top:16px;display:grid}.pb-meta b{letter-spacing:-.015em;font-variation-settings:"opsz" 32;font-size:clamp(18px,1.4vw,21px);font-weight:500;line-height:1.3}.pb-text{max-width:52ch;color:var(--text-2);font-size:15px;line-height:1.5}.pb-tags{color:var(--text-2);opacity:.8;margin-top:6px;font-size:13px}.pp-head{padding:clamp(64px,12vh,144px) 0 clamp(40px,6vh,72px);position:relative}.pp-title{letter-spacing:-.03em;font-variation-settings:"opsz" 32;text-wrap:balance;max-width:16ch;margin:0;font-size:clamp(36px,4.6vw,72px);font-weight:400;line-height:1.05}.pp-intro{max-width:64ch;margin-top:clamp(32px,5vh,48px)}.pp-intro p{text-wrap:pretty;margin:0;font-size:clamp(17px,1.3vw,20px);line-height:1.55}.pp-intro .pp-tags{color:var(--text-2);margin-top:12px;font-size:13px;line-height:1.5}.pp-about-btn{z-index:70;backdrop-filter:blur(12px);height:40px;font:500 14px/1 var(--font);color:#fff;cursor:pointer;background:#0d0d0de0;border:0;border-radius:999px;padding:0 18px;transition:background-color .2s;position:fixed;bottom:16px;right:16px;box-shadow:0 8px 24px -8px #00000059}.pp-about-btn:hover{background:#0d0d0d}.pp-frames{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.4vw,24px);display:grid}.pp-frame{background:var(--paper);align-self:start;margin:0;overflow:hidden}.pp-frame.is-wide{grid-column:1/-1}.pp-frame img,.pp-frame video{width:100%;height:auto;display:block}.pp-cta{padding:clamp(48px,8vh,96px) 0}.pp-cta-link{border-bottom:1px solid;padding-bottom:2px;font-size:17px;font-weight:500;transition:opacity .2s;display:inline-flex}.pp-cta-link:hover{opacity:.6}.pp-next{border-top:1px solid var(--line);padding:24px 0 clamp(80px,12vh,144px);display:block}.pp-next-label{color:var(--text-2);margin-bottom:clamp(48px,8vh,96px);font-size:15px;display:block}.pp-next-text{max-width:56ch;color:var(--text-2);margin:20px 0 0;font-size:17px}.pp-next-media{aspect-ratio:1440/935;background:var(--paper);margin-top:clamp(32px,5vh,56px);display:block;position:relative;overflow:hidden}.pp-next-media img,.pp-next-media video{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.pp-next-media video{opacity:0;transition:opacity .4s}.pp-about{width:min(480px,100vw);max-width:none;height:100dvh;max-height:none;color:var(--text);background:#fff;border:0;margin:0 0 0 auto;padding:0}.pp-about::backdrop{background:#0d0d0d52}.pp-about[open]{animation:.4s cubic-bezier(.22,1,.36,1) pp-in}@keyframes pp-in{0%{opacity:0;transform:translate(40px)}}.pp-about-in{flex-direction:column;gap:24px;padding:28px clamp(20px,3vw,40px) 40px;display:flex}.pp-about-head{justify-content:space-between;align-items:center;display:flex}.pp-about-head h2{margin:0;font-size:15px;font-weight:500}.pp-about-head button{width:40px;height:40px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;margin-right:-10px;display:grid}.pp-about-head button:hover{background:var(--paper)}.pp-about-head svg{width:20px;height:20px}.pp-about p{margin:0;font-size:17px;line-height:1.55}.pp-about dl{border-top:1px solid var(--line);margin:0}.pp-about dl div{border-bottom:1px solid var(--line);grid-template-columns:120px 1fr;gap:16px;padding:14px 0;font-size:15px;display:grid}.pp-about dt{color:var(--text-2)}.pp-about dd{margin:0}.pb-footer{border-top:1px solid var(--line);padding:clamp(64px,12vh,144px) 0 32px}.pb-footer-lead{color:var(--text-2);margin:0;font-size:17px}.pb-footer-mail{letter-spacing:-.035em;font-variation-settings:"opsz" 32;margin-top:12px;font-size:clamp(32px,4.6vw,72px);line-height:1.05;transition:opacity .2s;display:inline-block}.pb-footer-mail:hover{opacity:.6}.pb-footer-bottom{color:var(--text-2);flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:clamp(64px,10vh,128px);font-size:13px;display:flex}.pb-footer-bottom a:hover{color:var(--text)}@media (width<=900px){.pb-grid,.pp-frames{grid-template-columns:1fr}}@media (width<=767px){.pb-header-in{height:60px}.pb-logo svg{height:20px}.pb-footer-bottom{padding-bottom:56px}.pp-about dl div{grid-template-columns:96px 1fr}}@media (prefers-reduced-motion:reduce){.pb-media img,.pb-hero-link svg{transition:none}.pp-about[open]{animation:none}}.pp-frame.pp-scroll{background:0 0;overflow:visible}.pp-scroll-win{aspect-ratio:16/10;background:var(--paper);position:relative;overflow:hidden;container-type:size}.pp-scroll-win img{width:100%;height:auto;transition:transform 9s cubic-bezier(.45,0,.55,1);position:absolute;top:0;left:0}.pp-scroll-win:hover img,.pp-scroll-win:focus-visible img{transition-duration:9s;transform:translateY(calc(100cqh - 100%))}.pp-scroll-win:not(:hover) img{transition-duration:1.2s}.pp-scroll figcaption{color:var(--text-2);margin-top:10px;font-size:13px}@media (hover:none){.pp-scroll-win{-webkit-overflow-scrolling:touch;overflow-y:auto}.pp-scroll-win img{position:static}}@media (prefers-reduced-motion:reduce){.pp-scroll-win{overflow-y:auto}.pp-scroll-win img{transition:none;position:static}.pp-scroll-win:hover img{transform:none}}
