/* 
directory.css
For use on ufv.ca/directory only
Anthony 25.27.25
*/

.search-results-advanced {
    display: block; /* Removes grid or flex layout */
}

/* FIXED: Removed conflicting display: block that was breaking flexbox */
.staff-card {
    width: 100% !important; /* Ensures each card takes full width */
    border: 1px solid #ccc !important;
    padding: 10px 20px 10px 30px; 
    background-color: #fff;
    /* Removed display: block - this was conflicting with flexbox */
}

.searchoptions-generic .search-form-container__input-search {
    border: 1px solid #00703c;
}

.btn-see-more {
    background: #00703c;
    padding: 12px;
    padding-right: 30px !important;
    margin-top: 10px;
    margin-bottom: 20px !important;
    border-top-left-radius: 6px;
    border-bottom-right-radius: 6px;
}

legend {
    text-transform: uppercase !important;
}

#checkboxes-campus legend, 
#checkboxes-department legend {
    font-size: 18px !important;
    font-weight: 400 !important;
    color: #333 !important;
}

.checkbox label {
    margin-bottom: 15px !important;
    font-size: 14px !important;
}

.staff-card svg {
    color: #00703c !important;
    fill: #00703c !important;
    min-width: 20px !important;
}

.staff-card .card-heading {
    font-size: 24px !important;
    margin: 0px 0px 5px 0px;
}

.staff-card {
    border-bottom: none;
}

.pagination a {
    background-color: #00703c !important;
    border: 0px solid #ccc !important;
}

#search-results .pagination-box .pagination .currentpage {
    border: 1px solid #ccc;   
}

/* CLEANED UP: Removed duplicate font-size declarations */
.staff-card .card-department p {
    font-size: 16px;
    letter-spacing: -0.2px;
    font-family: 'Open Sans', sans-serif;
}

.checkbox {
    margin-left: 0px !important;
}

.staff-search-widget fieldset {
    border: none;
    padding: 0px !important;
    margin: 0px !important;
}

.staff-card--advanced {
    margin: 0px !important;
    margin-top: 20px !important;
    color: #333;
}

.staff-filter__title > span::before, .course-filter__title > span::before {
    background-color: #999;
    bottom: -1rem;
    height: 1px;
}

.staff-directory .button-list button.selected {
    background-color: #00703c;
    border: none !important;
}

.staff-directory .button-list button {
    border: 1px solid #999;
}

.staff-directory .button-list button:hover {
    background-color: #00703c;
    color: white;
}

.course-filter__title span {
    font-size: 16px;
    font-weight: 500;
}

.staff-directory, 
.main-header-marketing {
    background-color: #fafafa !important;
}

.searchoptions-generic .search-form-container__input-search {
    color: #355458 !important;
    font-size: 1.5rem;
    font-weight: 600;
    width: 100%;
    height: unset;
    padding: 15px !important;
}

.searchoptions-generic .search-form-container__button > svg {
    fill: #00703c;
    -webkit-transform: scale(0.8);
    transform: scale(0.7);
}

.staff-card .card-heading {
    font-size: 2.5rem !important;
    font-weight: 600;
    line-height: 2.5;
    word-break: break-word;
    margin-bottom: 0;
    display: block;
    letter-spacing: -0.5px;
}

#search-results .staff-card a {
    color: #000;
}

.staff-card--advanced {
    width: calc(50% - 0.5rem / 2);
}

.inner__sidebar {
    border: none !important;
}

.search-results-advanced {
    padding: 0px !important;
    margin: 0px !important;
}

.single-padding-divider {
    padding: 0px 10px 0px 10px !important;
}

.staff hr {
    display: none;
}

.order-lg-1 {
    padding: 0px !important;
}

.general-content {
    padding: 0px !important;
    margin: 0px !important;
}

.boxed, .breadcrumb {
    background: inherit !important;
}

/* Styles ONLY for the profile page */
.staff__profile {
    padding: 0px !important;
    background: inherit !important;
}

.staff__profile h1,
.staff__profile h2,
.staff__profile h3, 
.staff__profile h4,
.staff__profile h5,
.staff__profile h6,
.staff h2,
.staff h3,
.staff h4,
.staff h5,
.staff h6 {    
    text-transform: unset; 
    margin-bottom: 30px;
}

.staff {
    margin-bottom: 100px;
}

.staff__contact-info,
.staff__title {
    padding: 0px !important;
    margin: 0px !important;
}

.staff__profile {    
    padding: 20px !important;
    margin: 0px !important;   
}

.staff .row {
    width: 70%;
    margin: auto;
    padding: 30px; /* Consolidated duplicate rule */
    background: #fff !important;
    border-radius: 5px; 
}

.staff-directory {
    background: #ebebeb !important;
}

/* directory-profile.css reset */
.staff h2,
.staff h3,
.staff h4,
.staff h5,
p.staff__role,
h1.staff__title {
    font-weight: 500 !important;
    font-style: normal !important;
    font-size: 20px !important;
    margin: 10px 0px 10px 0px;   
    padding: 0px;
}

