/* Global theme variables bridged from inline --primary, --primary-alt */

html, body{
  scroll-behavior: smooth;
}

/* Light/Dark tokenized variables come from data-bs-theme; keep structure from original */
[data-bs-theme="light"], html {
  --bs-body-color: #4B5563;
  --bs-body-bg: #FAFAFA;
  --bs-bg-alt: #F5F5F5;
  --bs-dark-color: #111111;
  --bs-border-color: #E5E7EB;
  --bs-navbar-bg: #ffffff;
  --bs-card-bg: #ffffff;
}

body{
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--bs-body-color);
  background: var(--bs-body-bg);
  transition: background 0.3s, color 0.3s;
}

.brand-grad{ background: linear-gradient(135deg, var(--primary), var(--primary-alt)); }
.shadow-soft{ box-shadow: 0 10px 30px rgba(0,0,0,0.08); }
.rounded-2xl{ border-radius: 1rem; }
.btn-brand{ background: var(--primary); border-color: var(--primary); }
.btn-brand:hover{ background: var(--primary-alt); border-color: var(--primary-alt); }
.nav-link{ font-weight: 500; }
.navbar{ background-color: var(--bs-navbar-bg) !important; border-bottom: 1px solid var(--bs-border-color); }
.navbar .nav-link{
  position: relative;
  padding: .5rem .75rem;
  border-radius: .5rem;
}
.navbar .navbar-brand.brand-text{
  font-weight: 800;
  letter-spacing: .2px;
  background: linear-gradient(90deg, var(--primary), var(--primary-alt));
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.navbar .nav-link.active,
.navbar .nav-link:hover{
  background: rgba(79, 70, 229, 0.08);
}
.navbar .nav-link.active::after{
  content: '';
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: -10px;
  height: 2px;
  background: var(--primary);
  border-radius: 2px;
}
.navbar-brand{ color: var(--bs-dark-color) !important; }
.section-title{ color: var(--bs-dark-color); }
.card{ background-color: var(--bs-card-bg); border-color: var(--bs-border-color); transition: transform .2s ease, box-shadow .2s ease; }
.card:hover{ transform: translateY(-3px); box-shadow: 0 15px 40px rgba(0,0,0,0.12); }
.divider{ border-top: 1px solid var(--bs-border-color); }
.badge-status-active{ background: #EEF2FF; color: #4F46E5; }
.badge-status-dev{ background: #FFFBEB; color: #D97706; }
.badge-status-upcoming{ background: #FEF2F2; color: #EF4444; }

.kpi{ font-weight: 700; font-size: 1.75rem; color: var(--bs-dark-color); }
.hero{ 
  background: radial-gradient(1200px 600px at 100% -20%, rgba(79,70,229,0.18), transparent),
              radial-gradient(900px 400px at -20% 0%, rgba(59,95,255,0.22), transparent),
              var(--bs-body-bg);
  border-bottom: 1px solid var(--bs-border-color);
}
.hero-headline{
  font-weight: 800;
  letter-spacing: .2px;
  text-shadow: 0 8px 24px rgba(0,0,0,.08);
}

/* Spacing helpers similar to Tailwind's py-6 */
.py-6{ padding-top: 4rem !important; padding-bottom: 4rem !important; }

/* Scroll margin for anchored sections under sticky navbar */
section[id]{ scroll-margin-top: 90px; }

/* Active nav link highlighting for ScrollSpy */
.navbar .nav-link.active{ color: var(--primary) !important; }

/* Card glow on hover (mouse-position blur-like effect) */
.card{
  position: relative;
  overflow: hidden;
}
.card::before{
  content: '';
  position: absolute;
  top: var(--mx, -100px);
  left: var(--my, -100px);
  width: 200px;
  height: 200px;
  pointer-events: none;
  background: radial-gradient(120px 120px at center, rgba(79,70,229,0.20), rgba(79,70,229,0));
  opacity: 0;
  transition: opacity .2s ease;
}
.card:hover::before{ opacity: 1; }
.card.no-glow::before{ display: none; }

/* Footer alignment and spacing */
footer.site-footer{ background: var(--bs-bg-alt); border-top: 1px solid var(--bs-border-color); }
footer .section-title{ color: var(--bs-dark-color); }
footer a{ color: var(--primary); text-decoration: none; }
footer a:hover{ color: var(--primary-alt); }

/* Status ribbons for venture cards */
.status-ribbon{
  position: absolute;
  top: 12px; left: -6px;
  padding: .25rem .5rem;
  font-size: .75rem; font-weight: 600;
  transform: skew(-10deg);
  border-radius: 4px;
  box-shadow: 0 6px 16px rgba(0,0,0,.08);
  border: 1px solid var(--bs-border-color);
}
.ribbon-dev{ background:#FFF7E6; color:#B45309; border-color:#FDE68A; }
.ribbon-upcoming{ background:#FEF2F2; color:#B91C1C; border-color:#FCA5A5; }

/* Leadership cards */
.avatar{ width:72px; height:72px; border-radius:50%; border:2px solid var(--bs-border-color); object-fit:cover; background:#fff; }
.person-role{ color:#6B7280; font-size:.875rem; }
.section-subtitle{ color:#6B7280; }

/* Expertise chips */
.expertise-chips{ display:flex; flex-wrap:wrap; gap:.5rem; }
.expertise-chip{
  background:#ffffff; border:1px solid var(--bs-border-color);
  border-radius:999px; padding:.35rem .65rem; font-size:.85rem; color:#374151;
  box-shadow: 0 4px 12px rgba(0,0,0,.04);
}

/* Founder highlight */
.team-card{ position:relative; }
.team-card.founder{ border:1px solid #C7D2FE; box-shadow: 0 12px 30px rgba(79,70,229,.15); }
.team-badge{
  position:absolute; top:12px; right:12px; font-size:.7rem; font-weight:700; color:#4F46E5; background:#EEF2FF; border:1px solid #C7D2FE; border-radius:6px; padding:.2rem .4rem;
}

/* Roadmap cards */
.roadmap-card{ background: var(--bs-card-bg); border:1px solid var(--bs-border-color); border-radius:1rem; padding:1rem; }
.roadmap-stage + .roadmap-stage{ border-top:1px solid var(--bs-border-color); margin-top:.75rem; padding-top:.75rem; }
.roadmap-stage h6{ margin:0 0 .25rem 0; font-weight:700; }
.roadmap-now h6{ color:#16a34a; }
.roadmap-next h6{ color:#2563eb; }
.roadmap-later h6{ color:#b45309; }

/* Venture status pill in footer */
.status-pill{ border:1px solid var(--bs-border-color); background:#F8FAFF; color:#374151; border-radius:999px; padding:.25rem .5rem; font-size:.75rem; }
.status-pill.pill-dev{ background:#FFF7E6; color:#B45309; border-color:#FDE68A; }
.status-pill.pill-upcoming{ background:#FEF2F2; color:#B91C1C; border-color:#FCA5A5; }

/* Tenets */
.tenet-badge{ width:28px; height:28px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-weight:700; color:#4F46E5; background:#EEF2FF; border:1px solid #C7D2FE; margin-right:.5rem; }

/* Footer pills */
.footer-pill{ display:inline-flex; align-items:center; gap:.35rem; padding:.35rem .65rem; background:#fff; border:1px solid var(--bs-border-color); border-radius:999px; box-shadow:0 6px 16px rgba(0,0,0,.06); color:#374151 !important; }
.footer-pill:hover{ background:#F8FAFF; border-color:#C7D2FE; }

/* Map embed */
.map-embed{ border:1px solid var(--bs-border-color); border-radius:12px; width:100%; height:260px; box-shadow:0 8px 20px rgba(0,0,0,.06); }
