/**
 * Partner institutions & mentors showcase — elite presentation
 */
.partners-list {
  display: flex;
  flex-direction: column;
  gap: var(--app-space-md);
}
.partner-card {
  display: block;
  text-decoration: none;
  color: inherit;
  background: var(--app-surface);
  border: 1px solid var(--app-border);
  border-radius: var(--app-radius-lg);
  padding: var(--app-space-md);
  box-shadow: var(--app-shadow);
  transition: border-color var(--app-duration-fast), box-shadow var(--app-duration-fast);
}
.partner-card:hover {
  border-color: var(--app-primary);
  box-shadow: var(--app-shadow-card);
}
.partner-card-header {
  display: flex;
  align-items: flex-start;
  gap: var(--app-space-md);
  margin-bottom: var(--app-space-sm);
}
.partner-logo {
  width: 56px;
  height: 56px;
  border-radius: var(--app-radius-md);
  background: var(--app-gradient-primary);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1.1rem;
  flex-shrink: 0;
}
.partner-card-title {
  font-size: 1.1rem;
  font-weight: 700;
  margin: 0 0 2px;
  color: var(--app-text);
}
.partner-card-tagline {
  font-size: var(--app-text-sm);
  color: var(--app-text-secondary);
  margin: 0;
}
.partner-card-desc {
  font-size: var(--app-text-sm);
  color: var(--app-text-secondary);
  margin: 0;
  line-height: 1.4;
}
.partner-card-cta {
  margin-top: var(--app-space-sm);
  font-size: var(--app-text-sm);
  font-weight: 600;
  color: var(--app-primary);
}
.partner-card-cta::after {
  content: ' →';
}

/* Institution profile page */
.profile-hero {
  text-align: center;
  padding: var(--app-space-lg) 0;
  margin-bottom: var(--app-space-md);
}
.profile-hero .partner-logo {
  width: 80px;
  height: 80px;
  font-size: 1.5rem;
  margin: 0 auto var(--app-space-sm);
}
.profile-hero .partner-card-title {
  font-size: 1.35rem;
}
.profile-section {
  margin-bottom: var(--app-space-xl);
}
.profile-section-title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--app-text);
  margin: 0 0 var(--app-space-sm);
  padding-bottom: 6px;
  border-bottom: 2px solid var(--app-primary-soft);
}
.profile-detail-grid {
  display: grid;
  gap: var(--app-space-sm);
  font-size: var(--app-text-sm);
}
.profile-detail-grid dt {
  font-weight: 600;
  color: var(--app-text-secondary);
}
.profile-detail-grid dd {
  margin: 0;
  color: var(--app-text);
}
.profile-highlights {
  list-style: none;
  padding: 0;
  margin: 0;
}
.profile-highlights li {
  padding: var(--app-space-xs) 0;
  padding-left: 1.25rem;
  position: relative;
  font-size: var(--app-text-sm);
}
.profile-highlights li::before {
  content: '✓';
  position: absolute;
  left: 0;
  color: var(--app-success);
  font-weight: 700;
}
.profile-students-grid {
  display: grid;
  gap: var(--app-space-sm);
}
.student-badge {
  display: flex;
  align-items: center;
  gap: var(--app-space-sm);
  padding: var(--app-space-sm) var(--app-space-md);
  background: var(--app-bg);
  border-radius: var(--app-radius-md);
  border: 1px solid var(--app-border-soft);
  font-size: var(--app-text-sm);
}
.student-badge strong { color: var(--app-text); }
.student-badge span { color: var(--app-text-secondary); }
.profile-contact {
  display: flex;
  flex-wrap: wrap;
  gap: var(--app-space-md);
  margin-top: var(--app-space-sm);
}
.profile-contact a {
  color: var(--app-primary);
  text-decoration: none;
  font-weight: 600;
  font-size: var(--app-text-sm);
}
.profile-contact a:hover { text-decoration: underline; }

/* Mentor profile */
.mentor-hero {
  display: flex;
  align-items: flex-start;
  gap: var(--app-space-lg);
  margin-bottom: var(--app-space-lg);
  flex-wrap: wrap;
}
.mentor-avatar {
  width: 96px;
  height: 96px;
  border-radius: 50%;
  background: var(--app-gradient-primary);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 2rem;
  flex-shrink: 0;
}
.mentor-hero-text h1 { font-size: 1.35rem; margin: 0 0 4px; }
.mentor-hero-text .mentor-badge {
  display: inline-block;
  font-size: 0.7rem;
  font-weight: 600;
  color: var(--app-success);
  background: var(--app-success-soft);
  padding: 2px 8px;
  border-radius: var(--app-radius-full);
  margin-bottom: 8px;
}
.mentor-rates {
  display: flex;
  flex-wrap: wrap;
  gap: var(--app-space-md);
  margin-top: var(--app-space-sm);
  font-size: var(--app-text-sm);
}
.mentor-rates span { font-weight: 600; color: var(--app-text); }

/* Mentor type tabs (All / Accountability) */
.mentor-type-tabs {
  display: flex;
  gap: 0;
  margin-bottom: 20px;
  background: var(--app-surface);
  border: 1px solid var(--app-border);
  border-radius: var(--app-radius-md);
  padding: 4px;
}
.mentor-type-tab {
  flex: 1;
  padding: 10px 14px;
  font-size: var(--app-text-sm);
  font-weight: 600;
  color: var(--app-text-secondary);
  background: transparent;
  border: none;
  border-radius: var(--app-radius-sm);
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.mentor-type-tab:hover { color: var(--app-text); }
.mentor-type-tab.active {
  background: var(--app-primary);
  color: #fff;
}
.mentor-badge-accountability {
  display: inline-block;
  font-size: 0.7rem;
  font-weight: 600;
  color: var(--app-primary);
  background: var(--app-primary-soft);
  padding: 3px 8px;
  border-radius: var(--app-radius-full);
  margin-left: 6px;
}
