.service-cards .card,
.home-services .card,
.all-services .card {
  overflow: hidden;
}

.service-cards .card::before,
.home-services .card::before,
.all-services .card::before {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: -1.5rem -1.5rem 1.1rem;
  width: calc(100% + 3rem);
  background-image: var(--service-sheet);
  background-repeat: no-repeat;
  background-size: 300% 200%;
  background-position: 0 0;
}

.home-services .card::before {
  margin: -1.5rem -1.5rem 1rem;
}

.all-services .card::before {
  flex: 0 0 112px;
  width: 112px;
  height: 84px;
  margin: -1.25rem 0 -1.25rem -1.25rem;
  aspect-ratio: auto;
  border-radius: 0;
}

.service-cards > :nth-child(6n + 1)::before,
.home-services > :nth-child(6n + 1)::before,
.all-services .grid > :nth-child(6n + 1)::before { background-position: 0 0; }
.service-cards > :nth-child(6n + 2)::before,
.home-services > :nth-child(6n + 2)::before,
.all-services .grid > :nth-child(6n + 2)::before { background-position: 50% 0; }
.service-cards > :nth-child(6n + 3)::before,
.home-services > :nth-child(6n + 3)::before,
.all-services .grid > :nth-child(6n + 3)::before { background-position: 100% 0; }
.service-cards > :nth-child(6n + 4)::before,
.home-services > :nth-child(6n + 4)::before,
.all-services .grid > :nth-child(6n + 4)::before { background-position: 0 100%; }
.service-cards > :nth-child(6n + 5)::before,
.home-services > :nth-child(6n + 5)::before,
.all-services .grid > :nth-child(6n + 5)::before { background-position: 50% 100%; }
.service-cards > :nth-child(6n + 6)::before,
.home-services > :nth-child(6n + 6)::before,
.all-services .grid > :nth-child(6n + 6)::before { background-position: 100% 100%; }

.brand-panel {
  background: linear-gradient(135deg, #f8fafc, #eff6ff);
  border: 1px solid #dbeafe;
  border-radius: 1rem;
  padding: 1.5rem;
}
.brand-chips { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1rem; }
.brand-chip, .keyword-chip {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: .45rem .8rem;
  font-size: .84rem;
  font-weight: 700;
  background: #fff;
  color: #1e3a5f;
  border: 1px solid #bfdbfe;
}
.keyword-chip { color: #9a3412; border-color: #fed7aa; background: #fff7ed; }
.insurance-card img { width: 100%; max-height: 650px; object-fit: contain; background: white; }

@media (max-width: 640px) {
  .all-services .card { display: block; }
  .all-services .card::before {
    width: calc(100% + 2.5rem);
    height: auto;
    aspect-ratio: 16 / 9;
    margin: -1.25rem -1.25rem 1rem;
  }
}
