/* The CMS and static cards share the same project URL. Keep the complete artwork. */
#work .project-card:has(.project-visual[href*="/work/mubawab-maroc/"]) {
  width: min(100%, 640px);
  justify-self: center;
}
#work .project-card .project-visual[href*="/work/mubawab-maroc/"] {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5 !important;
  background: var(--paper);
}
#work .project-card .project-visual[href*="/work/mubawab-maroc/"] img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: none;
}

#sidi-ali-unlock {
  --team-surface: #f5f5f2;
  --team-ink: #171719;
  --team-muted: #505157;
  margin-top: clamp(64px, 8vw, 112px);
  padding-top: clamp(40px, 5vw, 72px);
  border-top: 1px solid var(--line);
  color: var(--team-ink);
  background: var(--team-surface);
  scroll-margin-top: 96px;
}
:root[data-theme="dark"] #sidi-ali-unlock {
  --team-surface: #141516;
  --team-ink: #f1f2f4;
  --team-muted: #bfc1c6;
}
#sidi-ali-unlock[hidden] { display: none; }
#sidi-ali-unlock .team-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, .7fr);
  align-items: end;
  gap: 24px 48px;
  margin-bottom: 32px;
}
#sidi-ali-unlock h2 {
  max-width: 22ch;
  margin: 0;
  font-size: clamp(1.9rem, 3.6vw, 3.4rem);
  line-height: 1.12;
  letter-spacing: -.035em;
  color: var(--team-ink);
  overflow-wrap: break-word;
}
#sidi-ali-unlock .eyebrow,
#sidi-ali-unlock .team-role { color: var(--team-ink); }
#sidi-ali-unlock .team-role { margin: 16px 0 0; font-weight: 600; font-size: 1rem; }
#sidi-ali-unlock .team-intro { margin: 0; font-size: 1rem; color: var(--team-muted); }
#sidi-ali-unlock .team-gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px 24px;
}
#sidi-ali-unlock figure { margin: 0; min-width: 0; }
#sidi-ali-unlock .team-artwork {
  display: block;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: var(--team-surface);
}
#sidi-ali-unlock .team-artwork img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#sidi-ali-unlock .team-artwork:focus-visible { outline: 3px solid var(--team-ink); outline-offset: 4px; }
#sidi-ali-unlock figcaption { padding-top: 12px; font-size: .875rem; line-height: 1.5; color: var(--team-muted); }
@media (max-width: 900px) {
  #sidi-ali-unlock .team-heading { grid-template-columns: 1fr; gap: 20px; }
  #sidi-ali-unlock .team-intro { max-width: 60ch; }
  #sidi-ali-unlock .team-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 20px; }
}
@media (max-width: 560px) {
  #sidi-ali-unlock .team-gallery { grid-template-columns: 1fr; }
}
