.catalog{padding-block:var(--section);border-top:.1rem solid var(--line)}.catalog--compact{padding-block:clamp(1rem,2vw,2rem) var(--section)}.catalog-results__status,.catalog-filters__top{display:flex;align-items:center;gap:.75rem}.catalog-search{display:block;max-width:none;min-width:0}.catalog-search input{width:100%;min-height:3rem;border:.1rem solid var(--teal-deep);border-radius:var(--radius-small);background:var(--teal-soft);color:var(--ink);padding:.7rem .8rem}.catalog-search-stage{display:grid;gap:clamp(1.5rem,3vw,2.5rem);border:.1rem solid var(--catalog-stage-line);background:var(--catalog-stage);color:var(--catalog-stage-text);padding:clamp(1.5rem,3vw,3rem)}:root:not([data-theme=dark]) .catalog-search-stage{--catalog-stage: var(--surface);--catalog-stage-text: var(--ink);--catalog-stage-muted: var(--muted);--catalog-stage-line: var(--line);--catalog-stage-action-surface: var(--teal-soft)}.catalog-search-stage__intro,.catalog-search-stage__support,.catalog-search-stage__actions{display:grid;align-content:start}.catalog-search-stage__intro{gap:.75rem}.catalog-search-stage__help,.catalog-search-stage__support>div>strong{margin:0;color:var(--catalog-stage-muted);font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.catalog-search-stage h1{max-width:21ch;color:var(--catalog-stage-text);font-size:clamp(2rem,4vw,4.25rem)}.catalog-search-stage__intro>p:not(.catalog-search-stage__help){max-width:65ch;margin:0;color:var(--catalog-stage-muted);font-size:1rem}.catalog-search--primary{position:relative;margin-top:.75rem}.catalog-search--primary input{min-height:5.25rem;border:.15rem solid color-mix(in srgb,var(--catalog-stage-muted) 24%,var(--catalog-stage-line));background:color-mix(in srgb,var(--catalog-stage-text) 6%,var(--catalog-stage));color:var(--catalog-stage-text);font-size:clamp(1rem,2vw,1.2rem);font-weight:600;padding-inline:1rem}.catalog-search--primary input:focus-visible{border-color:var(--focus)}.catalog-search--primary input::placeholder{color:var(--catalog-stage-muted)}.catalog-search__suggestions{position:absolute;z-index:3;top:calc(100% + .5rem);right:0;left:0;display:grid;max-height:min(22rem,52dvh);overflow-y:auto;border:.1rem solid var(--catalog-stage-line);background:var(--catalog-stage);box-shadow:var(--shadow)}.catalog-search__suggestions[hidden]{display:none}.catalog-search__suggestion{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.35rem .75rem;width:100%;min-height:3rem;border:0;border-bottom:.1rem solid var(--catalog-stage-line);background:transparent;color:var(--catalog-stage-text);padding:.65rem .85rem;text-align:left;cursor:pointer}.catalog-search__suggestion:last-child{border-bottom:0}.catalog-search__suggestion small{grid-column:1 / -1;color:var(--catalog-stage-muted);font-family:var(--font-mono);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.catalog-search__suggestion strong{min-width:0;overflow:hidden;font-size:.98rem;text-overflow:ellipsis;white-space:nowrap}.catalog-search__suggestion:hover,.catalog-search__suggestion[aria-selected=true]{background:var(--catalog-stage-action-surface);color:var(--catalog-stage-text)}.catalog-search-stage__support{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1.5rem;border-top:.1rem solid var(--catalog-stage-line);padding-top:1.5rem}.catalog-search-stage__examples{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.catalog-search-stage__examples button{border:.1rem solid color-mix(in srgb,var(--catalog-stage-muted) 24%,var(--catalog-stage-line));border-radius:var(--radius-small);background:color-mix(in srgb,var(--catalog-stage-text) 6%,var(--catalog-stage));color:var(--catalog-stage-text);cursor:pointer}.catalog-search-stage__examples button{min-height:2.5rem;padding:.45rem .8rem;font-size:.85rem;font-weight:700}.catalog-search-stage__examples button:hover,.catalog-search-stage__examples button:focus-visible{border-color:var(--teal);background:var(--catalog-stage-action-surface);color:var(--catalog-stage-text)}.catalog-search-stage__actions{grid-auto-flow:column;justify-content:end;gap:.75rem}.catalog-search-stage__filters{display:none}.catalog-search-stage .button--ghost{border-color:color-mix(in srgb,var(--catalog-stage-muted) 24%,var(--catalog-stage-line));background:transparent;color:var(--catalog-stage-text)}.catalog-search-stage .button--ghost:hover{border-color:var(--teal);background:var(--catalog-stage-action-surface);color:var(--catalog-stage-text)}:root:not([data-theme=dark]) .catalog-search--primary input,:root:not([data-theme=dark]) .catalog-search-stage__examples button,:root:not([data-theme=dark]) .catalog-search-stage .button--ghost{border-color:color-mix(in srgb,var(--ink) 42%,var(--line))}.catalog__body{display:grid;grid-template-columns:minmax(17rem,20rem) minmax(0,1fr);gap:clamp(1.5rem,3vw,3rem);margin-top:1rem}.catalog-filters{align-self:start}.catalog-filters__controls{display:grid;gap:.75rem;padding-block:.75rem;border-bottom:.1rem solid var(--line)}.catalog-filters__top{justify-content:space-between}.catalog-filters__top strong{font-family:var(--font-display);font-size:1.5rem;letter-spacing:-.03em}.filter-group{border-bottom:.1rem solid var(--line);padding-block:.75rem}.filter-group summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;color:var(--muted);cursor:pointer;font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.08em;list-style:none;text-transform:uppercase}.filter-group__state{display:inline-flex;align-items:center;gap:.5rem}.filter-group__selection{display:inline-flex;align-items:center;gap:.35rem;color:var(--link);font-family:var(--font-body);font-size:.8rem;font-weight:800;letter-spacing:0;text-transform:none;white-space:nowrap}.filter-group__selection:before{width:.4rem;height:.4rem;border-radius:50%;background:var(--teal);content:""}.filter-group__toggle:before{content:"+";font-size:1.1rem}.filter-group[open] .filter-group__toggle:before{content:"−"}.filter-options{display:grid;gap:.2rem;max-height:16rem;overflow:auto;padding-inline:0;padding-top:.75rem}.filter-option{display:grid;grid-template-columns:1rem minmax(0,1fr) auto;align-items:center;gap:.5rem;min-height:2.75rem;color:var(--muted);font-size:.88rem;cursor:pointer}.filter-option:hover{background:var(--teal-soft);color:var(--ink)}.filter-option:focus-within{outline:.15rem solid var(--focus);outline-offset:.1rem}.filter-option--color{grid-template-columns:1rem 1rem minmax(0,1fr) auto}.filter-option__swatch{width:1rem;height:1rem;border:.1rem solid var(--line);border-radius:0;background:var(--swatch)}.filter-option input{width:1rem;height:1rem;appearance:none;border:.1rem solid var(--teal-deep);border-radius:0;background:var(--surface);cursor:pointer;margin:0}.filter-option input:checked{border-color:var(--teal);background-color:var(--teal);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3.2 8.3 2.7 2.7 6.9-6.5' fill='none' stroke='%23111' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.3'/%3E%3C/svg%3E");background-position:center;background-repeat:no-repeat;background-size:.8rem}.filter-option span:last-child{font-family:var(--font-mono);font-size:.7rem;font-variant-numeric:tabular-nums}.catalog-results__status{justify-content:space-between;min-height:2.75rem;margin-bottom:1rem;border-bottom:.1rem solid var(--line);color:var(--muted)}.catalog-loading{min-height:18rem;display:grid;place-items:center;margin:0;color:var(--muted);font-size:1rem}.catalog-loading[hidden]{display:none}.active-filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.4rem}.filter-pill{border:.1rem solid var(--teal-deep);border-radius:99rem;background:var(--surface);color:var(--ink);padding:.3rem .6rem;font-size:.78rem;cursor:pointer}.work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.work-card{display:grid;align-content:start;min-width:0;border:.1rem solid var(--line);background:var(--surface);color:var(--ink);padding:0;text-align:left;cursor:pointer;content-visibility:auto;contain-intrinsic-size:22rem 19rem;transition:border-color .18s ease,transform .18s ease}.work-card__image{position:relative;aspect-ratio:4 / 5;overflow:hidden;background:var(--line)}.work-card__image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .26s ease}.work-card:hover img{transform:scale(1.035)}.work-card:hover{border-color:var(--teal-deep);transform:translateY(-.15rem)}.work-card__media{position:absolute;right:.5rem;bottom:.5rem;display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--ink);color:var(--paper);font-size:.8rem}.work-card__meta{display:grid;gap:.15rem;min-height:4rem;border-top:.1rem solid var(--line);padding:.65rem .75rem .75rem}.work-card__meta small{display:flex;align-items:center;gap:.35rem;color:var(--muted);font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase}.work-card__dot{width:.45rem;height:.45rem;border-radius:50%;background:var(--category)}.work-card__meta strong{overflow:hidden;font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.catalog-more{min-height:4.5rem;display:grid;place-items:center;margin-top:1.5rem}.catalog-more[hidden]{display:none}.catalog-more__spinner{width:2rem;aspect-ratio:1;border:.2rem solid color-mix(in srgb,var(--line) 85%,transparent);border-top-color:var(--teal);border-radius:50%;animation:catalog-loader .72s linear infinite}@keyframes catalog-loader{to{transform:rotate(1turn)}}.text-button{border:0;background:transparent;color:var(--link);font-weight:800;text-decoration:underline;text-underline-offset:.2rem;cursor:pointer}.work-dialog__body{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(19rem,.7fr);min-height:0;overflow:hidden}#workDialog{width:min(80rem,calc(100dvw - 2rem));height:min(48rem,calc(100dvh - 2rem));overflow:hidden}#workDialog .dialog-shell{height:100%}.work-dialog__nav{display:flex;gap:.25rem}.work-dialog__nav .icon-button{width:2.5rem;height:2.5rem}.work-dialog__nav svg{width:1.15rem;height:1.15rem}.work-dialog__nav .icon-button:disabled{cursor:not-allowed;opacity:.35}.work-dialog__media{min-height:0;display:grid;place-items:center;background:var(--catalog-stage)}.work-dialog__media>img,.work-dialog__media>video{display:block;width:100%;height:100%;min-height:0;object-fit:contain}.work-dialog__info{min-height:0;display:flex;flex-direction:column;gap:1rem;overflow:auto;padding:clamp(1.25rem,2vw,2rem)}.work-dialog__kind{color:var(--muted);font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.work-dialog__facts{display:grid;gap:0;margin:0}.work-dialog__facts div{display:grid;gap:.25rem;border-top:.1rem solid var(--line);padding-block:.75rem}.work-dialog__facts dt{color:var(--muted);font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase}.work-dialog__facts dd{margin:0;font-size:.9rem}.work-dialog__quote{width:100%;margin-top:auto}@media(prefers-reduced-motion:no-preference){#workDialog[data-direction=next] .work-dialog__body{animation:work-dialog-next .24s cubic-bezier(.16,1,.3,1)}#workDialog[data-direction=previous] .work-dialog__body{animation:work-dialog-previous .24s cubic-bezier(.16,1,.3,1)}}@media(prefers-reduced-motion:reduce){.catalog-more__spinner{animation:none}}@keyframes work-dialog-next{0%{opacity:0;transform:translate(1.25rem)}}@keyframes work-dialog-previous{0%{opacity:0;transform:translate(-1.25rem)}}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(pointer:coarse){.catalog-search-stage__examples button,.filter-pill,.text-button,.filter-group summary{min-height:2.75rem}.work-dialog__nav .icon-button{width:2.75rem;height:2.75rem}}@media(max-width:72rem){.work-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:54rem){.catalog-search-stage__support{grid-template-columns:1fr;align-items:stretch}.catalog-search-stage__actions{grid-auto-flow:row;justify-content:stretch;grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-search-stage__actions .button{width:100%}.catalog-search-stage__filters{display:inline-flex;grid-column:1 / -1}.catalog__body{grid-template-columns:1fr}.catalog-filters:not(.catalog-filters--mobile){display:none}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:54.0625rem){[data-filter-open]{display:none}.catalog-filters:not(.catalog-filters--mobile){position:sticky;top:5.75rem;max-height:calc(100dvh - 6.75rem);overflow-y:auto;padding-inline-end:.5rem;overscroll-behavior:contain;scrollbar-gutter:stable}.catalog-filters:not(.catalog-filters--mobile) .catalog-filters__controls{position:sticky;z-index:1;top:0;background:var(--paper)}.catalog-filters:not(.catalog-filters--mobile) .filter-options{gap:0;max-height:none;overflow:visible;padding-top:.5rem}.catalog-filters:not(.catalog-filters--mobile) .filter-group{padding-block:.625rem}.catalog-filters:not(.catalog-filters--mobile) .filter-group summary{line-height:1.15}.catalog-filters:not(.catalog-filters--mobile) .filter-option{min-height:2.25rem;line-height:1.1}.catalog-filters:not(.catalog-filters--mobile) .filter-option span:last-child{line-height:1}}@media(min-width:54.0625rem)and (pointer:coarse){.catalog-filters:not(.catalog-filters--mobile) .filter-option{min-height:2.75rem}}@media(min-width:100rem){.catalog__body{grid-template-columns:minmax(18rem,21rem) minmax(0,1fr)}.work-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(min-width:140rem){.work-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(max-width:40rem){.catalog-search-stage{margin-inline:0;border-inline:0;padding:1.5rem var(--page)}.catalog-search-stage h1{font-size:clamp(2rem,11vw,4.25rem)}.catalog-search--primary input{min-height:4.25rem}.catalog-search-stage__actions{grid-template-columns:1fr}.catalog-filters--mobile .catalog-filters__controls{padding-top:0}.work-dialog__body{grid-template-columns:1fr;overflow:auto}#workDialog{width:100dvw;max-width:none;max-inline-size:none;height:100dvh;max-height:100dvh;inset:0;margin:0;border-radius:0}#workDialog .dialog-head{min-height:4rem;padding-inline:var(--page)}.work-dialog__media{min-height:min(76dvw,22rem)}.work-dialog__info{overflow:visible;padding:1.25rem var(--page) 1.5rem}.work-dialog__quote{position:sticky;bottom:0;margin-top:1rem}#filterDialog{width:100%;max-height:min(48rem,calc(100dvh - .75rem));margin:auto 0 0;border-radius:1rem 1rem 0 0}}
