body{
    font-family:Arial, Helvetica, sans-serif;
    color:#333;
}

/* FACULTY LIST PAGE */

.faculty-page-section{
    padding:90px 0;
    background:#f8f6f6;
}

.faculty-page-header{
    text-align:center;
    max-width:780px;
    margin:0 auto 50px;
}

.faculty-page-header span{
    color:#710014;
    font-size:14px;
    font-weight:800;
    letter-spacing:6px;
    text-transform:uppercase;
}

.faculty-page-header h1{
    font-size:52px;
    color:#111;
    margin:18px 0;
}

.faculty-page-header p{
    font-size:18px;
    line-height:1.8;
    color:#555;
}

.faculty-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:28px;
}

.faculty-card{
    background:#fff;
    border:1px solid rgba(113,0,20,0.12);
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 12px 30px rgba(0,0,0,0.07);
    transition:0.35s ease;
}

.faculty-card:hover{
    transform:translateY(-7px);
    box-shadow:0 22px 45px rgba(0,0,0,0.12);
}

.faculty-img-box{
    height:320px;
    overflow:hidden;
    background:#f1f1f1;
}

.faculty-img-box img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:top center;
    transition:0.5s ease;
}

.faculty-card:hover .faculty-img-box img{
    transform:scale(1.04);
}

.faculty-card-content{
    padding:24px 20px 26px;
    text-align:center;
}

.faculty-designation{
    display:inline-flex;
    align-items:center;
    gap:8px;

    color:#710014;
    background:#fff;
    border-left:4px solid #710014;

    padding:9px 14px;
    margin-bottom:16px;

    font-size:12px;
    font-weight:800;
    letter-spacing:0.3px;

    box-shadow:0 8px 20px rgba(113,0,20,0.10);
    position:relative;
    overflow:hidden;
}

.faculty-designation::before{
    
    font-family:"Font Awesome 6 Free";
    font-weight:400;
    color:#710014;
    font-size:13px;
}

.faculty-designation::after{
    content:"";
    position:absolute;
    top:0;
    left:-80%;
    width:60%;
    height:100%;
    background:linear-gradient(90deg, transparent, rgba(113,0,20,0.10), transparent);
    animation:designationShine 2.5s infinite;
}

@keyframes designationShine{
    0%{ left:-80%; }
    100%{ left:120%; }
}

.faculty-card{
    background:#ffffff;
    border:1px solid rgba(179,142,113,0.45);
    border-radius:26px;
    overflow:hidden;
    box-shadow:0 14px 35px rgba(22,22,22,0.08);
    transition:0.35s ease;
}

.faculty-card:hover{
    transform:translateY(-8px);
    border-color:#b38e71;
    box-shadow:0 24px 45px rgba(22,22,22,0.14);
}

.faculty-img-box{
    height:320px;
    overflow:hidden;
    background:#161616;
    position:relative;
}

.faculty-img-box::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(to top, rgba(22,22,22,0.28), transparent 45%);
    pointer-events:none;
}

.faculty-img-box img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:top center;
    transition:0.5s ease;
}

.faculty-card:hover .faculty-img-box img{
    transform:scale(1.04);
}

