/* Scoped to the two academic homepages; preserve the template layout. */
.academic-home {
  color: #374151;
  background: #fff;
  font-size: 1rem;
  line-height: 1.8;
  overflow-wrap: anywhere;
}
.academic-home p { margin: 0 0 1rem; }
.academic-home a { color: #2563a6; text-underline-offset: .18em; }
.academic-home a:hover { color: #174777; }
.academic-home a:focus-visible { outline: 2px solid #2563a6; outline-offset: 3px; }
.academic-home h2 {
  margin: 2.4rem 0 1.2rem;
  padding-bottom: .5rem;
  border-bottom: 1px solid #dce5ef;
  color: #253449;
  font-size: 1.35rem;
  line-height: 1.4;
  scroll-margin-top: 5rem;
}
.academic-home h3 {
  margin: 1.4rem 0 .35rem;
  color: #253449;
  font-size: 1.05rem;
  line-height: 1.5;
}
.academic-home .project-meta {
  margin: 0 0 .5rem;
  color: #52657a;
  font-size: .82rem;
  line-height: 1.6;
}
.academic-home .language-link { margin-bottom: 1.25rem; font-size: .85rem; }
.academic-home ul { padding-left: 1.2rem; margin: 0 0 1rem; }
.academic-home ul li { margin-bottom: .6rem; }
.academic-home .research-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.15rem 1.7rem;
  counter-reset: research;
  padding: 0;
  margin: 0;
  list-style: none;
}
.academic-home .research-list li {
  counter-increment: research;
  position: relative;
  padding-left: 2.3rem;
  margin: 0;
}
.academic-home .research-list li::before {
  content: counter(research, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: .1rem;
  color: #2563a6;
  font-size: .85rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.academic-home .research-list h3 { margin: 0 0 .35rem; font-size: .98rem; }
.academic-home .research-list p { margin: 0; font-size: .9rem; line-height: 1.7; }
@media (max-width: 640px) {
  .academic-home .research-list { grid-template-columns: minmax(0, 1fr); gap: 1rem; }
  .academic-home h2 { margin-top: 2rem; font-size: 1.2rem; }
  .academic-home h3 { font-size: 1rem; }
}

/* Project index and detail pages share the existing academic template. */
.academic-home .project-card { border: 1px solid #dce5ef; border-radius: 6px; overflow: hidden; margin: 1.25rem 0; }
.academic-home .project-card.with-image { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.academic-home .project-cover { display: block; background: #eef3f8; }
.academic-home .project-cover img { width: 100%; height: 100%; min-height: 240px; object-fit: contain; display: block; }
.academic-home .project-card-body { padding: 1.25rem; min-width: 0; }
.academic-home .project-card h3 { margin: .3rem 0 .6rem; }
.academic-home .project-card h3 a { color: #253449; text-decoration: none; }
.academic-home .project-card p { font-size: .9rem; }
.academic-home .tech-tags { display: flex; flex-wrap: wrap; gap: .35rem; list-style: none; padding: 0; }
.academic-home .tech-tags li { border: 1px solid #dce5ef; border-radius: 20px; padding: .1rem .55rem; margin: 0; font-size: .72rem; color: #52657a; }
.academic-home .project-more { font-size: .85rem; font-weight: 600; }
.academic-home .research-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.academic-home .research-note { padding: 1.1rem; border: 1px solid #dce5ef; border-radius: 6px; }
.academic-home .research-note h3 { margin-top: .2rem; }
.academic-home .research-note p { font-size: .9rem; }
.academic-home img { max-width: 100%; height: auto; }
@media (max-width: 640px) {
  .academic-home .project-card.with-image, .academic-home .research-grid { grid-template-columns: minmax(0,1fr); }
  .academic-home .project-cover img { min-height: 0; height: auto; }
}
