:root {
  --apm-blue: #44acff;
  --apm-green: #26b978;
  --apm-purple: #b987ff;
}
body { font-family: 'Noto Sans', Arial, sans-serif; color: #30343b; }
.container.is-max-desktop { max-width: 1060px; }
.publication-header .hero-body { padding: 3.5rem 1.5rem 1.75rem; }
.publication-title, .publication-authors { font-family: 'Google Sans', 'Noto Sans', Arial, sans-serif; }
.publication-title { margin-bottom: 2rem !important; color: #252a32; }
.project-name { display: block; margin-bottom: 0.65rem; font-size: 3.5rem; font-weight: 700; letter-spacing: -0.035em; }
.project-subtitle { display: block; font-size: 1.9rem; font-weight: 600; line-height: 1.3; letter-spacing: -0.02em; }
.apm-a { color: var(--apm-blue); }
.apm-p { color: var(--apm-green); }
.apm-m { color: var(--apm-purple); }
.publication-authors { font-size: 1.12rem; line-height: 1.7; }
.author-row, .affiliation-row { display: flex; flex-wrap: wrap; justify-content: center; column-gap: 1.15rem; }
.author-block { display: inline-block; white-space: nowrap; }
sup { font-size: 0.7em; vertical-align: super; line-height: 0; }
.publication-authors sup { margin-left: 0.12em; }
.publication-affiliations { margin-top: 1rem; font-size: 0.93rem; line-height: 1.85; color: #555c66; }
.publication-affiliations sup { margin-right: 0.15em; }
.author-notes { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.3rem 1.25rem; margin-top: 0.75rem; font-size: 0.82rem; color: #6b7280; }
.publication-links { display: flex; justify-content: center; flex-wrap: wrap; gap: 0.75rem; margin-top: 1.25rem; }
.publication-links .button { text-decoration: none; }
.publication-links .icon svg { width: 1.2rem; height: 1.2rem; }
.teaser { padding-top: 0.75rem; padding-bottom: 1.25rem; }
.teaser-pdf { display: block; width: 100%; aspect-ratio: 788 / 379.333313; border: 0; background: #fff; }
.teaser figcaption { margin-top: 1rem; font-size: 0.94rem; line-height: 1.65; text-align: left; color: #555c66; }
a { color: #217bbd; }
a:hover { color: #16537f; text-decoration: underline; }
a:focus-visible { outline: 2px solid var(--apm-blue); outline-offset: 4px; }
#abstract { padding-top: 2rem; padding-bottom: 3.75rem; }
.abstract-column { max-width: 900px; }
.abstract-text { font-size: 1.04rem; line-height: 1.8; text-align: left; }
.footer { padding: 1.75rem 1.5rem; background: #f8f9fb; font-size: 0.82rem; color: #737a84; }
@media screen and (max-width: 768px) {
  .publication-header .hero-body { padding: 2.25rem 1.25rem 1.25rem; }
  .publication-title { margin-bottom: 1.5rem !important; }
  .project-name { font-size: 2.6rem; }
  .project-subtitle { font-size: 1.45rem; line-height: 1.4; }
  .desktop-break { display: none; }
  .publication-authors { font-size: 1rem; }
  .author-row { column-gap: 0.85rem; }
  .publication-affiliations { font-size: 0.85rem; }
  .affiliation-row { column-gap: 0.85rem; }
  .section { padding-left: 1.25rem; padding-right: 1.25rem; }
  .teaser figcaption { font-size: 0.88rem; }
  .abstract-text { font-size: 1rem; line-height: 1.75; }
}
