/* Links to the other public workshops; no purchasing controls or product mutations. */
.vm-related-workshops {
  --vmr-surface: #fffcf7;
  --vmr-line: #e3d9d4;
  --vmr-wine: #a4142d;
  --vmr-ink: #302326;
  clear: both;
  padding: 36px 0;
  border-top: 1px solid var(--vmr-line);
  color: var(--vmr-ink);
  font-family: "TT Commons Pro", system-ui, -apple-system, "Segoe UI", sans-serif;
}
.vm-related-workshops > h2 { font-size: clamp(1.5rem, 2.5vw, 2rem); font-weight: 600; line-height: 1.2; margin: 0 0 24px; scroll-margin-top: calc(8rem + var(--wp-admin--admin-bar--height, 0px)); }
.vm-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; list-style: none; padding: 0; margin: 0; }
.vm-related-grid > li { min-width: 0; margin: 0; }
.vm-related-card { display: flex; flex-direction: column; height: 100%; overflow: hidden; border: 1px solid var(--vmr-line); border-radius: 4px; background: var(--vmr-surface); color: var(--vmr-ink); text-decoration: none; }
.vm-related-card:hover { color: var(--vmr-ink); border-color: var(--vmr-wine); }
.vm-related-card:focus-visible { outline: 3px solid var(--vmr-wine); outline-offset: 4px; }
.vm-related-card img.vm-related-image { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: contain; background: #eee6dc; }
.vm-related-body { display: flex; flex: 1; flex-direction: column; gap: 16px; padding: 24px; }
.vm-related-workshops .vm-related-body h3 { font-size: 1.4rem; font-weight: 600; line-height: 1.2; letter-spacing: -.02em; margin: 0; overflow-wrap: anywhere; }
.vm-related-price { color: var(--vmr-wine); font-size: 1.25rem; font-weight: 600; }
.vm-related-details { margin-top: auto; color: var(--vmr-wine); font-size: 1rem; font-weight: 600; }
.vm-related-card-text .vm-related-body { justify-content: center; min-height: 280px; }
.vm-related-card-text .vm-related-details { margin-top: 0; }
@media (max-width: 991px) { .vm-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } }
@media (max-width: 767px) {
  .vm-related-workshops { padding: 28px 0; }
  .vm-related-grid { grid-template-columns: minmax(0, 1fr); }
  .vm-related-body { padding: 20px; }
}
