/* Custom CSS for smaller and nicer font */
body {
  font-family: 'Roboto', sans-serif; /* More readable font family */
  font-size: 0.8rem; /* Increased base font size */
  line-height: 1.1rem; /* Improved line height for readability */
  color: #333;
  text-align: justify;
  -webkit-font-smoothing: antialiased; /* Smooth fonts on macOS */
  -moz-osx-font-smoothing: grayscale; /* Improve font rendering on Firefox for macOS */
  text-rendering: optimizeLegibility; /* Optimize for legibility */
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 200;
  line-height: 1;
  text-align: left;
}

h1{
  font-size: 1.8rem;
  font-weight: bold;
}

h2 {
  font-size: 1.6rem;
  font-weight: bold;
}

h3 {
  font-size: 1.4rem;
}

h4 {
  font-size: 1.2rem;
}

h5 {
  font-size: 1.1rem;
}

h6 {
  font-size: 1rem;
}

hr {
  margin: 1rem 0;
}

/* Dashed border */
hr.dashed {
  border-top: 3px dashed #bbb;
}

/* Dotted border */
hr.dotted {
  border-top: 3px dotted #bbb;
}

/* Solid border */
hr.solid {
  border-top: 3px solid #bbb;
}

/* Rounded border */
hr.rounded {
  border-top: 8px solid #bbb;
  border-radius: 5px;
}


p {
  margin-bottom: 1rem;
}

code {
  font-family: "Courier New", monospace;
  font-size: 12px;
  background-color: #f0f0f0;
  padding: 2px 4px;
  border-radius: 2px;
}

/* Dashed border */
hr.dashed {
  border-top: 3px dashed #bbb;
}

/* Dotted border */
hr.dotted {
  border-top: 3px dotted #bbb;
}

/* Solid border */
hr.solid {
  border-top: 3px solid #bbb;
}

/* Rounded border */
hr.rounded {
  border-top: 8px solid #bbb;
  border-radius: 5px;
}

a.sc-orcid {
  background-color: #C1D97D;
}

a.sc-google-scholar {
  background-color: #4015d0;
}

/* Team grid layout for consistent alignment */
.team-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 8px; /* Reduced from 15px to 8px to make grid elements tighter */
  margin: 5px 0; /* Reduced from 10px to 5px to compress vertical spacing */
}

.team-card-wrapper {
  display: inline-block;
  margin: 0;
  height: 100%;
}

/* Apply the same grid layout to other grid elements */
.grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  gap: 8px; /* Added consistent tight spacing for all grid layouts */
  margin: 5px 0;
}

.card-member-list {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 200px;
  height: 240px;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 5px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.card-member-list-thumbnail {
  width: 170px;
  height: 170px;
  object-fit: cover;
  border-radius: 50%;
  transition: transform 0.3s ease;
}

.card-member-list-thumbnail:hover {
  transform: scale(1.01);
}

.card-member-list-title {
  font-size: 14px;
  line-height: 16px;
  font-weight: bold;
  text-align: center;
  margin-top: 2px;
  margin-bottom: 0px;
}

.card-member-list-description {
  font-size: 11px;
  line-height: 14px;
  color: #666;
  text-align: center;
  margin-top: 2px;
  margin-bottom: 0px;
}

/* used in team_member pages */
.card-member {
  display: flex;
  align-items: center;
  background-color: #fff;
  border: 1px solid #ddd;
  padding: 5px;
  border-radius: 10px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.card-member-image img {
  width: 200px;
  height: 200px;
  object-fit: cover;
  margin: 5px 5px 5px 5px;
}

.card-member-info {
  flex-grow: 1;
  line-height: 1; /* Adjust the value to reduce the space between lines */
  margin-left: 10px;
}

aside {
  background-image: url('/images/background.jpg');
  background-blend-mode: multiply;
  background-color: rgba(0, 0, 0, 0.7);
  background-size: cover;

  color: #fff;
  text-align: center;
  
  /* Add overflow property for scrollability */
  overflow: auto;

  a {
    color: #ffffff;
  }

  a:hover {
    color: #ff0000;
  }

  div {
    padding: 20px;
    margin: 0;

    img {
      border-radius: 50%;
      max-width: 140px;
    }

    h1 {
      margin: 15px 0 5px 0;
      text-align: center;
    }

    p {
      margin: 0 0 15px 0;
      font-size: .92rem;
    }
  }

  nav {
    ul {
      li {
        display: inline;
        line-height: 1.6rem;
        font-size: 1.2rem;
        text-transform: lowercase;
      }
    }
  }
}
