.workShell{--project-ink:#0e041c;--project-paper:#fcfafa;--project-muted:#0e041c8c;--project-font-ui:"Gill Sans", "Gill Sans MT", "Trebuchet MS", Calibri, "Helvetica Neue", sans-serif;--project-font-display:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", "URW Palladio L", Georgia, serif;min-height:100dvh;padding-top:var(--site-header-height);background:var(--project-paper);color:var(--project-ink)}.projectsBrowser{padding-inline:clamp(1.25rem,6.5vw,6.5rem);flex-direction:column;padding-bottom:clamp(2rem,6vh,4rem);display:flex}.projectsBrowser__title{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.projectFilters{top:var(--site-header-height,5.5rem);z-index:8;background:var(--project-paper);font-family:var(--project-font-ui);flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.15rem;padding-block:.65rem 1.1rem;display:flex;position:sticky}.projectFilters__item{align-items:baseline;display:inline-flex}.projectFilters__separator{opacity:.45;pointer-events:none;margin-inline:.55rem}.projectFilters__button{font:inherit;letter-spacing:.02em;color:var(--project-ink);opacity:.42;cursor:pointer;background:0 0;border:0;margin:0;padding:.2rem .05rem;font-size:clamp(.92rem,.85rem + .35vw,1.08rem);font-weight:400}.projectFilters__button[aria-pressed=true]{opacity:1;font-weight:600}.projectFilters__button:focus-visible{outline:2px solid var(--project-ink);outline-offset:4px}.projectGrid{max-height:min(calc(100dvh - var(--site-header-height,5.5rem) - 6.5rem), 46rem);overscroll-behavior:contain;outline:none;overflow-y:auto}.projectGrid:focus-visible{outline:2px solid var(--project-ink);outline-offset:4px}.projectGrid__list{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.35rem,2.4vw,2.25rem) clamp(1.1rem,2vw,1.85rem);margin:0;padding:0 0 1.25rem;list-style:none;animation:.18s ease-out projectGridEnter;display:grid}.projectGrid__empty{text-align:center;font-family:var(--project-font-ui);color:var(--project-muted);margin:2.5rem 0;font-size:.98rem}@keyframes projectGridEnter{0%{opacity:.35;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.projectCard{color:inherit;cursor:pointer;flex-direction:column;gap:.7rem;text-decoration:none;display:flex}.projectCard:focus-visible{outline:2px solid var(--project-ink);outline-offset:4px}.projectCard__media{aspect-ratio:16/10;background:#efece8;width:100%;position:relative;overflow:hidden}.projectCard__image{object-fit:cover;transition:transform .28s,opacity .28s}.projectCard:hover .projectCard__image,.projectCard:focus-visible .projectCard__image{opacity:.92;transform:scale(1.03)}.projectCard__meta{font-family:var(--project-font-ui);justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.projectCard__title{letter-spacing:.01em;margin:0;font-size:clamp(.92rem,.85rem + .3vw,1.05rem);font-weight:400;line-height:1.25}.projectCard__aside{letter-spacing:.02em;color:var(--project-muted);flex-shrink:0;align-items:baseline;gap:.55rem;font-size:clamp(.72rem,.68rem + .2vw,.82rem);display:flex}.projectCard__category{white-space:nowrap}.projectStatus{white-space:nowrap;align-items:center;gap:.35rem;display:inline-flex}.projectStatus__dot{width:.42rem;height:.42rem;box-shadow:0 0 6px 1px color-mix(in srgb, currentColor 55%, transparent);background:currentColor;border-radius:50%}.projectStatus[data-status=live]{color:#2f7a45}.projectStatus[data-status=building]{color:#b08912}.projectStatus[data-status=paused]{color:#b23a3a}.projectStatus__label{color:var(--project-muted)}.projectDetail{max-width:56rem;font-family:var(--project-font-ui);margin:0 auto;padding:.25rem clamp(1.25rem,6.5vw,6.5rem) 4.5rem}.projectDetail__back{color:var(--project-ink);opacity:.72;margin-bottom:1.75rem;font-size:.95rem;text-decoration:none;display:inline-block}.projectDetail__back:hover{opacity:1}.projectDetail__back:focus-visible,.projectDetail__link:focus-visible{outline:2px solid var(--project-ink);outline-offset:4px}.projectDetail__title{font-family:var(--project-font-display);letter-spacing:.01em;margin:0 0 .75rem;font-size:clamp(1.85rem,1.4rem + 1.6vw,2.75rem);font-weight:400}.projectDetail__summary{color:var(--project-muted);margin:0 0 1rem;font-size:1.05rem;line-height:1.55}.projectDetail__statusRow{align-items:center;gap:.75rem;margin-bottom:1.5rem;font-size:.92rem;display:flex}.projectDetail__category{color:var(--project-muted)}.projectDetail__meta{grid-template-columns:8rem 1fr;gap:.4rem 1rem;margin:0 0 1.75rem;font-size:.95rem;display:grid}.projectDetail__meta dt{opacity:.5;margin:0}.projectDetail__meta dd{margin:0}.projectDetail__featured{aspect-ratio:16/10;background:#efece8;width:100%;margin-bottom:2.25rem;position:relative;overflow:hidden}.projectDetail__featuredImage,.projectDetail__galleryImage{object-fit:cover}.projectDetail__section{margin-bottom:1.75rem}.projectDetail__sectionTitle{letter-spacing:.06em;text-transform:uppercase;margin:0 0 .5rem;font-size:.82rem;font-weight:600}.projectDetail__body{color:var(--project-muted);margin:0;line-height:1.6}.projectDetail__gallery{gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.projectDetail__galleryFrame{aspect-ratio:16/10;background:#efece8;position:relative;overflow:hidden}.projectDetail__caption{color:var(--project-muted);margin:.45rem 0 0;font-size:.88rem}.projectDetail__links{margin:0;padding:0;list-style:none}.projectDetail__link{color:var(--project-ink)}@media (max-width:1024px) and (min-width:701px){.projectsBrowser{padding-inline:clamp(1.35rem,5.5vw,4rem)}.projectGrid__list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.projectsBrowser{padding-inline:clamp(1.1rem,5.5vw,1.75rem)}.projectFilters{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}.projectGrid{max-height:none;overflow:visible}.projectGrid__list{grid-template-columns:1fr}.projectDetail{padding-inline:clamp(1.1rem,5.5vw,1.75rem)}.projectDetail__meta{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.projectGrid__list{animation:none}.projectCard__image{transition:none}.projectCard:hover .projectCard__image,.projectCard:focus-visible .projectCard__image{transform:none}}
