.svc-grid, .how-grid, .cmp-grid, .pkg-grid {
  display: grid;
  gap: 0;
  margin-top: 2.5rem;
  border: 1px solid var(--line2);
  border-radius: 5px;
  overflow: hidden;
}
.how-grid, .pkg-grid { gap: 1rem; border: none; overflow: visible; }
.how-grid .data-card, .pkg-grid .data-card { min-height: 100%; }
.cmp-featured { background: #f5f3ff; border-left: 3px solid var(--accent); }
.pkg-featured { border-color: var(--accent); box-shadow: 0 8px 32px rgba(91,70,245,0.12); }
.faq-list { margin-top: 2rem; display: flex; flex-direction: column; gap: 0.75rem; }
.faq-item {
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 1.1rem 1.25rem;
  background: var(--bg);
}
.faq-item summary {
  cursor: pointer;
  font-family: "Clash Display", sans-serif;
  font-weight: 600;
  list-style: none;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item p { color: var(--grey); line-height: 1.6; margin-top: 0.75rem; }
@media (min-width: 768px) {
  .svc-grid { grid-template-columns: repeat(2, 1fr); }
  .how-grid { grid-template-columns: repeat(3, 1fr); }
  .cmp-grid { grid-template-columns: repeat(3, 1fr); }
  .pkg-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .svc-grid { grid-template-columns: repeat(3, 1fr); }
  .pkg-grid { grid-template-columns: repeat(4, 1fr); }
}
