.major-section{
    padding:80px 0;
    background:#fff;
}

.major-container{
    width:90%;
    max-width:1400px;
    margin:auto;
}

.major-header{
    text-align:center;
    margin-bottom:50px;
}

.major-header h2{
    font-size:36px;
    font-weight:700;
}

.major-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:30px;
}

.major-card{

    display:flex;
    flex-direction:column;

    background:#fff;
    border-radius:22px;

    overflow:hidden;

    text-decoration:none;

    color:#222;

    box-shadow:0 10px 35px rgba(0,0,0,.08);

    transition:.35s;
}

.major-card:hover{

    transform:translateY(-8px);

    box-shadow:0 18px 45px rgba(0,0,0,.12);

}

.major-image-wrapper{

    height:220px;

    overflow:hidden;

    position:relative;
}

.major-image{

    width:100%;
    height:100%;
    object-fit:cover;

    transition:.5s;
}

.major-card:hover .major-image{

    transform:scale(1.08);

}

.major-content{

    position:relative;

    padding:55px 24px 24px;
}

.major-icon{

    width:78px;
    height:78px;

    border-radius:50%;

    background:#fff;

    display:flex;
    align-items:center;
    justify-content:center;

    position:absolute;

    left:24px;
    top:-38px;

    box-shadow:0 8px 25px rgba(0,0,0,.15);
}

.icon-image{

    width:42px;
    height:42px;

    object-fit:contain;
}

.major-content h3{

    font-size:28px;

    margin-bottom:14px;

    font-weight:700;

    color:#111;
}

.major-content p{

    color:#666;

    line-height:1.8;

    margin-bottom:25px;

    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;

    overflow:hidden;
}

.major-link{

    color:#0D47A1;

    font-weight:700;

    display:inline-flex;

    align-items:center;

    gap:8px;
}

.major-card:hover .major-link{

    gap:12px;

}