:root{font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-display:Georgia, "Times New Roman", serif;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-mono:var(--font-sans);font-family:Georgia,Times New Roman,serif}*{box-sizing:border-box}html{min-width:320px}body{min-width:320px;min-height:100vh;margin:0;overflow-x:clip}button,a{font:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.kintsugi-preview{--fade:44px;--kintsugi-ease-out:cubic-bezier(.23, 1, .32, 1);--kintsugi-ease-in-out:cubic-bezier(.77, 0, .175, 1);position:absolute;inset:0;overflow:hidden}.kintsugi-preview__veins{position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 110% at 50% 42%,#000 42%,#0000 88%);mask-image:radial-gradient(120% 110% at 50% 42%,#000 42%,#0000 88%)}.kintsugi-preview:after{height:var(--fade);pointer-events:none;content:"";background:linear-gradient(#0000,#0d0d0d);position:absolute;bottom:0;left:0;right:0}.kintsugi-preview__plate{object-fit:cover;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.04)}@media (hover:hover) and (pointer:fine){.kintsugi-preview__plate--mute{filter:grayscale(.85)}.kintsugi-preview__plate--live{clip-path:circle(0%);transition:clip-path .2s var(--kintsugi-ease-out)}.lab-card:hover .kintsugi-preview__plate--live{clip-path:circle(90%);transition:clip-path .45s var(--kintsugi-ease-in-out)}.lab-card:focus-visible:not(:hover) .kintsugi-preview__plate--live{clip-path:circle(90%);transition-duration:0s}}@media (prefers-reduced-motion:reduce){.kintsugi-preview__plate--live{transition:none}}.shelf-preview{-webkit-mask-image:linear-gradient(to bottom, #000 calc(100% - var(--fade)), transparent 100%);mask-image:linear-gradient(to bottom, #000 calc(100% - var(--fade)), transparent 100%);-webkit-mask-image:linear-gradient(to bottom, #000 calc(100% - var(--fade)), transparent 100%);--fade:44px;position:absolute;inset:0;overflow:hidden}.shelf-preview__item{bottom:calc(var(--lift,0px) - 18px);transform:translateX(calc(-50% + var(--x))) translateY(var(--y,0px)) rotate(calc(var(--rot) + var(--t,0deg)));transform-origin:50% 100%;transition:transform var(--ms,.42s) var(--spring);--spring:linear(0 0%, .0774 5%, .2539 9%, .4633 14%, .6622 18%, .8266 23%, .9475 27%, 1.0258 32%, 1.0679 36%, 1.0829 41%, 1.0799 45%, 1.0668 50%, 1.0496 55%, 1.0325 59%, 1.0179 64%, 1.0068 68%, .9993 73%, .995 77%, .9932 82%, .9931 86%, .9941 91%, .9955 95%, 1 100%);border-radius:2px;position:absolute;left:50%;box-shadow:0 0 0 1px #ffffff14,0 8px 18px -14px #00000073}.lab-card:hover .shelf-preview__item,.lab-card:focus-visible .shelf-preview__item{--y:var(--rise);--t:var(--turn);transition-delay:var(--delay)}@media not all and (hover:hover) and (pointer:fine){.lab-card:hover .shelf-preview__item{--y:0px;--t:0deg;transition-delay:0s}}@media (prefers-reduced-motion:reduce){.shelf-preview__item{transition:none}.lab-card:hover .shelf-preview__item,.lab-card:focus-visible .shelf-preview__item{--y:0px;--t:0deg;transition-delay:0s}}:root[data-surface=lab]{--bg:#0a0a0a;--text:#e0e0e0;--muted:#777;--link:#c8c8c8;--link-hover:#fff;--border:#222;--ink:var(--text);--rule:var(--border);color:var(--text)}:root[data-surface=lab] body{background-color:var(--bg);background-image:none}.lab{min-height:100dvh;color:var(--text);font-family:var(--font-sans);flex-direction:column;display:flex}.lab__inner{flex-direction:column;flex:1;width:100%;max-width:720px;margin:0 auto;padding:0 clamp(20px,5vw,40px);display:flex}.lab-head{text-align:center;padding:clamp(88px,18vh,168px) 0 clamp(64px,12vh,112px)}.lab-head__title{color:var(--text);font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:1.8rem;font-weight:400;line-height:1.2}.lab-head__lead{max-width:42ch;color:var(--muted);text-wrap:balance;margin:14px auto 0;font-size:.95rem;font-weight:400;line-height:1.7}.lab-index__grid{grid-template-columns:1fr;grid-auto-rows:minmax(240px,68vw);gap:clamp(16px,3vw,24px);margin:0;padding:0;list-style:none;display:grid}.lab-index__item{min-width:0;min-height:0}.lab-card{width:100%;height:100%;color:inherit;background:#0d0d0d;border:0;border-radius:14px;text-decoration:none;transition:box-shadow .2s;display:block;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff14,0 8px 18px -14px #00000073}.lab-card:hover,.lab-card:focus-visible{box-shadow:0 0 0 1px #ffffff21,0 8px 18px -14px #00000073}.lab-card:focus-visible{outline:1px solid var(--link-hover);outline-offset:4px}.lab-card__name{z-index:1;text-align:center;color:var(--link);font-family:var(--font-display);letter-spacing:.01em;margin:0;padding:28px 16px 0;font-size:1.2rem;font-weight:400;line-height:1.15;transition:color .16s ease-out;position:relative}.lab-card:hover .lab-card__name,.lab-card:focus-visible .lab-card__name{color:var(--link-hover)}.lab-colophon{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:baseline;gap:12px 32px;margin-top:auto;padding:clamp(56px,11vh,104px) 0 clamp(28px,5vh,48px);font-size:.75rem;line-height:1.2;display:flex}@media (width>=560px){.lab-index__grid{grid-template-columns:repeat(12,1fr);grid-auto-rows:8rem}.lab-index__item{grid-area:span 2/span 4}.lab-index__item:nth-child(3n+1):last-child{grid-column:span 12}.lab-index__item:nth-child(3n+2):last-child{grid-column:span 8}.lab-index__grid:has(>:nth-child(2):last-child) .lab-index__item:first-child{grid-column:span 7}.lab-index__grid:has(>:nth-child(2):last-child) .lab-index__item:nth-child(2){grid-column:span 5}.lab-index__grid:has(>:nth-child(3):last-child) .lab-index__item:first-child{grid-column:span 8}:is(.lab-index__grid:has(>:nth-child(3):last-child) .lab-index__item:nth-child(2),.lab-index__grid:has(>:nth-child(3):last-child) .lab-index__item:nth-child(3)){grid-area:span 1/span 4}.lab-index__grid:has(>:nth-child(4):last-child) .lab-index__item{grid-column:span 6}}
