/* ── Homepage · Refined Light Theme ─────────────────────────────────── */

/* Page background + max-width */
body,
#page_container,
main {
  background: linear-gradient(145deg, #f8fafc 0%, #eef2ff 55%, #faf5ff 100%) !important;
  min-height: 100vh;
}

#page_container {
  max-width: 1280px !important;
  margin-inline: auto !important;
  padding-inline: 2rem !important;
  width: 100% !important;
}

/* override homepage's own container if it wraps content differently */
#page_container > div,
#page_container > main,
.page-content {
  max-width: 100% !important;
}

/* ── Widget bar ─────────────────────────────────────────────────────── */
#information-widgets {
  padding: 0.7rem 1.5rem;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.88) !important;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(226, 232, 240, 0.9) !important;
  box-shadow:
    0 1px 2px rgba(0, 0, 0, 0.04),
    0 6px 20px -4px rgba(99, 102, 241, 0.08);
  margin-bottom: 1.5rem;
}

/* ── Group headers ─────────────────────────────────────────────────── */
#page_container .services-group .services-group-name,
.services-group-name {
  font-weight: 700;
  font-size: 0.8rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #475569;
  padding-bottom: 0.7rem;
  margin-bottom: 1rem;
  border-bottom: none;
  position: relative;
}

#page_container .services-group .services-group-name::after,
.services-group-name::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1.5px;
  background: linear-gradient(90deg, #c7d2fe 0%, #e9d5ff 60%, transparent 100%);
  border-radius: 99px;
}

/* ── Cards ─────────────────────────────────────────────────────────── */
#page_container .service-card,
#services .service-card,
a > [class*="bg-theme-100/20"],
[class*="bg-theme-100/20"],
a > [class*="bg-white/5"],
[class*="bg-white/5"] {
  background: rgba(255, 255, 255, 0.92) !important;
  border: 1px solid rgba(226, 232, 240, 0.8) !important;
  border-radius: 16px !important;
  box-shadow:
    0 1px 2px rgba(0, 0, 0, 0.04),
    0 4px 16px -4px rgba(99, 102, 241, 0.07) !important;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  /* taller cards */
  min-height: 110px !important;
  padding: 1.25rem 1.1rem !important;
}

/* Card hover */
#page_container .service-card:hover,
#services .service-card:hover,
a:hover > [class*="bg-theme-100/20"],
[class*="bg-theme-100/20"]:hover,
a:hover > [class*="bg-white/5"],
[class*="bg-white/5"]:hover {
  background: #ffffff !important;
  border-color: rgba(165, 180, 252, 0.7) !important;
  box-shadow:
    0 0 0 3px rgba(99, 102, 241, 0.07),
    0 12px 32px -6px rgba(99, 102, 241, 0.18) !important;
  transform: translateY(-3px);
}

/* ── Typography ─────────────────────────────────────────────────────── */

/* Service name */
#page_container .service-card .service-name,
#page_container .service-card .service-title,
a > [class*="bg-theme-100/20"] [class*="text-theme-700"],
a > [class*="bg-theme-100/20"] span,
a > [class*="bg-white/5"] span {
  color: #0f172a !important;
  font-weight: 700;
  font-size: 0.95rem;
  letter-spacing: -0.01em;
}

/* Service description */
#page_container .service-card .service-description,
a > [class*="bg-theme-100/20"] [class*="text-theme-500"],
a > [class*="bg-white/5"] [class*="text-theme-500"] {
  color: #64748b !important;
  font-size: 0.82rem;
  font-weight: 500;
  margin-top: 3px;
}

/* Icons */
#page_container .service-card .service-icon img,
#page_container .service-card .service-icon svg,
a > [class*="bg-theme-100/20"] img,
a > [class*="bg-theme-100/20"] svg {
  filter: none;
  opacity: 0.92;
}

/* ── Page title ─────────────────────────────────────────────────────── */
.font-medium.text-2xl,
h1.font-medium {
  font-weight: 800;
  color: #1e293b;
  letter-spacing: -0.02em;
}

/* ── Status dot glow ───────────────────────────────────────────────── */
.w-3.h-3.rounded-full {
  box-shadow: 0 0 5px 1px currentColor;
  opacity: 0.85;
}
