/* Public project gallery: all six cases remain visible without JavaScript. */
.work-gallery-section .shead { margin-bottom: 36px; }
.work-coverage {
  display: grid; grid-template-columns: minmax(210px, .7fr) minmax(0, 1.3fr);
  align-items: center; gap: 28px 48px; padding: clamp(22px, 3.5vw, 40px);
  margin-bottom: clamp(32px, 5vw, 64px); border: 1px solid #494743;
  border-radius: 6px; background: #19191b; color: #f3f1ec; text-decoration: none;
  transition: border-color .2s, background .2s;
}
.work-coverage:hover { border-color: #e66b59; background: #1e1d1e; }
.work-coverage__eyebrow { margin: 0 0 8px; font-size: .72rem; letter-spacing: .12em; color: #b9b6ae; }
.work-coverage__count { display: flex; gap: 15px; align-items: baseline; margin: 0; font-size: 1.04rem; font-weight: 500; }
.work-coverage__count strong { font-size: clamp(3.25rem, 6vw, 5.2rem); font-weight: 550; line-height: 1; letter-spacing: -.055em; }
.work-coverage__scope { margin: 12px 0 0; font-size: .78rem; line-height: 1.65; color: #b9b6ae; }
.work-coverage__link { display: inline-block; margin-top: 17px; font-size: .82rem; color: #f3f1ec; }
.work-coverage__matrix { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 7px; }
.work-coverage__cell { display: block; aspect-ratio: .83; min-height: 20px; border: 1px solid transparent; border-radius: 2px; position: relative; }
.work-coverage__cell--active, .work-coverage__key--active { background: #e66b59; }
.work-coverage__cell--ready, .work-coverage__key--ready { background: transparent; border: 2px solid #e66b59; }
.work-coverage__cell--complete, .work-coverage__key--complete { background: #d0cdc5; }
.work-coverage__cell--retired, .work-coverage__key--retired { background: repeating-linear-gradient(135deg, transparent 0 4px, #74716a 4px 5px); border: 1px solid #74716a; }
.work-coverage__legend { display: flex; flex-wrap: wrap; gap: 11px 20px; padding: 0; margin: 16px 0 0; list-style: none; font-size: .76rem; line-height: 1.6; color: #d0cdc5; }
.work-coverage__legend li { display: flex; align-items: center; gap: 7px; }
.work-coverage__key { display: inline-block; width: 11px; height: 11px; flex: 0 0 11px; border-radius: 1px; }
.work-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(28px, 4vw, 52px) clamp(20px, 3vw, 36px); }
.work-card { display: block; min-width: 0; border: 1px solid #393837; border-radius: 6px; background: #171719; overflow: hidden; color: #f3f1ec; text-decoration: none; scroll-margin-top: 100px; transition: transform .22s ease, border-color .22s ease; }
.work-card:hover { transform: translateY(-5px); border-color: #8f8c85; }
.work-card:focus-visible, .work-coverage:focus-visible { outline: 3px solid #e66b59; outline-offset: 6px; }
.work-card__media { margin: 0; background: #eceae4; color: #33312e; }
.work-card__media > img, .work-card__media > svg { display: block; width: 100%; aspect-ratio: 8 / 5; height: auto; object-fit: contain; }
.work-card__media--team > img { object-fit: cover; object-position: center 46%; }
.work-card__media figcaption { padding: 9px 16px; border-top: 1px solid #d3d0c8; font-size: .7rem; line-height: 1.45; color: #57544e; }
.work-card__body { position: relative; padding: clamp(20px, 2.5vw, 30px); padding-right: clamp(50px, 6vw, 70px); }
.work-card__category { margin: 0 0 8px; color: #b9b6ae; font-size: .7rem; line-height: 1.6; letter-spacing: .05em; }
.work-card__title { margin: 0; font-size: clamp(1.4rem, 2.2vw, 1.95rem); font-weight: 600; line-height: 1.3; letter-spacing: -.035em; }
.work-card__outcome { margin: 11px 0 0; color: #c6c3bb; font-size: .9rem; line-height: 1.65; }
.work-card__outcome strong { color: #f3f1ec; font-weight: 600; }
.work-card__arrow { position: absolute; top: 31px; right: 24px; width: 23px; height: 23px; color: #e66b59; transition: transform .22s ease; }
.work-card:hover .work-card__arrow { transform: translate(2px, -2px); }
.work-card__svg text { font-family: inherit; fill: #222224; }
.work-card__svg .gallery-svg-label { font-size: 27px; font-weight: 550; }
.work-card__svg .gallery-svg-small { font-size: 19px; letter-spacing: 1px; }
.work-card__svg .gallery-svg-ink { stroke: #333135; }
.work-card__svg .gallery-svg-red { stroke: #a83b2d; }
@media (max-width: 760px) {
  .work-coverage { grid-template-columns: 1fr; gap: 24px; }
  .work-coverage__count strong { font-size: 3.7rem; }
  .work-coverage__matrix { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 5px; }
  .work-coverage__cell { aspect-ratio: .72; }
  .work-gallery { grid-template-columns: 1fr; gap: 28px; }
  .work-card__body { padding: 22px 55px 25px 22px; }
  .work-card__arrow { top: 29px; right: 21px; }
}
@media (max-width: 380px) {
  .work-coverage { padding: 20px; }
  .work-coverage__matrix { gap: 4px; }
  .work-coverage__legend { gap: 8px 13px; font-size: .71rem; }
}
@media (prefers-reduced-motion: reduce) {
  .work-card, .work-coverage, .work-card__arrow { transition: none; }
  .work-card:hover, .work-card:hover .work-card__arrow { transform: none; }
}

.work-domains {display:flex;flex-wrap:wrap;gap:10px 24px;margin:-24px 0 36px;color:var(--ink-2);font-size:.82rem;line-height:1.7}
.work-domains span::before {content:"";display:inline-block;width:4px;height:4px;margin:0 8px 3px 0;background:var(--signal)}
@media(max-width:760px){.work-domains{margin:-12px 0 28px;gap:8px 16px;font-size:.75rem}}
