:root {
  --baylor-green: #154734;
  --light-green: #e6efe9;
  --text-dark: #222;
}

body {
  font-family: Arial, Helvetica, sans-serif;
  margin: 0;
  padding: 0;
  line-height: 1.6;
  color: var(--text-dark);
  background: #ffffff;
}

header {
  background: var(--baylor-green);
  color: white;
  padding: 2.75rem 1.5rem;
  text-align: center;
}

header h1 {
  margin-bottom: 0.5rem;
  letter-spacing: 0.5px;
}

nav {
  background: var(--light-green);
  padding: 0.75rem;
  text-align: center;
}

nav a {
  margin: 0 1rem;
  text-decoration: none;
  color: var(--baylor-green);
  font-weight: bold;
}

section {
  max-width: 1000px;
  margin: 2.75rem auto;
  padding: 0 1.5rem;
}

h2 {
  border-bottom: 2px solid var(--baylor-green);
  padding-bottom: 0.5rem;
  color: var(--baylor-green);
}

a {
color: var(--baylor-green);
}

.ug-callout {
  background: var(--light-green);
  padding: 1.5rem;
  border-radius: 6px;
  border-left: 6px solid var(--baylor-green);
}

.ug-callout h2 {
  margin-top: 0;
}

.ug-link {
  display: inline-block;
  margin-top: 0.75rem;
  font-weight: bold;
  text-decoration: none;
  color: var(--baylor-green);
}

.ug-link:hover {
  text-decoration: underline;
}

.card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1.25rem;
  margin-top: 1rem;
}

.card {
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 1rem;
  background: #fafafa;
  text-align: center;
}

.card img {
  width: 100%;
  height: auto;
  border-radius: 6px;
  margin-bottom: 0.75rem;
  object-fit: cover;
}

.pi-wrapper {
  max-width: 320px;
  margin: 1.5rem auto 2rem auto;
}

.pi-card {
  grid-column: 1 / -1; /* spans all columns */
  text-align: center;
  border: 2px solid var(--baylor-green);
  background: #ffffff;
}

/* Only PI photo spacing */
.pi-card img {
  width: 100%;
  height: auto;
  border-radius: 6px;
  margin-bottom: 0; /* remove extra space below image */
  object-fit: cover;
}

.pi-card .photo-credit {
  font-size: 0.5rem;
  color: #555; 
  text-align: right;
  font-style: italic;
  margin: 0.0rem 0 0.4rem 0;
}


.badge {
  display: inline-block;
  font-size: 0.7rem;
  font-weight: bold;
  text-transform: uppercase;
  padding: 0.25rem 0.6rem;
  border-radius: 4px;
  margin-top: 0.6rem; /* space from name/department */
  text-align: center;
}

/* Role colors */
.badge.phd {
  background: var(--baylor-green);
  color: white;
}

.badge.undergrad {
  background: #d6e5dd;
  color: var(--baylor-green);
}

.badge.pi {
  background: #ffffff;
  color: var(--baylor-green);
  border: 1px solid var(--baylor-green);
}

/* Ensure centered in card */
.card .badge {
  margin-left: auto;
  margin-right: auto;
}

.alumni-dropdown {
  margin-bottom: 1rem;
}

.alumni-toggle {
  width: 100%;
  text-align: left;
  background: var(--light-green);     /* light green background */
  color: var(--baylor-green);         /* text in Baylor green */
  border: 2px solid var(--baylor-green);
  padding: 0.5rem 1rem;
  font-size: 1rem;
  cursor: pointer;
  border-radius: 4px;
  font-weight: bold;
  display: flex;
  justify-content: space-between;     /* arrow on right */
  align-items: center;
  transition: background 0.2s;
}

.alumni-toggle:hover {
  background: #d6e5dd;                /* slightly darker on hover */
}

