*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    overflow-x:hidden;
}

.school-section{
    width:100%;
    min-height:550px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.wrapper{
    width:100%;
    max-width:100%;
    display:grid;
    grid-template-columns:440px 1fr;
    gap:80px;
    align-items:center;
}

/* LEFT */

.tabs{
    width:100%;
}

.tab-item{
    position:relative;
    padding:20px 0;
    border-bottom:1px solid #d9d9d9;
    cursor:pointer;
    transition:transform .35s ease;
}

.tab-item:hover{
    transform:translateX(10px);
}
.tab-title {
    font-family: georgia !important;
    font-size: 32px;
    line-height: 120%;
    font-weight: 400;
    color: #757575;
    transition: .3s;
}

.tab-item.active .tab-title{
    color:#d92b2b;
}

.tab-desc{
    color:#555;
    max-height:0;
    opacity:0;
    overflow:hidden;
    margin-top:0;
    transition:all .35s ease;
    font-family:"Open Sans", sans-serif;
    font-size:15px;
    line-height:160%;
}

.tab-item.active .tab-desc{
    max-height:300px;
    opacity:1;
    margin-top:15px;
}

.arrow{
    width:34px;
    height:34px;
    border:1px solid #d8d8d8;
    border-radius:50%;
    display:none;
    align-items:center;
    justify-content:center;
    margin-left:10px;
}

.tab-item:hover .arrow,
.tab-item.active .arrow{
    display:inline-flex;
}

span.arrow img{
    width:16px !important;
    margin-top:4px;
}

.tab-item ul{
    padding-left:20px;
}

/* RIGHT */

.image-wrap{
    position:relative;
    width:100%;
    height:450px;
    overflow:hidden;
    border-radius:8px;
}

.card{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border-radius:8px;
    overflow:hidden;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .35s ease;
}

.card.active{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    z-index:2;
}

.card img{
    display:block;
    width:100%;
    height:100% !important;
    object-fit:cover;
    object-position:center center;
}

.schools_overlay {
    position: absolute;
    inset: 0;
    /* background: linear-gradient(to top,rgba(0,0,0,.5),transparent 31%); */
    background: linear-gradient(to top, rgb(0 0 0 / 10%), rgba(0, 0, 0, 0)), radial-gradient(circle at bottom left, rgb(0 0 0 / 52%), #00000000 30%);
}

.card-content{
    position:absolute;
    left:40px;
    bottom:35px;
    color:#fff;
    z-index:3;
}

.card-content h3{
    margin-bottom:8px;
    font-family:"Open Sans", sans-serif;
    font-size:18px;
    font-weight:700;
    line-height:140%;
}

.card-content ul li{
    font-family:"Open Sans", sans-serif;
    font-size:18px;
    line-height:140%;
}

/* Tablet */

@media(max-width:1100px){

    .wrapper{
        display:flex;
        flex-direction:row;
        gap:40px;
    }

    .school-section{
        width:90%;
    }

    .tabs{
        width:45%;
    }

    .image-wrap{
        width:60%;
        height:420px;
    }

    .tab-title{
        font-size:26px;
    }

}

/* Mobile */

@media(max-width:767px){

    .wrapper{
        flex-direction:column-reverse;
    }

    .school-section{
        width:100%;
        padding:20px 0;
    }

    .tabs{
        width:100%;
    }

    .tab-item{
        padding:12px 0;
    }

    .tab-title{
        font-size:20px;
    }

    .tab-desc{
        font-size:13px;
        line-height:150%;
    }

    .image-wrap{
        width:92%;
        height:270px;
    }

    .card{
        height:270px;
    }

    .card-content{
        left:20px;
        bottom:20px;
    }

    .card-content h3,
    .card-content ul li{
        font-size:15px;
    }

}