.faculty-card-content{
    padding:24px 20px 28px;
    text-align:center;
    background:linear-gradient(180deg,#ffffff 0%,#fbf8f6 100%);
}

.faculty-designation{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;

    color:#161616;
    background:#f7efe9;
    border-left:4px solid #b38e71;
    border-right:4px solid #710014;

    padding:9px 15px;
    margin-bottom:16px;

    font-size:12px;
    font-weight:800;
    letter-spacing:0.3px;

    box-shadow:0 8px 20px rgba(179,142,113,0.18);
    position:relative;
    overflow:hidden;
}

.faculty-designation i{
    color:#710014;
    font-size:13px;
}

.faculty-designation::after{
    content:"";
    position:absolute;
    top:0;
    left:-80%;
    width:60%;
    height:100%;
    background:linear-gradient(90deg, transparent, rgba(255,255,255,0.7), transparent);
    animation:designationShine 2.5s infinite;
}

@keyframes designationShine{
    0%{ left:-80%; }
    100%{ left:120%; }
}

.faculty-card-content h3{
    font-size:21px;
    color:#161616;
    margin-bottom:18px;
    line-height:1.3;
    min-height:55px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.faculty-card-content a{
    background:#161616;
    color:#ffffff;
    text-decoration:none;
    font-weight:800;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:12px 22px;
    border-radius:0 24px 0 24px;
    border:1px solid #b38e71;
    box-shadow:0 10px 22px rgba(22,22,22,0.18);
    transition:0.35s ease;
}

.faculty-card-content a:hover{
    background:#710014;
    color:#ffffff;
    transform:translateY(-3px);
    box-shadow:0 16px 30px rgba(113,0,20,0.28);
}

.faculty-card-content a i{
    color:#b38e71;
    transition:0.35s ease;
}

.faculty-card-content a:hover i{
    transform:translateX(5px);
    color:#ffffff;
}

/* FACULTY PROFILE PAGE */

.faculty-profile-section{
    padding:90px 0;
    background:#f8f6f6;
}

.faculty-profile-card{
    display:grid;
    grid-template-columns:380px 1fr;
    gap:50px;
    background:#710014;
    border-radius:36px;
    padding:50px;
    align-items:center;
}

.faculty-photo-box{
    background:#fff;
    border-radius:30px;
    padding:18px;
    box-shadow:0 20px 45px rgba(0,0,0,0.18);
}

.faculty-photo-box img{
    width:100%;
    height:430px;
    object-fit:cover;
    border-radius:24px;
}

.faculty-label{
    color:#fff;
    letter-spacing:6px;
    text-transform:uppercase;
    font-size:13px;
    font-weight:800;
}

.faculty-right h1{
    color:#fff;
    font-size:52px;
    margin:18px 0 8px;
}

.faculty-right h4{
    color:#f4d9df;
    font-size:22px;
    margin-bottom:18px;
}

.faculty-location{
    color:#fff;
    margin-bottom:25px;
}

.faculty-contact-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
}

.faculty-contact-grid div{
    background:rgba(255,255,255,0.12);
    color:#fff;
    padding:16px;
    border-radius:16px;
}

.faculty-contact-grid i{
    margin-right:10px;
}

.faculty-social{
    display:flex;
    gap:12px;
    margin-top:25px;
}

.faculty-social a{
    width:42px;
    height:42px;
    background:#fff;
    color:#710014;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
}

.faculty-details-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:24px;
    margin-top:35px;
}

.faculty-detail-card{
    background:#fff;
    border-radius:26px;
    padding:30px;
    box-shadow:0 14px 35px rgba(0,0,0,0.06);
}

.faculty-detail-card h3{
    color:#710014;
    font-size:24px;
    margin-bottom:18px;
}

.faculty-detail-card h3 i{
    margin-right:10px;
}

.faculty-detail-card p{
    color:#555;
    line-height:1.8;
}

.timeline-item{
    border-left:4px solid #710014;
    padding-left:18px;
    margin-bottom:18px;
}

.timeline-item strong{
    color:#111;
    font-size:18px;
}

.timeline-item span{
    color:#710014;
    font-weight:700;
}

.list-item{
    display:flex;
    gap:14px;
    margin-bottom:14px;
}

.list-item i{
    color:#710014;
    margin-top:6px;
}

.list-item span{
    color:#710014;
    font-weight:700;
}

.publication-item{
    border-bottom:1px solid #eee;
    padding-bottom:15px;
    margin-bottom:15px;
}

.publication-item span{
    background:#710014;
    color:#fff;
    padding:5px 12px;
    border-radius:20px;
    font-size:12px;
}

.publication-item h4{
    margin:12px 0 6px;
    color:#111;
}

.full-width{
    grid-column:1 / -1;
}

.faculty-links{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}

.faculty-links a{
    background:#f7f3f4;
    color:#710014;
    padding:14px 20px;
    border-radius:16px;
    text-decoration:none;
    font-weight:700;
}

/* RESPONSIVE */

@media(max-width:1200px){
    .faculty-grid{
        grid-template-columns:repeat(3,1fr);
    }

    .faculty-profile-card{
        grid-template-columns:320px 1fr;
        gap:35px;
        padding:40px;
    }

    .faculty-photo-box img{
        height:380px;
    }

    .faculty-right h1{
        font-size:42px;
    }
}