.alumni-toggle::after {
  content: '▼';                        /* arrow initially */
  color: var(--baylor-green);
  margin-left: 0.5rem;
  transition: transform 0.2s;
}

/* When dropdown is active, rotate the arrow */
.alumni-dropdown.active .alumni-toggle::after {
  transform: rotate(-180deg);          /* points up when open */
}

.alumni-list {
  list-style: disc;
  margin-left: 1.5rem;
  margin-top: 0.5rem;
  display: none;
}

.alumni-dropdown.active .alumni-list {
  display: block;
}


h4 {
  margin-top: 1.25rem;
  color: var(--baylor-green);
}


.pub {
  margin-bottom: 1rem;
}

/* .news-item {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  margin-bottom: 0.75rem;
}

.news-icon {
  width: 18px;
  height: 18px;
  fill: var(--baylor-green);
  margin-top: 0.15rem;
  flex-shrink: 0;
}

.news-archive summary {
  cursor: pointer;
  color: var(--baylor-green);
  font-weight: bold;
  margin: 1rem 0 0.5rem 0;
}

.news-archive summary::marker {
  color: var(--baylor-green);
} */

#news details {
  margin-bottom: 1.25rem;
}

#news summary {
  font-weight: bold;
  color: var(--baylor-green);
  cursor: pointer;
  margin-bottom: 0.5rem;
}

.news-item {
  display: flex;
  gap: 0.6rem;
  margin: 0.5rem 0;
}

.news-icon {
  width: 18px;
  height: 18px;
  fill: var(--baylor-green);
  flex-shrink: 0;
  margin-top: 0.2rem;
}


.contact-box {
  background: var(--light-green);
  padding: 1.25rem;
  border-radius: 6px;
  margin-top: 1rem;
}

footer {
  background: var(--baylor-green);
  color: white;
  text-align: center;
  padding: 1.75rem 1rem;
  margin-top: 3rem;
  font-size: 0.9rem;
}

.footer-links a {
  margin: 0 0.75rem;
  color: white;
  text-decoration: none;
  font-size: 1.4rem;
}


#resource-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1rem;
  margin-top: 1rem;
}

/* .resource-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1rem;
  border: 1px solid #ddd;
  border-radius: 6px;
  background: #fafafa;
  text-align: center;

  transition: transform 0.2s ease, box-shadow 0.2s ease;
} */

.resource-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* top content stays up, bottom content stays down */
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 1rem;
  background: #fafafa;
  text-align: center;
  min-height: 200px; /* uniform height for all cards */
}

.resource-card .top-content {
  flex-grow: 1; /* allows top content to fill available space */
}

.resource-card .bottom-content {
  margin-top: 1rem;
}

.resource-icon {
  margin-bottom: 0.5rem;
  color: var(--baylor-green);
}

.resource-content h3 {
  margin: 0 0 0.25rem 0;
  color: var(--baylor-green);
}

.first-year-badge {
  background: #f7df7d; /* lighter Baylor gold */
  color: #154734; /* Baylor green */
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.75rem;
  padding: 0.25rem 0.6rem;
  border-radius: 4px;
  display: inline-block;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

.resource-tags {
  margin-top: 0.5rem;
  /* display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
  justify-content: center; */
}

.tag {
  display: inline-block;
  font-size: 0.7rem;
  font-weight: bold;
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  margin: 0.2rem;
  color: white;
}

.resource-tags .tag {
  display: inline-block;
  font-size: 0.7rem;
  padding: 0.2rem 0.4rem;
  border-radius: 3px;
  background: #d6e5dd;
  color: var(--baylor-green);
}

.resource-card a {
  display: inline-block;
  margin-top: 0.5rem;
  font-weight: bold;
  text-decoration: none;
  color: var(--baylor-green);
}

.resource-card a:hover {
  text-decoration: underline;
}

.resource-card:hover {
  transform: scale(1.03); /* slightly enlarge */
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15); /* subtle shadow */
}