h1.staff__title {
    font-weight: 500 !important;
    font-style: normal !important;
    font-size: 20px !important;
    margin: 0px 0px 5px 0px !important;   
    padding: 0px;
}

p.staff__role {
    font-weight: 400 !important; 
    font-size: 17px !important;
}

.staff__contact-info a {
    font-weight: 600;
    padding: 5px; 
}

.staff__profile {
    padding: 0px !important;
    margin: 0px !important;
}

/* headings hierarchy */
.staff h1 { font-size: 26px !important; }
.staff h2 { font-size: 22px !important; }
.staff h3 { font-size: 20px !important; }
.staff h4 { font-size: 19px !important; }
.staff h5 { font-size: 18px !important; }

.staff h1::before,
.staff h2::before,
.staff h3::before,
.staff h4::before,
.staff h5::before,
.staff h6::before {
    color: #666;
    font-weight: normal;
    font-size: 0.5em;
}

/* FLEXBOX LAYOUT - Desktop */
.t4-department-profile-listing .staff-card,
.staff-directory-advanced .staff-card {
    display: flex;
    flex-direction: row-reverse; /* Image goes right */
    gap: 20px;
  padding: 10px 20px 10px 30px;
}

.t4-department-profile-listing .card-person,
.staff-directory-advanced .card-person {
    flex-shrink: 0;
    width: 150px; /* Fixed width for image */
}

.t4-department-profile-listing .card-content,
.staff-directory-advanced .card-content {
    flex: 1; /* Content takes remaining space */
}

.t4-department-profile-listing .staff-card--advanced .card-person img,
.staff-directory-advanced .staff-card--advanced .card-person img{
	width: 180px;
	height: 180px;
	object-fit: cover;
	display: block;
	margin: 0 auto;
	height: 100% !important;
	width: 100% !important;
	clip-path: none;
}



.t4-department-profile-listing .staff-profile-info,
.staff-directory-advanced .staff-profile-info{
    padding-top: 0px !important;
}

.t4-department-profile-listing .staff-profile-details,
.staff-directory-advanced .staff-profile-details{
    padding-bottom: 0px !important;
}


.t4-department-profile-listing .staff-card--advanced .card-person img,
.staff-directory-advanced .staff-card--advanced .card-person img{
	width: 180px;
	/* height: 180px; */
	object-fit: cover;
	/* clip-path: circle(50%); */
	display: block;
	margin: 0 auto;
	border-radius: 15px;
	margin-top: 10px;
	padding: 10px;
}



/* IMPROVED MOBILE RESPONSIVE */
@media (max-width: 768px) {
    .t4-department-profile-listing .staff-card,
  .staff-directory-advanced .staff-card{
        flex-direction: column !important;
        align-items: center;
        text-align: center;
        gap: 15px;
    }
    
    .t4-department-profile-listing .card-person,
  .staff-directory-advanced .card-person{
      width: 120px !important;
      order: -1;
      display: block !important;
      width: 100% !important;
      height: 100% !important;
    }


    
    .t4-department-profile-listing .staff-card--advanced .card-person img,
  .staff-directory-advanced .staff-card--advanced .card-person img{
        width: 120px !important;
        height: 120px !important;
        margin: 10px auto !important;
        display: block !important;
        object-fit: cover !important;
        clip-path: circle(50%) !important;
    }
  
  .t4-department-profile-listing .staff .row,
  .staff-directory-advanced .staff .row{
	width: 95%;
	margin: auto;
	padding: 20px;
	background: #fff !important;
	border-radius: 5px;
	/* margin-top: 20px; */
}
    
    .t4-department-profile-listing .card-content,
  .staff-directory-advanced .card-content{
        width: 100%;
        text-align: left;
    }
    
    .t4-department-profile-listing .staff-card .card-heading,
  .staff-directory-advanced .staff-card .card-heading{
        font-size: 1.8rem !important;
        text-align: left;
        margin-bottom: 10px;
    }
    
    .t4-department-profile-listing .card-body,
  .staff-directory-advanced .card-body{
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
    
    .t4-department-profile-listing .card-department,
    .t4-department-profile-listing .card-email,
  .staff-directory-advanced .card-department,
  .staff-directory-advanced .card-email{
        justify-content: flex-start;
        text-align: left;
    }
}

/* Extra small devices */
@media (max-width: 480px) {
    .t4-department-profile-listing .staff-card,
  .staff-directory-advanced .staff-card{
        padding: 15px !important;
        gap: 10px;
    }
    
    .t4-department-profile-listing .card-person,
  .staff-directory-advanced .card-person{
        width: 100px !important;
    }
    
    .t4-department-profile-listing .staff-card--advanced .card-person img,
  .staff-directory-advanced .staff-card--advanced .card-person img{
        width: 100px !important;
        height: 100px !important;
        margin: 5px auto !important;
    }
    
    .t4-department-profile-listing .staff-card .card-heading,
  .staff-directory-advanced .staff-card .card-heading{
        font-size: 1.5rem !important;
    }
    
    .t4-department-profile-listing .card-department p,
    .t4-department-profile-listing .card-email a,
  .staff-directory-advanced .card-department p,
  .staff-directory-advanced .card-email a{
        font-size: 14px !important;
    }
}





