/*
Theme Name: PGCME Theme
Version: 1.0
Description: Official PGCME theme
Author: Sleeksoft
Author URI: https://sleeksoft.in
template: bb-theme
*/

/* Add your custom styles here... */ 

.justify-text p {
    text-align: justify;
}

/* ==========================================
	RESPONSIVE FORM CSS
============================================ */
#pgcme-registration-form .initial-hide {
	display: none;
}

.sleek-form-container:not(.edit-profile-form) .institution_indian_location_details,
.sleek-form-container:not(.edit-profile-form) .indian_location_details {
    display: none;
}

#pgcme-registration-form input.form-control {
    height: 38px;
}

.sleek-form-container .select2 {
    max-width: 100%;
}
.sleek-form-container .select2-selection__rendered {
    line-height: 35px !important;
}
.sleek-form-container .select2-container .select2-selection--single {
    height: 38px !important;
    border: 1px solid #e6e6e6;
}
.sleek-form-container .select2-selection__arrow {
    height: 34px !important;
}

/*======================================================
            Activation page styles
=======================================================*/
.activation-wrapper {
    max-width: 1100px;
    margin: 0 auto;
    padding: 50px 0;
}
    .activation-wrapper .error-message,
    .activation-wrapper .success-message {
        position: relative;
        padding: 1rem 1rem;
        margin-bottom: 1rem;
        border: 0 solid transparent;
        border-radius: .25rem;
        margin: 20px;
    }
    .activation-wrapper .error-message {
        color: #862f10;
        background-color: #f9dcd1;
        border-color: #f6caba;
    }
    .activation-wrapper .success-message {
        color: #435e26;
        background-color: #e2ebd9;
        border-color: #d4e1c6;
    }
        .activation-wrapper .success-message a {
            color: #364b1e;
            font-weight: 600;
        }
    .activation-wrapper form {
        padding: 20px;
        background: #f1f1f1;
        border-radius: 5px;
    }
        .activation-wrapper form input {
            margin-bottom: 15px;
            border-radius: 5px;
        }
        .activation-wrapper form input[type="submit"] {
            background: #174274;
            color: #ffffff;
        }

/*======================================================
            AGENDA STYLES
=======================================================*/
/* Style the tab */
.agenda-container .tab-buttons {
    overflow: hidden;
    border: 1px solid #f1f1f1;
    background-color: #f1f1f1;
}

    /* Style the buttons inside the tab */
    .agenda-container .tab-buttons button {
        background-color: #e5e5e5;
        color: #333333;
        float: left;
        border: none;
        outline: none;
        cursor: pointer;
        padding: 14px 30px;
        transition: 0.3s;
        font-size: 17px;
        border-radius: 0;
    }

    /* Change background color of buttons on hover */
    .agenda-container .tab-buttons button:hover {
        background-color: #ddd;
    }

    /* Create an active/current tablink class */
    .agenda-container .tab-buttons button.active {
        background-color: #010f53;
        color: #ffffff;
    }

/* Style the tab content */
    .agenda-container a {
        text-decoration: none;
    }
    .agenda-container .program-item {
        padding: 20px;
        background-color: #f1f1f1;
        border-radius: 5px;
        margin-top: 20px;
    }
    /*.agenda-container .program-item.break {
        background-color: #010f53;
    }*/
        .agenda-container .program-item .seminar-title {
            font-size: 18px;
            font-weight: 400;
            color: #010f53;
        }
        /*.agenda-container .program-item.break .seminar-title {
            color: #ffffff;
            text-align: center;
        }*/
            .agenda-container .program-item .seminar-title span {
                color: #999999;
            }
            /*.agenda-container .program-item.break .seminar-title span {
                display: block;
            }*/
        .agenda-container .agenda-content,
        .agenda-container .speaker-list,
        .agenda-container .post-event-content {
            margin-top: 15px;
        }
        .agenda-container .speaker-item{
            margin-top: 15px;
        }
            .agenda-container .speaker-title {
                color: #c82121;
            }
        .agenda-container .post-event-content a {
            padding: 10px 15px;
            background: #999;
            margin-right: 10px;
            display: inline-block;
            border-radius: 3px;
            background-color: #880001;
            color: #ffffff;
            font-size: 15px;
            cursor: pointer;
        }

        .agenda-container .program-item.session-heading {
            text-align: center;
            background: #010f53;
            color: #ffffff;
        }
            .agenda-container .program-item.session-heading h3 {
                font-size: 20px;
                color: #C82121;
                margin-bottom: 5px;
            }

            .agenda-container .program-item.session-heading p {
                margin-bottom: 0;
                color: #ffffff; 
            }
