
.vehicle-challenge-section{
    width:100%;
    background:#f9f9f9;
    padding:70px 30px;
}
.vehicle-challenge-section .container{
    max-width:1520px;
    margin:0 auto;
}
.vehicle-challenge-section .title{
    text-align:center;
    font-size:50px;
    color:#222;
    margin-bottom:62px;
    opacity:0;
    animation:vehicle-titleAnim 1.4s ease forwards;
}
.vehicle-challenge-section .card-wrap{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px;
}
.vehicle-challenge-section .card{
    background:#fff;
    padding:42px 22px;
    text-align:center;
    opacity:0;
    transform:translateY(55px);
    animation:vehicle-cardUp 1s ease forwards;
}
.vehicle-challenge-section .card:nth-child(1){animation-delay:0.2s;}
.vehicle-challenge-section .card:nth-child(2){animation-delay:0.35s;}
.vehicle-challenge-section .card:nth-child(3){animation-delay:0.5s;}
.vehicle-challenge-section .card:nth-child(4){animation-delay:0.65s;}
.vehicle-challenge-section .icon{
    width:105px;
    height:105px;
    object-fit:contain;
    margin:0 auto 22px;
}
.vehicle-challenge-section .h3{
    font-size:22px;
    color:#222;
    margin-bottom:16px;
    line-height:1.3;
}
.vehicle-challenge-section .desc{
    font-size:14px;
    color:#333;
    line-height:1.7;
    letter-spacing:0.12px;
}

@keyframes vehicle-titleAnim{
    0%{opacity:0;letter-spacing:-4px;transform:translateY(12px);}
    100%{opacity:1;letter-spacing:0;transform:translateY(0);}
}
@keyframes vehicle-cardUp{
    to{opacity:1;transform:translateY(0);}
}
