html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Google Sans', sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #333;
}

.publication-title {
  font-size: 2.5em;
  margin-bottom: 0.5em;
  line-height: 1.2;
  white-space: nowrap;
}

/* Responsive title sizing - allow wrapping on smaller screens */
@media (max-width: 1200px) {
  .publication-title {
    font-size: 2.2em;
  }
}

@media (max-width: 1000px) {
  .publication-title {
    font-size: 2em;
  }
}

@media (max-width: 768px) {
  .publication-title {
    font-size: 1.8em;
    white-space: normal;
    line-height: 1.3;
  }
}

@media (max-width: 480px) {
  .publication-title {
    font-size: 1.4em;
    white-space: normal;
    line-height: 1.4;
  }
}

.publication-authors {
  margin-bottom: 1em;
}

.author-block {
  display: inline-block;
  margin-right: 0.5em;
}

.author-block a {
  color: #1a73e8;
  text-decoration: none;
  margin-right: 1em;
  margin-left: 1em;
  font-size: 0.9em;
}

.author-block a:hover {
  text-decoration: underline;
}

.publication-links {
  margin-top: 1em;
}

.link-block {
  margin: 0 2em;
}

.external-link {
  background-color: #1a73e8;
  color: white;
  padding: 0.5em 1em;
  border-radius: 4px;
  text-decoration: none;
  transition: background-color 0.2s;
}

.external-link:hover {
  background-color: #1557b0;
  color: white;
}

.section {
  padding: 3rem 1.5rem;
}

.title {
  margin-bottom: 1.5rem;
}

.content {
  margin-top: 1.5rem;
}

pre {
  background-color: #f5f5f5;
  padding: 1em;
  border-radius: 4px;
  overflow-x: auto;
}

code {
  font-family: 'Courier New', Courier, monospace;
}

b, strong {
  font-weight: 900; /* Extra bold */
  color: #1a1a1a; /* Darker color for better contrast */
  text-shadow: 0.3px 0.3px 0px rgba(0,0,0,0.2); /* Subtle shadow for more weight */
}