.about-intro{
    font-size:14.5px;
    line-height:1.7;
    color:var(--text-muted);
}

/* ── Timeline ── */
.timeline{
    list-style:none;
    display:flex;
    flex-direction:column;
    gap:22px;
    position:relative;
    padding-left:6px;
}

.timeline li{
    display:flex;
    gap:16px;
    position:relative;
}

.timeline li:not(:last-child)::before{
    content:"";
    position:absolute;
    left:17px;
    top:38px;
    bottom:-22px;
    width:2px;
    background:var(--border);
}

.timeline-dot{
    flex-shrink:0;
    width:36px;
    height:36px;
    border-radius:50%;
    background:var(--blue);
    color:#fff;
    font-weight:800;
    font-size:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:1;
}

.timeline h3{
    font-size:15px;
    margin-bottom:4px;
}

.timeline p{
    font-size:13.5px;
    color:var(--text-muted);
    line-height:1.5;
}

/* ── Stats grid ── */
.stats-grid{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:14px;
}

.stat-box{
    background:var(--bg);
    border-radius:12px;
    padding:18px 12px;
    text-align:center;
    display:flex;
    flex-direction:column;
    gap:6px;
}

.stat-value{
    font-size:20px;
    font-weight:800;
    color:var(--blue-dark);
}

.stat-label{
    font-size:12px;
    color:var(--text-muted);
}

/* ── Tech badges ── */
.badge-list{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.badge{
    background:var(--bg);
    border:1px solid var(--border);
    padding:8px 14px;
    border-radius:999px;
    font-size:13px;
    font-weight:600;
    color:var(--text);
}

/* ── Model notes ── */
.model-notes p{
    font-size:13.5px;
    color:var(--text-muted);
    line-height:1.7;
}

@media(max-width:640px){
    .stats-grid{
        grid-template-columns:1fr 1fr;
    }
}
