.pf{z-index:1;max-width:var(--measure);padding:calc(var(--nav-h) + 96px) var(--pad-x) clamp(80px, 12vh, 140px);margin-inline:auto;position:relative}.pf__head{max-width:820px}.pf__title{font-size:clamp(2.6rem,6vw,5.6rem)}.pf__note{margin-top:12px}.pf__totals{flex-wrap:wrap;gap:16px clamp(32px,5vw,72px);margin-top:clamp(28px,4vh,44px);display:flex}.pf__totals dt{color:var(--ink);font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1.1}.pf__totals dd{color:var(--ink-3);margin-top:4px;font-size:14px}.pftabs{--bar:77px;top:var(--bar);z-index:20;margin:clamp(48px, 7vh, 80px) calc(var(--pad-x) * -1) 0;padding:10px var(--pad-x);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#08090bd1;position:sticky}.pftabs__row{scrollbar-width:none;gap:6px;display:flex;overflow-x:auto}.pftabs__row::-webkit-scrollbar{display:none}.pftabs__tab{height:40px;color:var(--ink-2);white-space:nowrap;transition:color .3s var(--ease), background-color .3s var(--ease), border-color .3s var(--ease);border:1px solid #0000;border-radius:999px;flex:none;align-items:center;padding:0 16px;font-size:14px;font-weight:500;display:inline-flex}.pftabs__tab:hover{color:var(--ink);border-color:var(--line)}.pftabs__tab.is-active{background:var(--ink);color:var(--ground)}.pfcat{--gap-top:clamp(72px, 11vh, 120px);padding-top:var(--gap-top);scroll-margin-top:calc(90px - var(--gap-top));position:relative}.pfcat+.pfcat:before{content:"";background-image:var(--mark), var(--mark), var(--mark), var(--mark), var(--mark);background-position:0 0,25% 0,50% 0,75% 0,100% 0;background-repeat:no-repeat;height:13px;position:absolute;top:-6.5px;left:-6.5px;right:-6.5px}.pfcat__head{max-width:760px;margin-bottom:clamp(24px,4vh,40px)}.pfcat__title{align-items:baseline;gap:16px;font-size:clamp(2rem,3.8vw,3.6rem);display:flex}.pfcat__count{color:var(--ink-3);letter-spacing:0;font-size:.36em;font-weight:400}.pfcat__intro{margin-top:16px}.pfproj{border-top:1px solid var(--line);grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,88px);padding-block:clamp(36px,6vh,64px);scroll-margin-top:56px;display:grid}.pfproj__text{align-self:start;position:sticky;top:169px}.pfproj__title{font-family:var(--font-display);letter-spacing:-.015em;text-wrap:balance;font-size:clamp(1.35rem,2vw,1.85rem);font-weight:700;font-stretch:108%;line-height:1.18}.pfproj__desc{max-width:56ch;color:var(--ink-2);text-wrap:pretty;margin-top:16px;font-size:1.05rem;line-height:1.7}.pfproj__stats{border-top:1px solid var(--line);color:var(--ink-3);flex-wrap:wrap;gap:4px 0;margin-top:22px;padding-top:18px;font-size:14px;display:flex}.pfproj__stats .num{color:var(--ink)}.pfproj__dot{color:var(--ink-3);margin:0 10px}.pfgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.pfgrid__cell{width:100%;aspect-ratio:var(--ar,1);background:var(--ground-raised);border-radius:10px;display:block;position:relative;overflow:hidden}.pfgrid__cell img,.pfgrid__cell video{object-fit:cover;width:100%;height:100%;transition:transform .8s var(--ease), filter .5s var(--ease);display:block}.pfgrid__open:hover img,.pfgrid__open:hover video,.pfgrid__open:focus-visible img{transform:scale(1.035)}.pfgrid.is-open .pfgrid__cell{animation:pf-in .6s var(--ease) both}@keyframes pf-in{0%{opacity:0;transform:translateY(10px)}}.pfmore{border:1px solid var(--line-strong);color:var(--ink);transition:border-color .3s var(--ease), background-color .3s var(--ease);border-radius:999px;align-items:center;gap:8px;margin-top:14px;padding:10px 18px 10px 20px;font-size:14px;font-weight:600;display:inline-flex}.pfmore:hover{border-color:var(--ink);background:#ffffff0d}.pfmore svg{width:16px;height:16px;transition:transform .5s var(--ease)}.pfmore[aria-expanded=true] svg{transform:rotate(180deg)}.clip{object-fit:cover;background:#000;width:100%;height:100%;display:block;position:relative}.clip--idle img{object-fit:cover;width:100%;height:100%;display:block}.clip__play{width:56px;height:56px;color:var(--ground);transition:transform .4s var(--ease);background:#ffffffeb;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.clip__play svg{width:22px;height:22px;margin-left:3px}.clip--idle:hover .clip__play{transform:translate(-50%,-50%)scale(1.08)}html:has(.lb[open]){overflow:hidden}.lb{width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--ink);background:0 0;border:0;margin:0;padding:0;position:fixed;inset:0}.lb::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#040507f0}.lb[open]{animation:lb-in .35s var(--ease)}@keyframes lb-in{0%{opacity:0}}.lb__stage{justify-content:center;align-items:center;display:flex;position:absolute;inset:72px 88px 88px}.lb__media{object-fit:contain;width:auto;max-width:calc(100vw - 176px);height:auto;max-height:calc(100dvh - 160px);animation:lb-frame .45s var(--ease);border-radius:8px}@keyframes lb-frame{0%{opacity:0;transform:scale(.985)}}.lb__bar{color:var(--ink-2);justify-content:space-between;gap:24px;font-size:14px;display:flex;position:absolute;bottom:28px;left:88px;right:88px}.lb__title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lb__nav,.lb__close{border:1px solid var(--line-strong);width:52px;height:52px;color:var(--ink);transition:background-color .3s var(--ease), border-color .3s var(--ease);border-radius:50%;place-items:center;display:grid;position:absolute}.lb__nav:hover,.lb__close:hover{border-color:var(--ink);background:#ffffff14}.lb__nav svg,.lb__close svg{width:20px;height:20px}.lb__nav{top:50%;transform:translateY(-50%)}.lb__nav--prev{left:20px}.lb__nav--next{right:20px}.lb__close{top:16px;right:20px}@media (max-width:860px){.pf{padding-top:calc(var(--nav-h) + 64px)}.pftabs{--bar:77px}.pfcat+.pfcat:before{background-image:var(--mark), var(--mark), var(--mark);background-position:0 0,50% 0,100% 0}.pfproj{grid-template-columns:1fr;gap:20px}.pfproj__text{position:static}.pfgrid{gap:6px}.lb__stage{inset:64px 12px 120px}.lb__media{max-width:calc(100vw - 24px);max-height:calc(100dvh - 184px)}.lb__nav{width:46px;height:46px;top:auto;bottom:56px;transform:none}.lb__bar{bottom:20px;left:16px;right:16px}}@media (prefers-reduced-motion:reduce){.pfgrid.is-open .pfgrid__cell,.lb[open],.lb__media{animation:none}}
