@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=Inter:wght@400;500;600&display=swap');

html, body, #page_wrapper { font-family: 'Inter', ui-sans-serif, system-ui, sans-serif !important; }

body {
  background:
    radial-gradient(60% 60% at 12% -5%, rgba(120,99,255,.34), transparent 60%),
    radial-gradient(55% 55% at 88% 0%, rgba(79,123,255,.26), transparent 60%),
    radial-gradient(60% 70% at 50% 115%, rgba(160,110,255,.20), transparent 62%),
    #06070e !important;
  background-attachment: fixed !important;
}

/* faint grid overlay */
body::before {
  content: ""; position: fixed; inset: 0; z-index: 0; pointer-events: none; opacity: .35;
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px);
  background-size: 46px 46px;
  -webkit-mask-image: radial-gradient(72% 60% at 50% 18%, #000, transparent 86%);
          mask-image: radial-gradient(72% 60% at 50% 18%, #000, transparent 86%);
}
#page_container { position: relative; z-index: 1; }

/* display font for the greeting + group titles */
#information-widgets .text-4xl,
.services-group > h2, h2.text-theme-800 { font-family: 'Space Grotesk', sans-serif !important; letter-spacing: -.02em; }

/* glassy, glowing service cards */
.service-card, #information-widgets .flex.flex-col {
  border: 1px solid rgba(255,255,255,.08) !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.service-card:hover {
  transform: translateY(-3px);
  border-color: rgba(139,123,255,.55) !important;
  box-shadow: 0 12px 34px rgba(120,99,255,.28) !important;
}

/* accent the status ping dots */
.service-block .text-emerald-500, .text-green-500 { filter: drop-shadow(0 0 6px rgba(52,211,153,.8)); }
