

    /* =============================================
       MAIN ABOUT SECTION
    ============================================= */
    .about-section { padding: 80px 0 100px; }

    /* ---- LEFT PANEL: Brand Story ---- */
    .story-card {
      background: #111;
      color: #fff;
      padding: 48px 40px;
      height: 100%;
      position: relative;
      overflow: hidden;
    }
    .story-card::before {
      content: "";
      position: absolute;
      bottom: -40px; right: -40px;
      width: 200px; height: 200px;
      border-radius: 50%;
      background: #fa1d3c;
      opacity: 0.08;
    }
    /* Red accent bar top */
    .story-card::after {
      content: "";
      position: absolute;
      top: 0; left: 0;
      width: 100%; height: 4px;
      background: #fa1d3c;
    }

    .story-tag {
      font-size: 11px; font-weight: 600;
      letter-spacing: 0.22em; text-transform: uppercase;
      color: #fa1d3c; margin-bottom: 20px;
      display: block;
    }
    .story-heading {
      font-size: 28px; font-weight: 700;
      line-height: 1.2; margin-bottom: 28px;
      color: #fff;
    }
    .story-body {
      font-size: 14px; font-weight: 300;
      line-height: 1.9; color: rgba(255,255,255,0.78);
      margin-bottom: 28px;
    }
    .story-body strong { color: #fff; font-weight: 600; }

    /* Stat counters */
    .stats-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 1px;
      background: rgba(255,255,255,0.1);
      margin-top: 36px;
    }
    .stat-box {
      background: #111;
      padding: 24px 20px;
      text-align: center;
    }
    .stat-number {
      font-size: 42px; font-weight: 700;
      color: #fa1d3c; line-height: 1;
      display: block;
    }
    .stat-suffix { font-size: 24px; font-weight: 700; color: #fa1d3c; }
    .stat-label {
      font-size: 10px; font-weight: 600;
      letter-spacing: 0.18em; text-transform: uppercase;
      color: rgba(255,255,255,0.5);
      margin-top: 8px; display: block;
    }

    /* Divider line */
    .story-divider {
      width: 48px; height: 3px;
      background: #fa1d3c;
      margin: 28px 0;
    }

    /* Values list */
    .value-item {
      display: flex; gap: 14px;
      align-items: flex-start;
      margin-bottom: 20px;
    }
    .value-dot {
      width: 32px; height: 32px;
      background: #fa1d3c;
      display: flex; align-items: center; justify-content: center;
      flex-shrink: 0;
      font-size: 14px; font-weight: 700;
      color: #fff;
    }
    .value-text { font-size: 14px; color: rgba(255,255,255,0.8); line-height: 1.6; }
    .value-text strong { color: #fff; display: block; font-size: 13px; letter-spacing: 0.08em; text-transform: uppercase; margin-bottom: 3px; }

    /* ---- RIGHT PANEL: Team + Mission ---- */
    .right-panel {
      background: #fff;
      padding: 48px 44px;
      height: 100%;
      box-shadow: 0 24px 80px rgba(0,0,0,0.08);
    }

    .panel-tag {
      font-size: 11px; font-weight: 600;
      letter-spacing: 0.22em; text-transform: uppercase;
      color: #fa1d3c; margin-bottom: 12px;
      display: block;
    }
    .panel-heading {
      font-size: 28px; font-weight: 700;
      color: #111; margin-bottom: 20px;
      line-height: 1.2;
    }
    .panel-body {
      font-size: 15px; font-weight: 500;
      line-height: 1.9; color: #111;
      margin-bottom: 36px;
    }

    /* Mission / Vision cards */
    .mv-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      margin-bottom: 40px;
    }
    .mv-card {
      background: #f4f4f2;
      padding: 24px 20px;
      position: relative;
      overflow: hidden;
    }
    .mv-card::before {
      content: "";
      position: absolute;
      top: 0; left: 0;
      width: 4px; height: 100%;
      background: #fa1d3c;
    }
    .mv-icon {
      width: 38px; height: 38px;
      background: #fa1d3c;
      display: flex; align-items: center; justify-content: center;
      margin-bottom: 14px;
    }
    .mv-icon svg { width: 18px; height: 18px; fill: #fff; }
    .mv-title {
      font-size: 11px; font-weight: 800;
      letter-spacing: 0.18em; text-transform: uppercase;
      color: #111; margin-bottom: 8px;
    }
    .mv-text {
      font-size: 13px; font-weight: 500;
      line-height: 1.7; color: #000000;
    }

    /* Team members */
    .team-heading {
      font-size: 11px; font-weight: 700;
      letter-spacing: 0.22em; text-transform: uppercase;
      color: #111; margin-bottom: 20px;
    }
    .team-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
      margin-bottom: 36px;
    }
    .team-card {
      text-align: center;
    }
    .team-avatar {
      width: 72px; height: 72px;
      border-radius: 50%;
      background: #111;
      margin: 0 auto 12px;
      display: flex; align-items: center; justify-content: center;
      font-size: 24px; font-weight: 700;
      color: #fff;
      position: relative;
      overflow: hidden;
    }
    .team-avatar::after {
      content: "";
      position: absolute;
      bottom: 0; left: 0; right: 0;
      height: 4px;
      background: #fa1d3c;
    }
    .team-name {
      font-size: 13px; font-weight: 600;
      color: #111; text-transform: uppercase;
      letter-spacing: 0.08em;
    }
    .team-role {
      font-size: 11px; font-weight: 400;
      color: #888; letter-spacing: 0.06em;
      text-transform: uppercase; margin-top: 3px;
    }

    /* Brand badges */
    .brand-strip {
      background: #111;
      padding: 20px 24px;
      display: flex; align-items: center;
      gap: 20px; flex-wrap: wrap;
    }
    .brand-strip-label {
      font-size: 10px; font-weight: 700;
      letter-spacing: 0.22em; text-transform: uppercase;
      color: rgba(255,255,255,0.5);
      white-space: nowrap;
    }
    .badge-pill {
      background: #fa1d3c;
      color: #fff;
      font-size: 10px; font-weight: 600;
      letter-spacing: 0.12em; text-transform: uppercase;
      padding: 5px 14px;
      white-space: nowrap;
    }

    /* CTA strip */
    .cta-strip {
      background: #fa1d3c;
      padding: 20px 24px;
      display: flex; align-items: center;
      justify-content: space-between;
      gap: 16px;
      margin-top: 32px;
      flex-wrap: wrap;
    }
    .cta-strip-text {
      font-size: 14px; font-weight: 600;
      color: #fff; letter-spacing: 0.06em;
    }
    .cta-strip-btn {
      display: inline-flex; align-items: center; gap: 8px;
      background: #fff; color: #111;
      font-size: 11px; font-weight: 700;
      letter-spacing: 0.14em; text-transform: uppercase;
      padding: 10px 20px;
      text-decoration: none;
      transition: background 0.2s, color 0.2s;
      white-space: nowrap;
    }
    .cta-strip-btn:hover { background: #111; color: #fff; }

    /* =============================================
       TIMELINE STRIP (below two columns)
    ============================================= */
    .timeline-section {
      background: #fff;
      padding: 64px 0;
      border-top: 1px solid #eee;
    }
    .timeline-intro {
      text-align: center;
      margin-bottom: 56px;
    }
    .timeline-intro .tag {
      font-size: 11px; font-weight: 600;
      letter-spacing: 0.22em; text-transform: uppercase;
      color: #fa1d3c; display: block; margin-bottom: 12px;
    }
    .timeline-intro h3 {
      font-size: 32px; font-weight: 700;
      color: #111; line-height: 1.2;
    }

    .timeline-track {
      position: relative;
      display: flex;
      justify-content: space-between;
      gap: 0;
    }
    .timeline-track::before {
      content: "";
      position: absolute;
      top: 20px; left: 0; right: 0;
      height: 2px;
      background: #e0e0e0;
      z-index: 0;
    }
    .tl-item {
      flex: 1;
      text-align: center;
      position: relative;
      padding: 0 8px;
    }
    .tl-dot {
      width: 40px; height: 40px;
      background: #111;
      border-radius: 50%;
      margin: 0 auto 20px;
      position: relative; z-index: 1;
      display: flex; align-items: center; justify-content: center;
      font-size: 13px; font-weight: 700;
      color: #fff;
      transition: background 0.3s;
      cursor: default;
    }
    .tl-item:hover .tl-dot { background: #fa1d3c; }
    .tl-year {
      font-size: 18px; font-weight: 700;
      color: #fa1d3c; margin-bottom: 6px;
    }
    .tl-event {
      font-size: 12px; font-weight: 400;
      color: #555; line-height: 1.5;
      letter-spacing: 0.04em;
    }

  