:root {
  --clr-primary: #0038ff;
  --clr-primary-dark: #001a99;
  --clr-accent: #ccff00;
  --clr-bg: #ffffff;
  --clr-bg-card: #f7f9ff;
  --clr-border: rgba(0, 56, 255, 0.12);
  --clr-text: #07111f;
  --clr-text-muted: rgba(7, 17, 31, 0.64);
}

html {
  scroll-padding-top: 96px;
}

::selection {
  background: rgba(204, 255, 0, 0.85);
  color: #000;
}

body {
  background:
    radial-gradient(circle at top right, rgba(204, 255, 0, 0.18), transparent 28rem),
    radial-gradient(circle at 12% 16%, rgba(0, 56, 255, 0.1), transparent 24rem),
    #ffffff;
}

button,
a[class*="rounded"],
a[class*="border"],
a[class*="bg-"] {
  transition:
    transform 180ms ease,
    box-shadow 180ms ease,
    border-color 180ms ease,
    background-color 180ms ease;
}

button:hover,
a[class*="rounded"]:hover,
a[class*="border"]:hover,
a[class*="bg-"]:hover {
  transform: translateY(-2px);
}

:focus-visible {
  outline: 3px solid rgba(204, 255, 0, 0.9);
  outline-offset: 3px;
}

.bg-white,
.bg-\[\#F8F9FA\],
.bg-white\/80 {
  box-shadow: 0 18px 60px rgba(0, 26, 153, 0.08);
}

.bg-white:hover,
.bg-\[\#F8F9FA\]:hover,
.bg-white\/80:hover {
  box-shadow: 0 24px 80px rgba(0, 26, 153, 0.12);
}

.border-black\/5,
.border-gray-100 {
  border-color: rgba(0, 56, 255, 0.12);
}

.rounded-3xl,
.rounded-4xl,
.rounded-\[2\.5rem\],
.rounded-\[2rem\] {
  border-radius: 24px;
}

.text-black\/60,
.text-white\/70,
.text-white\/80 {
  line-height: 1.6;
}

.max-w-6xl {
  width: min(72rem, calc(100% - 32px));
}

.shadow-2xl,
.shadow-lg {
  box-shadow: 0 24px 70px rgba(0, 26, 153, 0.14);
}

.bg-gradient-to-br,
.bg-gradient-to-r,
.bg-gradient-to-t,
.bg-gradient-to-b {
  background-size: 140% 140%;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

@media (max-width: 760px) {
  .max-w-6xl {
    width: min(100%, calc(100% - 28px));
  }

  .text-5xl {
    font-size: 2.65rem;
    line-height: 0.98;
  }

  .text-4xl {
    font-size: 2.1rem;
    line-height: 1.08;
  }

  .px-8 {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .py-24 {
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
  }
}
