body {
  font-size: 18px;
}

h1, h2, h3 {
  color: #2c3e50;
}

.navbar {
  font-size: 18px;
}

img {
  border-radius: 10px;
}

.contact-icons {
  display: flex;
  justify-content: center;
  gap: 14px;
  margin-top: 8px;
}

.contact-icons a img {
  transition: transform 0.15s ease;
}

.contact-icons a img:hover {
  transform: scale(1.15);
}

.profile-card {
  text-align: center;
}

.profile-card h4,
.profile-card h5 {
  margin-top: 6px;
  margin-bottom: 6px;
}


.talk-card {
  border-left: 4px solid #2c3e50;
  padding: 15px 20px;
  margin-bottom: 20px;
  background-color: #fafafa;
  border-radius: 8px;
}

.talk-conference {
  font-weight: 600;
  font-size: 1.1em;
}

.talk-date {
  color: #666;
  margin-bottom: 8px;
}

.talk-title {
  font-style: italic;
  margin-top: 8px;
  margin-bottom: 8px;
}

.talk-authors {
  margin-top: 8px;
}

/* Talk type badges */

.talk-badge {
  display: inline-block;
  padding: 3px 10px;
  margin-top: 8px;
  margin-right: 8px;
  border-radius: 12px;
  font-size: 0.85em;
  font-weight: 500;
}

.talk-contributed {
  background-color: #eef2f7;
  color: #2c3e50;
}

.talk-invited {
  background-color: #dbeafe;
  color: #1d4ed8;
}

/* Awards */

.talk-award {
  display: inline-block;
  padding: 3px 10px;
  margin-top: 8px;
  border-radius: 12px;
  font-size: 0.85em;
  font-weight: 500;
  background-color: #fff7d6;
  color: #8a6d00;
}

/* ---------- Desktop default (keep 2 columns) ---------- */
.profile-layout {
  align-items: flex-start;
}

/* ---------- Mobile view ---------- */
@media screen and (max-width: 768px) {

  .profile-layout {
    display: flex !important;
    flex-direction: column !important;
  }

  .profile-layout .column {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Make profile image smaller on mobile */
  .profile-layout img {
    width: 60% !important;
    margin: 0 auto;
    display: block;
  }

  /* Center text nicely on mobile */
  .profile-card {
    text-align: center;
  }
}

@media screen and (max-width: 768px) {
  .profile-layout .column {
    padding-bottom: 15px;
  }
}