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

:root {
  --sr-accent: #2ae4c8;
  --sr-accent-2: #31afff;
  --sr-highlight: #fdd76b;
  --sr-border: rgba(139, 188, 229, 0.18);
  --sr-card: rgba(12, 28, 43, 0.78);
  --sr-bg: #08121f;
  --sr-bg-2: #0f2033;
  --sr-text: #eaf8ff;
  --sr-muted: #8bbce5;
}

:root[data-bs-theme='light'] {
  --sr-border: rgba(18, 48, 74, 0.12);
  --sr-card: rgba(255, 255, 255, 0.9);
  --sr-bg: #f4f9fc;
  --sr-bg-2: #dce9f4;
  --sr-text: #102439;
  --sr-muted: #4f6f8a;
}

* {
  box-sizing: border-box;
}

body {
  min-height: 100vh;
  font-family: "Manrope", "Space Grotesk", system-ui, -apple-system, sans-serif;
  background:
    radial-gradient(circle at top right, rgba(49, 175, 255, 0.12), transparent 28%),
    radial-gradient(circle at top left, rgba(42, 228, 200, 0.1), transparent 24%),
    var(--sr-bg);
  color: var(--sr-text);
}

h1, h2, h3, h4, h5 {
  font-family: "Space Grotesk", "Manrope", system-ui, -apple-system, sans-serif;
}

.bg-body-tertiary {
  background: rgba(20, 23, 33, 0.94) !important;
}

.navbar {
  min-height: 56px;
  backdrop-filter: blur(18px);
  box-shadow: inset 0 -1px 0 rgba(139, 188, 229, 0.08);
}

.border-bottom,
.border-top {
  border-color: rgba(139, 188, 229, 0.12) !important;
}

:root[data-bs-theme='light'] .bg-body-tertiary {
  background: rgba(255, 255, 255, 0.9) !important;
}

:root[data-bs-theme='light'] .navbar {
  box-shadow: inset 0 -1px 0 rgba(18, 48, 74, 0.08);
}

:root[data-bs-theme='light'] .border-bottom,
:root[data-bs-theme='light'] .border-top {
  border-color: rgba(18, 48, 74, 0.1) !important;
}

.navbar-brand.sr-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--sr-text);
  text-decoration: none;
}

.sr-brand-mark {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 12px 24px rgba(4, 12, 22, 0.32);
}

.sr-brand-mark svg {
  width: 100%;
  height: 100%;
  display: block;
}

.sr-brand-title {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.navbar .nav-link {
  color: var(--sr-muted);
}

.navbar .nav-link:hover,
.navbar .nav-link:focus,
.navbar .nav-link.active {
  color: var(--sr-text);
}

.navbar .btn-outline-secondary {
  color: var(--sr-text);
  border-color: var(--sr-border);
  background: rgba(15, 32, 51, 0.18);
}

.navbar .btn-outline-secondary:hover,
.navbar .btn-outline-secondary:focus {
  color: #08121f;
  border-color: rgba(42, 228, 200, 0.35);
  background: linear-gradient(135deg, rgba(42, 228, 200, 0.95), rgba(49, 175, 255, 0.85));
}

:root[data-bs-theme='light'] .navbar .btn-outline-secondary {
  color: #102439;
  border-color: rgba(18, 48, 74, 0.18);
  background: rgba(255, 255, 255, 0.72);
}

:root[data-bs-theme='light'] .navbar .btn-outline-secondary:hover,
:root[data-bs-theme='light'] .navbar .btn-outline-secondary:focus {
  color: #102439;
  border-color: rgba(49, 175, 255, 0.28);
  background: rgba(220, 233, 244, 0.96);
}

:root[data-bs-theme='light'] .navbar .dropdown-menu {
  border-color: rgba(18, 48, 74, 0.12);
  background: rgba(255, 255, 255, 0.97);
}

:root[data-bs-theme='light'] .navbar .dropdown-item {
  color: #102439;
}

:root[data-bs-theme='light'] .navbar .dropdown-item:hover {
  color: #102439;
  background: rgba(220, 233, 244, 0.96);
}

.sr-hero {
  padding: 64px 0 48px;
}

.sr-hero .eyebrow {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.2rem;
  color: var(--sr-accent);
}

.sr-hero .lead {
  color: var(--sr-muted);
}

.sr-muted {
  color: var(--sr-muted);
}

.sr-hero-card {
  border-radius: 20px;
  border: 1px solid var(--sr-border);
  background: var(--sr-card);
  backdrop-filter: blur(18px);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.2);
}

.sr-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid var(--sr-border);
  color: var(--sr-muted);
  font-size: 0.75rem;
}

.sr-section {
  padding: 48px 0;
}

.sr-section .lead {
  color: var(--sr-muted);
}

.sr-card {
  border-radius: 16px;
  border: 1px solid var(--sr-border);
  background: var(--sr-card);
  backdrop-filter: blur(12px);
}

.sr-cta {
  border-radius: 20px;
  border: 1px solid var(--sr-border);
  background: linear-gradient(135deg, rgba(42, 228, 200, 0.15), rgba(49, 175, 255, 0.18));
}

.sr-footer {
  padding: 24px 0 48px;
  color: var(--sr-muted);
  font-size: 0.9rem;
}

.sr-floating {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 1000;
}

.sr-floating .btn {
  border-radius: 999px;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
}

.accordion-button:not(.collapsed) {
  color: var(--sr-text);
  background-color: transparent;
}

.accordion-item {
  border: 1px solid var(--sr-border);
  background: transparent;
}

.accordion-body {
  color: var(--sr-muted);
}