@media only screen and (max-width: 768px) {
    .agenda-container .post-event-content a {
        margin-top: 10px;
    }
}

/*======================================================
            AGENDA STYLES - FACULTY SINGLE
=======================================================*/
.single-faculty .program-item {
    padding: 20px;
    background-color: #f1f1f1;
    border-radius: 5px;
    margin-top: 20px;
}
    .single-faculty .program-item .seminar-title {
            font-size: 20px;
            font-weight: 600;
            color: #010f53;
        }
        .single-faculty .program-item.break .seminar-title {
            color: #ffffff;
            text-align: center;
        }
            .single-faculty .program-item .seminar-title span {
                color: #999999;
            }
            .single-faculty .program-item.break .seminar-title span {
                display: block;
            }
.single-faculty h4.day-label:not(:first-child) {
    margin-top: 30px;
}

/*======================================================
            DIALOG CSS
=======================================================*/
/* Basic styles for the dialog */
dialog {
    padding: 0;
    width: 100%;
    max-width: 800px;
    min-height: 450px;
    border: 0;
    border-radius: 5px;
    background: rgba(3,3,3,0);
}
    dialog::backdrop {
        background: rgba(0, 0, 0, 0.75);
    }
    .close-dialog{
        padding: 10px;
        text-align: right;
    }
        .close-dialog span {
            color: #ffffff;
            font-weight: 400;
            cursor: pointer;
        }

/*======================================================
            FANCYBOX SLIDER CSS
=======================================================*/
/* Gallery Container */
.pgcme-gallery-slider {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    grid-auto-flow: dense; /* Fills in empty gaps efficiently */
}

    /* Gallery Items */
    .pgcme-gallery-slider a {
        display: block;
        position: relative;
        overflow: hidden;
        border-radius: 5px;
    }

    /* Dynamically Sized Images */
    .pgcme-gallery-slider img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transition: transform 0.3s ease;
    }

    /* Dynamically Adjust Grid Spans */
    .pgcme-gallery-slider a.wide {
        grid-column: span 2; /* Landscape images span 2 columns */
    }
    .pgcme-gallery-slider a.tall {
        grid-row: span 2; /* Portrait images span 2 rows */
    }

    /* Hover Effect */
    .pgcme-gallery-slider img:hover {
        transform: scale(1.05);
    }

/*======================================================
    ACF Form STYLES
=======================================================*/
.faculty-form-wrapper {
        padding: 20px;
        background: #f1f1f1;
    }
        .faculty-form-wrapper .acf-form-submit {
            text-align: center;
            margin-top: 30px;
        }
        .faculty-form-wrapper .acf-form-submit .acf-button {
            color: #ffffff;
            background: #073970;
            border-radius: 3px;
            padding: 10px 20px;
        }
    .faculty-form-wrapper .acf-fields > .acf-field {
        border-top-color: #d4d4d4;
    }
    .faculty-form-wrapper div.success-message{
        color: #435e26;
        background-color: #e2ebd9;
        border-color: #d4e1c6;
        padding: 20px 20px 1px 20px;
        margin: 0 15px;
        border-radius: 5px;
    }
    .faculty-form-wrapper div#author-info {
        padding: 20px;
        margin: 15px;
        border: 1px solid #999999;
    }

   .faculty-form-wrapper a.acf-button.acf-repeater-add-row.button.button-primary {
        padding: 5px 10px;
        background: #073970;
        margin-bottom: 10px;
        border-radius: 5px;
        color: #ffffff;
        float: left;
        font-size: 14px;
    }

