html {
      scroll-behavior: smooth;
    }
    body {
      background:
        radial-gradient(circle at top left, rgba(126, 200, 255, 0.22), transparent 22%),
        radial-gradient(circle at top right, rgba(22, 141, 255, 0.10), transparent 18%),
        #ffffff;
    }
    .reveal {
      opacity: 0;
      transform: translateY(24px);
      transition: opacity 0.8s ease, transform 0.8s ease;
    }
    .reveal.is-visible {
      opacity: 1;
      transform: translateY(0);
    }
    .hero-orbit {
      animation: orbit 18s linear infinite;
      transform-origin: center;
    }
    .hero-float {
      animation: float 6s ease-in-out infinite;
    }
    .hero-float-delay {
      animation: float 7.5s ease-in-out infinite;
      animation-delay: 1s;
    }
    .hero-core {
      animation: drift 10s ease-in-out infinite;
    }
    @keyframes orbit {
      from { transform: rotate(0deg); }
      to { transform: rotate(360deg); }
    }
    @keyframes float {
      0%, 100% { transform: translateY(0px); }
      50% { transform: translateY(-10px); }
    }
    @keyframes drift {
      0%, 100% { transform: translate(-50%, -50%); }
      20% { transform: translate(calc(-50% + 18px), calc(-50% - 12px)); }
      40% { transform: translate(calc(-50% - 14px), calc(-50% + 16px)); }
      60% { transform: translate(calc(-50% + 24px), calc(-50% + 6px)); }
      80% { transform: translate(calc(-50% - 10px), calc(-50% - 18px)); }
    }
    .news-scrollbar::-webkit-scrollbar {
      height: 8px;
    }
    .news-scrollbar::-webkit-scrollbar-track {
      background: rgba(191, 219, 254, 0.5);
      border-radius: 999px;
    }
    .news-scrollbar::-webkit-scrollbar-thumb {
      background: rgba(22, 141, 255, 0.55);
      border-radius: 999px;
    }
    .team-scrollbar {
      -ms-overflow-style: none;
      scrollbar-width: none;
    }
    .team-scrollbar::-webkit-scrollbar {
      display: none;
    }

.custom-logo-link img { max-height: 44px; width: auto; }

/* Fallback brand palette for cases when Tailwind CDN config is reordered or optimized by WordPress plugins. */
.bg-brand-50 { background-color: #eef7ff; }
.bg-brand-100 { background-color: #d9eeff; }
.bg-brand-300 { background-color: #7ec8ff; }
.bg-brand-500 { background-color: #168dff; }
.bg-brand-600 { background-color: #0b6fe0; }
.bg-brand-700 { background-color: #0d58b0; }

.text-brand-700 { color: #0d58b0; }
.text-brand-800 { color: #114b8f; }
.text-brand-900 { color: #153f73; }

.border-brand-100 { border-color: #d9eeff; }
.border-brand-200 { border-color: #b7dfff; }
.border-brand-300 { border-color: #7ec8ff; }

.from-brand-100 { --tw-gradient-from: #d9eeff var(--tw-gradient-from-position); --tw-gradient-to: rgb(217 238 255 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.from-brand-300 { --tw-gradient-from: #7ec8ff var(--tw-gradient-from-position); --tw-gradient-to: rgb(126 200 255 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.from-brand-50 { --tw-gradient-from: #eef7ff var(--tw-gradient-from-position); --tw-gradient-to: rgb(238 247 255 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.from-brand-500 { --tw-gradient-from: #168dff var(--tw-gradient-from-position); --tw-gradient-to: rgb(22 141 255 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.from-brand-600 { --tw-gradient-from: #0b6fe0 var(--tw-gradient-from-position); --tw-gradient-to: rgb(11 111 224 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }
.from-brand-700 { --tw-gradient-from: #0d58b0 var(--tw-gradient-from-position); --tw-gradient-to: rgb(13 88 176 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); }

.via-brand-50 { --tw-gradient-to: rgb(238 247 255 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), #eef7ff var(--tw-gradient-via-position), var(--tw-gradient-to); }
.via-brand-300 { --tw-gradient-to: rgb(126 200 255 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), #7ec8ff var(--tw-gradient-via-position), var(--tw-gradient-to); }
.via-brand-600 { --tw-gradient-to: rgb(11 111 224 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), #0b6fe0 var(--tw-gradient-via-position), var(--tw-gradient-to); }
.via-brand-900 { --tw-gradient-to: rgb(21 63 115 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), #153f73 var(--tw-gradient-via-position), var(--tw-gradient-to); }

.to-brand-50 { --tw-gradient-to: #eef7ff var(--tw-gradient-to-position); }
.to-brand-100 { --tw-gradient-to: #d9eeff var(--tw-gradient-to-position); }
.to-brand-200 { --tw-gradient-to: #b7dfff var(--tw-gradient-to-position); }
.to-brand-500 { --tw-gradient-to: #168dff var(--tw-gradient-to-position); }

.shadow-soft { box-shadow: 0 10px 30px rgba(17, 75, 143, 0.08); }
.shadow-card { box-shadow: 0 16px 40px rgba(15, 23, 42, 0.08); }
.shadow-glow { box-shadow: 0 20px 60px rgba(22, 141, 255, 0.18); }
.bg-grid {
  background-image:
    linear-gradient(to right, rgba(22,141,255,0.08) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(22,141,255,0.08) 1px, transparent 1px);
}

@media (max-width: 767px) {
  .hero-core {
    height: 3rem !important;
    width: 3rem !important;
    font-size: 0.625rem !important;
    line-height: 1 !important;
  }

  #teamTrack {
    grid-auto-columns: 100%;
  }
}
