/* Home */
.hero-intro {
    font-size: 1.05rem;
    max-width: 65ch;
}

.quick-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2rem;
    margin-top: 2rem;
}

.stat {
    padding: 1rem 1.2rem;
    background: var(--color-soft-bg);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    min-width: 140px;
}

.stat h3 {
    margin: 0 0 .2rem;
    font-size: 1.3rem;
}

.stat p {
    margin: 0;
    font-size: .75rem;
    letter-spacing: .5px;
    text-transform: uppercase;
    color: #fff;
    font-weight: 600;
}

.social-mini {
    margin-top: 1.2rem;
    display: flex;
    gap: .75rem;
    flex-wrap: nowrap;
    max-width: 420px;
}

.social-mini-btn {
    flex: 1 1 0;
    text-align: center;
    /* Make text responsive but allow smaller min size to avoid overflow */
    font-size: .65rem;
    letter-spacing: .5px;
    font-weight: 600;
    color: #fff;
    padding: .55rem .4rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-soft-bg);
    transition: var(--transition);
    text-decoration: none;
    margin-right: .4rem;
}

.social-mini-btn:hover {
    background: #fff;
    border-color: #fff;
    color: #222;
}

.name-strong {
    font-weight: 700;
}



.featured-pubs .citation {
    margin: 0;
    font-size: .95rem;
    line-height: 1.55;
}

.featured-pubs .pub-link {
    display: inline-block;
    margin-top: .35rem;
    margin-right: .55rem;
    font-size: .65rem;
    letter-spacing: .5px;
    font-weight: 600;
    padding: .28rem .55rem;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: var(--color-soft-bg);
    text-decoration: none;
    color: #fff;
    transition: var(--transition);
}

.featured-pubs .pub-link:hover {
    background: #fff;
    border-color: #fff;
    color: #222;
}