.about {
    width: 100%;
    padding: 30px 3vw;
    display: flex;
    gap: 60px;
    align-items: flex-start;
    /* 把 flex-start 改成 stretch */
    /*align-items: stretch;  !* ✅ 关键：两边自动等高 *!*/
}
.about-left {
    /* 1. flex 三属性：固定占父容器的 50% 宽度 */
    flex: 0 0 50%;

    /* 2. 自己也变成 flex 容器 */
    display: flex;

    /* 3. 子元素垂直排列（从上到下） */
    flex-direction: column;

    left: 30px;
    bottom: 30px;

    /* 4. 子元素之间间距 24px */
    gap: 24px;
}
.about-title-box h2 {
    font-size: 2.2rem;
    line-height: 1.4;
    font-weight: 700;
}
.about-left-img {
    width: 100%;
    max-height: 500px;
    height: auto;
    object-fit: cover;
    border-radius: 6px;
}

.about-right {
    flex: 1;
}
.about-right p {
    font-size: 1rem;
    line-height: 1.7;
    color: #333;
    margin-bottom: 12px;
    text-align: justify;           /* 两端对齐 */
    text-justify: inter-word;      /* 英文优化 */
}

/* ========== 平板/手机适配 768px断点 ========== */
@media screen and (max-width: 768px) {
    .about {
        flex-direction: column;
        padding: 40px 4vw;
        gap: 32px;
    }
    /* 左侧宽度取消固定，占满全屏 */
    .about-left {
        flex: none;
        width: 100%;
        gap: 16px;
    }
    .about-title-box h2 {
        font-size: 1.6rem;
    }
}

/* ========== 超小手机 480px断点 ========== */
@media screen and (max-width: 480px) {
    .about {
        padding: 30px 3vw;
        gap: 24px;
    }
    .about-title-box h2 {
        font-size: 1.35rem;
    }
    .about-right p {
        font-size: 0.95rem;
        line-height: 1.65;
    }
}