@media(max-width:992px){
    .faculty-profile-card{
        grid-template-columns:1fr;
        text-align:center;
    }

    .faculty-photo-box{
        max-width:360px;
        margin:0 auto;
    }

    .faculty-contact-grid{
        grid-template-columns:1fr 1fr;
    }

    .faculty-social{
        justify-content:center;
    }

    .faculty-details-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:900px){
    .faculty-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .faculty-page-header h1{
        font-size:40px;
    }
}

@media(max-width:576px){
    .faculty-page-section,
    .faculty-profile-section{
        padding:55px 0;
    }

    .faculty-grid{
        grid-template-columns:1fr;
    }

    .faculty-img-box{
        height:360px;
    }

    .faculty-page-header h1{
        font-size:34px;
    }

    .faculty-page-header p{
        font-size:16px;
    }

    .faculty-profile-card{
        padding:25px;
        border-radius:24px;
    }

    .faculty-photo-box{
        padding:10px;
        border-radius:22px;
    }

    .faculty-photo-box img{
        height:300px;
        border-radius:18px;
    }

    .faculty-label{
        letter-spacing:3px;
        font-size:11px;
    }

    .faculty-right h1{
        font-size:30px;
    }

    .faculty-right h4{
        font-size:18px;
    }

    .faculty-contact-grid{
        grid-template-columns:1fr;
    }

    .faculty-detail-card{
        padding:22px;
        border-radius:20px;
    }

    .faculty-detail-card h3{
        font-size:20px;
    }

    .faculty-links{
        flex-direction:column;
    }

    .faculty-links a{
        width:100%;
    }

    .faculty-designation{
        font-size:10px;
        max-width:90%;
    }
}

/*==========================================
  Visiting Faculty CTA
==========================================*/

.visiting-faculty-section{
    padding:90px 0;
    background:#f8f5f2;
}

.visiting-box{
    position:relative;
    overflow:hidden;
    background:linear-gradient(135deg,#9a1a33 0%, #710014 100%);
    border-radius:24px;
    padding:70px 60px;
    text-align:center;
    box-shadow:0 20px 45px rgba(0,0,0,.12);
}

/* Decorative circles */

.visiting-box::before{
    content:"";
    position:absolute;
    width:320px;
    height:320px;
    background:rgba(255,255,255,.05);
    border-radius:50%;
    top:-170px;
    right:-120px;
}

.visiting-box::after{
    content:"";
    position:absolute;
    width:220px;
    height:220px;
    background:rgba(255,255,255,.04);
    border-radius:50%;
    bottom:-110px;
    left:-70px;
}

/* Small Tag */

.visiting-tag{
    display:inline-block;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.18);
    color:#f2ebe4;
    padding:8px 20px;
    border-radius:30px;
    font-size:13px;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
    margin-bottom:18px;
}

/* Heading */

.visiting-box h2{
    color:#ffffff;
    font-family:"Playfair Display",serif;
    font-size:48px;
    font-weight:700;
    line-height:1.2;
    margin:0 0 20px;
}

/* Paragraph */

.visiting-box p{
    max-width:760px;
    margin:0 auto 35px;
    color:rgba(255,255,255,.88);
    font-size:18px;
    line-height:1.9;
}

/* Button */

.visit-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:15px 34px;
    background:#b38e71;
    color:#ffffff;
    text-decoration:none;
    border-radius:50px;
    font-size:16px;
    font-weight:700;
    transition:.35s ease;
}

.visit-btn i{
    transition:.3s;
}

.visit-btn:hover{
    background:#ffffff;
    color:#9a1a33;
    transform:translateY(-4px);
    box-shadow:0 10px 25px rgba(0,0,0,.18);
}

.visit-btn:hover i{
    transform:translateX(5px);
}

/* Responsive */

@media(max-width:991px){

    .visiting-box{
        padding:55px 35px;
    }

    .visiting-box h2{
        font-size:38px;
    }

    .visiting-box p{
        font-size:17px;
    }

}

@media(max-width:767px){

    .visiting-faculty-section{
        padding:60px 0;
    }

    .visiting-box{
        padding:45px 25px;
        border-radius:18px;
    }

    .visiting-box h2{
        font-size:30px;
    }

    .visiting-box p{
        font-size:15px;
        line-height:1.8;
    }

    .visit-btn{
        width:100%;
        justify-content:center;
        padding:14px 20px;
    }

}