/* DM Services Grid v1.4 */
.dm-sg-grid {
  display: grid;
  grid-template-columns: repeat(var(--dm-sg-cols, 3), minmax(0,1fr));
  gap: 30px;
}

.dm-sg-grid[data-cols="1"] { --dm-sg-cols: 1; }
.dm-sg-grid[data-cols="2"] { --dm-sg-cols: 2; }
.dm-sg-grid[data-cols="3"] { --dm-sg-cols: 3; }
.dm-sg-grid[data-cols="4"] { --dm-sg-cols: 4; }
.dm-sg-grid[data-cols="5"] { --dm-sg-cols: 5; }
.dm-sg-grid[data-cols="6"] { --dm-sg-cols: 6; }

/* Uniform image height with cover */
.dm-sg-card .dm-sg-img {
  width: 100%;
  height: var(--dm-sg-img-h, 340px);
  overflow: hidden;
  border-radius: 6px;
  margin-bottom: 12px;
}
.dm-sg-card .dm-sg-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.dm-sg-card .elementor-image-box-title {
  text-transform: uppercase;
  letter-spacing: .02em;
  margin: 8px 0 6px 0;
}

.dm-sg-btn-wrap { margin-top: 8px; }

/* Responsive */
@media (max-width: 1024px) { .dm-sg-grid { gap: 24px; } }
@media (max-width: 767px)  { .dm-sg-grid { --dm-sg-cols: 1 !important; grid-template-columns: 1fr; } }
