@charset "UTF-8";
/* ===== SERVIÇOS: cartões com inclinação 3D e luz que segue o mouse ===== */
.service-card {
  --mx: 50%;
  --my: 50%;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 30px 22px 28px;
  text-align: center;
  border-radius: var(--radius);
  border: 1.5px solid var(--line);
  background: var(--card);
  box-shadow: 0 0 28px rgba(30, 107, 255, 0.22) inset, 0 0 24px rgba(30, 107, 255, 0.2);
  transform-style: preserve-3d;
  overflow: hidden;
  will-change: transform;
}
.service-card::before { /* spotlight */
  content: "";
  position: absolute; inset: 0;
  background: radial-gradient(260px circle at var(--mx) var(--my), rgba(56, 182, 255, 0.28), transparent 65%);
  opacity: 0;
  transition: opacity 0.3s;
  pointer-events: none;
}
.service-card:hover::before { opacity: 1; }
.service-card:hover { border-color: var(--cyan); }

.service-icon {
  width: 62px; height: 62px;
  display: grid; place-items: center;
  color: var(--cyan);
  filter: drop-shadow(0 0 10px var(--blue));
  transform: translateZ(40px);
}
.service-icon .icon { width: 100%; height: 100%; stroke-width: 1.5; }

.service-card h3 { font-size: 1.28rem; line-height: 1.15; transform: translateZ(26px); }
.service-card p { color: #cbd9f5; font-size: 0.98rem; transform: translateZ(14px); }

.service-more {
  margin-top: auto;
  padding-top: 8px;
  display: inline-flex; align-items: center; gap: 6px;
  color: var(--cyan);
  font-weight: 600;
  font-size: 0.9rem;
  background: none; border: 0;
}
.service-extra { /* detalhe que abre ao clicar */
  height: 0;
  overflow: hidden;
  opacity: 0;
  font-size: 0.93rem;
  color: var(--muted);
}
.service-extra span { display: block; padding-top: 4px; }
