/* ===== Services Page Styles ===== */
.service-detail-card { padding: 40px; height: 100%; position: relative; overflow: hidden; }
.service-detail-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: var(--gradient-main); opacity: 0; transition: var(--transition);
}
.service-detail-card:hover::before { opacity: 1; }
.service-detail-card .svc-icon {
  width: 60px; height: 60px; border-radius: var(--radius-sm);
  background: var(--gradient-card); border: 1px solid var(--border-glass);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.4rem; color: var(--primary); margin-bottom: 24px;
}
.service-detail-card h4 { font-size: 1.15rem; margin-bottom: 12px; }
.service-detail-card p { color: var(--text-secondary); font-size: 0.9rem; margin-bottom: 16px; }
.service-detail-card .svc-features { padding: 0; }
.service-detail-card .svc-features li {
  color: var(--text-secondary); font-size: 0.85rem;
  padding: 6px 0; display: flex; align-items: center; gap: 8px;
}
.service-detail-card .svc-features li i { color: var(--primary); font-size: 0.7rem; }

/* Process Steps */
.process-step { text-align: center; position: relative; padding: 30px 20px; }
.process-step .step-num {
  width: 60px; height: 60px; border-radius: 50%;
  background: var(--gradient-main);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--font-heading); font-size: 1.3rem; font-weight: 700;
  margin: 0 auto 20px; color: #fff;
}
.process-step h5 { font-size: 1.05rem; margin-bottom: 8px; }
.process-step p { color: var(--text-secondary); font-size: 0.88rem; }
.process-connector {
  position: absolute; top: 30px; right: -50%; width: 100%;
  height: 2px; background: var(--border-glass);
  display: none;
}
@media (min-width: 768px) { .process-connector { display: block; } }


/* FAQ */
.faq-section .accordion-item {
  background: var(--bg-glass); border: 1px solid var(--border-glass);
  border-radius: var(--radius-md) !important; margin-bottom: 12px; overflow: hidden;
}
.faq-section .accordion-button {
  background: transparent; color: var(--text-primary);
  font-weight: 600; font-size: 0.95rem; padding: 20px 24px;
  box-shadow: none;
}
.faq-section .accordion-button:not(.collapsed) { color: var(--primary); }
.faq-section .accordion-button::after {
  filter: invert(1); opacity: 0.5;
}
.faq-section .accordion-body {
  color: var(--text-secondary); font-size: 0.9rem;
  padding: 0 24px 20px; line-height: 1.8;
}
