body { font-family: 'Noto Sans', sans-serif; background: #fff; color: #363636; }
.publication-title { font-family: 'Google Sans', sans-serif; line-height: 1.25; }
.publication-authors { font-family: 'Google Sans', sans-serif; margin-top: .75rem; }
.publication-authors a { color: hsl(204, 86%, 53%) !important; }
.author-block { display: inline-block; margin: 0 .2em; }
.affiliations .author-block { margin: 0 .6em; }
.notes { color: #7a7a7a; }
.publication-links { margin-top: 1.25rem; display: flex; gap: .5rem; justify-content: center; flex-wrap: wrap; }
.publication-links .button { background: #363636; }
img { display: block; width: 100%; height: auto; border-radius: 6px; }
.caption { margin-top: .75rem; font-size: .95rem; color: #4a4a4a; text-align: justify; }
.table-caption { font-size: .95rem; color: #4a4a4a; margin-bottom: .5rem; }
.title.is-3 { font-family: 'Google Sans', sans-serif; }
.highlights { list-style: none; margin: 0; }
.highlights li { display: flex; gap: .6rem; margin-bottom: .9rem; line-height: 1.55; }
.highlights .emoji { flex: 0 0 auto; }
table.results th, table.results td { text-align: center; vertical-align: middle; white-space: nowrap; }
table.results th:first-child, table.results td:first-child { text-align: left; }
table.results thead th { border-bottom: 2px solid #363636; }
td.ours, tr.ours-row td { font-weight: 700; color: #1d4e9e; }
tr.ours-row td { background: #eef3fb; }
td.gain { color: #2f7d4f; font-weight: 600; }
pre { background: #f5f5f5; border-radius: 6px; font-size: .85rem; white-space: pre-wrap; word-break: break-word; }
.footer { padding: 2rem 1.5rem; background: #fafafa; font-size: .9rem; }
@media screen and (max-width: 768px) {
  .section { padding: 2rem 1rem; }
  .hero-body { padding: 2rem 1rem; }
  .publication-title { font-size: 1.75rem !important; }
}
.teaser { max-width: 420px; margin: 0 auto; }
.title-row { display: flex; align-items: center; justify-content: center; gap: 1.5rem; }
.title-row .logo { width: 120px; flex: 0 0 auto; border-radius: 0; }
.title-row .publication-title { margin-bottom: 0; text-align: left; }
.publication-title .name { color: #c4542f; }
@media screen and (max-width: 768px) { .title-row { flex-direction: column; gap: .75rem; } .title-row .logo { width: 84px; } .title-row .publication-title { text-align: center; } }
