/* ═══════════════════════════════════════
   ABOUT
═══════════════════════════════════════ */
.about { background: var(--off); }

.about-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 56px;
  align-items: start;
}

.about-text p {
  color: var(--muted);
  line-height: 1.7;
  margin-bottom: 16px;
}

.about-text p strong { color: var(--navy); font-weight: 700; }

.timeline {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding-left: 24px;
  border-left: 2px solid var(--border);
}

.tl-item {
  position: relative;
  padding: 0 0 32px 24px;
}

.tl-item:last-child { padding-bottom: 0; }

.tl-dot {
  position: absolute;
  left: -7px; top: 4px;
  width: 12px; height: 12px;
  border-radius: 50%;
  background: var(--border);
  border: 2px solid var(--off);
  transition: var(--transition);
}

.tl-item.active .tl-dot {
  background: var(--teal);
  border-color: var(--teal2);
  box-shadow: 0 0 0 4px rgba(46,204,113,0.15), 0 0 12px rgba(46,204,113,0.3);
  animation: tl-pulse 2.5s ease-in-out infinite;
}

.tl-item:hover .tl-dot {
  background: var(--teal);
  border-color: var(--teal2);
}

@keyframes tl-pulse {
  0%, 100% { box-shadow: 0 0 0 4px rgba(46,204,113,0.15), 0 0 12px rgba(46,204,113,0.3); }
  50% { box-shadow: 0 0 0 8px rgba(46,204,113,0.08), 0 0 20px rgba(46,204,113,0.4); }
}

.tl-year {
  font-weight: 700;
  color: var(--navy);
  font-size: 15px;
  margin-bottom: 4px;
}

.tl-item.active .tl-year { color: var(--teal); }

.tl-desc { font-size: 14px; color: var(--muted); line-height: 1.6; }

@media (max-width: 900px) {
  .about-grid { grid-template-columns: 1fr; gap: 40px; }
}
