/* 卡片图片基本样式 */
.card img {
    width: 100%;
    height: 220px; /* 稍微增加高度 */
    object-fit: cover; 
    transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1); /* 使用苹果风格的贝塞尔曲线 */
    transform-origin: center; 
    position: relative;
    z-index: 1;
    border-radius: 8px; /* 增加圆角 */
}

/* 鼠标悬停时的图片缩放效果 */
.card:hover img {
    transform: scale(1.05); /* 减小放大倍数，更加精致 */
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15); /* 柔和的阴影 */
}

/* 卡片动画基本样式 */
.card-grid .card {
    opacity: 0;
    transform: translateY(60px) translateX(-20px) scale(0.95); /* 添加X轴偏移，从左到右 */
    transition: all 1.5s cubic-bezier(0.19, 1, 0.22, 1); /* 减慢动画速度 */
    will-change: transform, opacity; /* 性能优化 */
    perspective: 1000px; /* 3D效果 */
}

/* 当添加.animate类时激活动画 */
.card-grid .card.animate {
    opacity: 1;
    transform: translateY(0) translateX(0) scale(1);
}

/* 标题动画样式 */
.card-section h2 {
    opacity: 0;
    transform: translateY(30px);
    transition: all 1s cubic-bezier(0.19, 1, 0.22, 1);
}

.card-section h2.animate {
    opacity: 1;
    transform: translateY(0);
}

/* 为每行的卡片设置不同的初始位置，实现从左到右的错位效果 */
.card-grid .card:nth-child(1) {
    transform: translateY(80px) translateX(-40px) scale(0.95);
}

.card-grid .card:nth-child(2) {
    transform: translateY(80px) translateX(-20px) scale(0.95);
}

.card-grid .card:nth-child(3) {
    transform: translateY(80px) translateX(0px) scale(0.95);
}

.card-grid .card:nth-child(4) {
    transform: translateY(80px) translateX(20px) scale(0.95);
}

.card-grid .card:nth-child(5) {
    transform: translateY(80px) translateX(40px) scale(0.95);
}

.card-grid .card:nth-child(6) {
    transform: translateY(80px) translateX(60px) scale(0.95);
}

/* 鼠标悬停时的卡片整体效果 */
.card {
    transition: all 0.8s cubic-bezier(0.19, 1, 0.22, 1); /* 减慢过渡速度 */
    overflow: hidden;
    background-color: #fff;
    border-radius: 10px; /* 增加卡片圆角 */
    border: none; /* 移除边框 */
    box-shadow: 0 4px 12px rgba(0,0,0,0.08); /* 初始阴影更精致 */
    padding: 15px;
}

.card:hover {
    transform: translateY(-8px) scale(1.02); /* 上浮并微微放大 */
    box-shadow: 0 12px 24px rgba(0,0,0,0.12); /* 悬停时阴影更明显 */
}

/* 卡片标题样式 */
.card h3 {
    margin-top: 15px;
    font-size: 1.1rem;
    transition: color 0.3s ease;
    font-weight: 500;
}

.card:hover h3 {
    color: #ba9657; /* 悬停时改变标题颜色 */
}

/* 整个区域的动画效果 */
.card-section {
    transform: translateZ(0); /* 触发硬件加速 */
}

/* 确保所有动画后恢复到相同的最终位置 */
.card-grid .card.animate {
    transform: translateY(0) translateX(0) scale(1);
}