:root {
  --brand-ink: #0F1A16;
  --brand-ink-mid: #172621;
  --brand-ink-light: #1C2E27;
  --brand-ink-lighter: #243830;
  --brand-accent: #04D94F;
  --brand-accent-hover: #03C245;
  --brand-accent-mid: #00D856;
  --brand-accent-soft: #E6FBEF;
  --brand-surface: #F2F2F2;
  --brand-surface-card: #FFFFFF;
  --brand-surface-border: #E8E8E8;
  --brand-surface-muted: #D9D9D9;
}

body {
  font-family: "Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  background-color: var(--brand-surface);
  color: var(--brand-ink);
}

.hero-glow {
  background: radial-gradient(ellipse at center, rgba(4, 217, 79, 0.1) 0%, rgba(0, 216, 86, 0.05) 40%, transparent 70%);
}

.headline-mark {
  position: relative;
  display: inline-block;
  z-index: 0;
}

.headline-mark::after {
  content: "";
  position: absolute;
  bottom: 0.25rem;
  left: 0;
  width: 100%;
  height: 0.625rem;
  background: rgba(4, 217, 79, 0.4);
  z-index: -1;
  border-radius: 2px;
}

.modal-overlay {
  display: none;
}

.modal-overlay.is-open {
  display: flex;
}

body.modal-open {
  overflow: hidden;
}

::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #0F1A16;
}

::-webkit-scrollbar-thumb {
  background: #04D94F;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #00D856;
}

html {
  scrollbar-width: thin;
  scrollbar-color: #04D94F #0F1A16;
}

.skip-link {
  position: absolute;
  left: 1rem;
  top: -3rem;
  z-index: 100;
  background: #04D94F;
  color: #0F1A16;
  font-weight: 800;
  font-size: 0.875rem;
  padding: 0.5rem 0.75rem;
  border-radius: 0.75rem;
}

.skip-link:focus {
  top: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  [data-aos] {
    opacity: 1 !important;
    transform: none !important;
  }
}
