/* =========================================================
   about.css — same color variables as features/software/solution
   Layout: mission-quote hero, vertical story timeline,
   numbered values grid, stats bar.
   ========================================================= */

:root {
  --f-bg-dark: #0d1117;
  --f-bg-card: #161b22;
  --f-border: #232a34;
  --f-accent: #c9ff4d;
  --f-text: #f4f6f3;
  --f-text-muted: #a7b0a3;

  --f-font-heading: 'Space Grotesk', sans-serif;
  --f-font-body: 'Inter', sans-serif;
  --f-font-mono: 'JetBrains Mono', monospace;
}

.ab-hero-area, .ab-story-area, .ab-values-area, .ab-stats-area, .ab-cta-area {
  background-color: var(--f-bg-dark);
  color: var(--f-text);
  font-family: var(--f-font-body);
}

.sub-title {
  display: inline-block;
  font-family: var(--f-font-mono);
  font-size: 13px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--f-accent);
  margin-bottom: 12px;
}

.default-btn {
  display: inline-block;
  padding: 14px 30px;
  background-color: var(--f-accent);
  color: var(--f-bg-dark);
  font-weight: 600;
  border-radius: 6px;
  text-decoration: none;
  transition: all 0.25s ease;
}
.default-btn:hover { opacity: 0.9; color: var(--f-bg-dark); transform: translateY(-2px); }

/* ---------- Mission Hero ---------- */
.ab-hero-area { padding: 130px 0 80px; text-align: center; }
.ab-hero-area h1 {
  font-family: var(--f-font-heading);
  color: var(--f-text);
  font-weight: 700;
  font-size: 40px;
  line-height: 1.3;
  margin-bottom: 28px;
}
.ab-mission {
  font-family: var(--f-font-heading);
  font-size: 19px;
  font-style: italic;
  color: var(--f-text-muted);
  line-height: 1.7;
  border-left: 2px solid var(--f-accent);
  padding-left: 20px;
  text-align: left;
  max-width: 640px;
  margin: 0 auto;
}

/* ---------- Section Title ---------- */
.section-title { text-align: center; max-width: 620px; margin: 0 auto 60px; }
.section-title h2 {
  font-family: var(--f-font-heading);
  color: var(--f-text);
  font-weight: 700;
  font-size: 32px;
  margin-bottom: 14px;
}
.section-title p { color: var(--f-text-muted); line-height: 1.8; font-size: 15px; }

/* ---------- Vertical Story Timeline ---------- */
.ab-story-area { padding: 90px 0; }

.ab-story-timeline {
  max-width: 720px;
  margin: 0 auto;
  border-left: 1px solid var(--f-border);
  padding-left: 40px;
}

.ab-story-item {
  position: relative;
  margin-bottom: 50px;
}
.ab-story-item:last-child { margin-bottom: 0; }

.ab-story-item {
  padding-left: 4px;
}

.ab-story-item .year {
  position: absolute;
  left: -63px;
  top: -2px;
  background-color: var(--f-accent);
  color: var(--f-bg-dark);
  font-family: var(--f-font-mono);
  font-size: 11px;
  font-weight: 700;
  width: auto;
  height: auto;
  padding: 4px 8px;
  border-radius: 6px;
  border: none;
}

.ab-story-content { padding-top: 26px; }

.ab-story-content h3 {
  font-family: var(--f-font-heading);
  font-size: 19px;
  font-weight: 600;
  color: var(--f-text);
  margin-bottom: 10px;
}

.ab-story-content p {
  color: var(--f-text-muted);
  font-size: 14.5px;
  line-height: 1.75;
}

/* ---------- Values Grid ---------- */
.ab-values-area {
  background-color: var(--f-bg-card);
  padding: 90px 0;
  border-top: 1px solid var(--f-border);
  border-bottom: 1px solid var(--f-border);
}

.ab-value-card {
  padding: 10px 6px 30px;
  margin-bottom: 20px;
}

.ab-value-card .num {
  display: block;
  font-family: var(--f-font-heading);
  font-size: 34px;
  color: var(--f-accent);
  opacity: 0.5;
  margin-bottom: 14px;
}

.ab-value-card h3 {
  font-family: var(--f-font-heading);
  font-size: 18px;
  font-weight: 600;
  color: var(--f-text);
  margin-bottom: 10px;
}

.ab-value-card p {
  color: var(--f-text-muted);
  font-size: 14px;
  line-height: 1.7;
}

/* ---------- Stats Bar ---------- */
.ab-stats-area { padding: 70px 0; text-align: center; }

.ab-stat strong {
  display: block;
  font-family: var(--f-font-heading);
  font-size: 36px;
  color: var(--f-accent);
  margin-bottom: 6px;
}

.ab-stat span {
  color: var(--f-text-muted);
  font-size: 13.5px;
}

/* ---------- CTA ---------- */
.ab-cta-area {
  background-color: var(--f-bg-card);
  padding: 90px 0;
  text-align: center;
  border-top: 1px solid var(--f-border);
}
.ab-cta-area h2 {
  font-family: var(--f-font-heading);
  color: var(--f-text);
  font-size: 30px;
  font-weight: 700;
  margin-bottom: 14px;
}
.ab-cta-area p { color: var(--f-text-muted); margin-bottom: 28px; }

/* ---------- Responsive ---------- */
@media (max-width: 991px) {
  .ab-hero-area h1 { font-size: 30px; }
  .section-title h2 { font-size: 26px; }
  .ab-story-timeline { padding-left: 30px; }
  .ab-story-item .year { left: -53px; }
}

@media (max-width: 576px) {
  .ab-hero-area { padding: 100px 0 60px; }
  .ab-mission { padding-left: 14px; font-size: 16px; }
}