/*======================================================
    HOME PAGE FLOATING MENU
=======================================================*/
.floating-section-menu {
    position: fixed;
    top: 50%;
    /*left: 0;*/
    left: -230px;
    transform: translateY(-50%);
    z-index: 9999;
    background: #e5e5e5;
    padding: 20px 15px;
    border-radius: 0 12px 12px 0;
    box-shadow: 3px 3px 15px rgba(0, 0, 0, 0.15);
    width: 250px;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    transition: left 0.3s ease;
}
    .floating-section-menu.open {
        left: 0;
    }

.floating-section-menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.floating-section-menu a {
    display: block;
    background: #880001;
    color: #ffffff;
    text-decoration: none;
    padding: 12px 16px;
    border-radius: 8px;
    font-weight: 600;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    text-align: center;
    transition: all 0.25s ease;
    font-size: 16px;
}

.floating-section-menu a:hover,
.floating-section-menu a.active {
    background-color: #010f53;
    color: #ffffff;
    transform: translateX(3px);
}

/* Toggle button inside menu */
.floating-menu-toggle {
    display: block;
    position: absolute;
    top: 50%;
    right: -20px;
    transform: translateY(-50%);
    background: #010f53;
    color: #ffffff;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    text-align: center;
    line-height: 40px;
    font-size: 20px;
    cursor: pointer;
    box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.3);
}


/* Mobile-specific styles */
/*@media (max-width: 767px) {
    .floating-section-menu {
        left: -230px;
    }

    .floating-section-menu.open {
        left: 0;
    }

    .floating-menu-toggle {
        display: block;
    }
}*/

/*======================================================
    SPONSORS SHORTCODE
=======================================================*/
.sponsors-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: flex-start;
}

    .sponsors-grid #sponsor-2661{
        background-color: #e5e5e5;
    }

.sponsor-card {
    background-color: #f8f9fa;
    padding: 30px 20px;
    border-radius: 8px;
    text-align: center;
    width: calc(25% - 20px); /* 3 cards per row with spacing */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.sponsor-logo {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
}
    img.sponsor-logo {
        width: 250px !important;
    }

.sponsor-links {
    display: flex;
    justify-content: center;
    gap: 20px;
    font-size: 25px;
    margin-top: 20px;
}
    .sponsor-links a {
        color: #010f53;
    }

.sponsor-links i:hover {
    color: #880001;
}

/* Responsive Styles */
@media (max-width: 1200px) {
    .sponsor-card {
        width: calc(33.33% - 20px); /* 2 cards per row with spacing */
    }
}
@media (max-width: 992px) {
    .sponsor-card {
        width: calc(50% - 20px); /* 2 cards per row with spacing */
    }
}
@media (max-width: 768px) {
    .sponsor-card {
        width: 100%; /* Only one card per row */
    }
}

/*================================================================
        FACULTY LIST CSS
==================================================================*/
.faculty-wrapper {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    flex-wrap: wrap; /* allows wrapping in smaller screens */
    padding: 20px 0;
    border-bottom: 1px solid #e5e5e5;
}

    .faculty-image-wrapper img {
        max-width: 200px;
        height: auto;
    }

.faculty-image-wrapper {
    flex-shrink: 0; /* prevent image from shrinking */
    max-width: 100%;
}

.faculty-details {
    flex: 1;
    min-width: 250px;
}

.faculty-social-icons a {
    font-size: 25px;
    margin-right: 10px;
}

/* Optional: Make the layout stack vertically on smaller screens */
@media (max-width: 768px) {
    .faculty-wrapper {
        flex-direction: column;
    }
}