/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  src: local('Lato Italic'), local('Lato-Italic'), url(https://fonts.gstatic.com/s/lato/v15/S6u8w4BMUTPHjxsAUi-qNiXg7eU0.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  src: local('Lato Italic'), local('Lato-Italic'), url(https://fonts.gstatic.com/s/lato/v15/S6u8w4BMUTPHjxsAXC-qNiXg7Q.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 700;
  src: local('Lato Bold Italic'), local('Lato-BoldItalic'), url(https://fonts.gstatic.com/s/lato/v15/S6u_w4BMUTPHjxsI5wq_FQftx9897sxZ.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 700;
  src: local('Lato Bold Italic'), local('Lato-BoldItalic'), url(https://fonts.gstatic.com/s/lato/v15/S6u_w4BMUTPHjxsI5wq_Gwftx9897g.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: local('Lato Regular'), local('Lato-Regular'), url(https://fonts.gstatic.com/s/lato/v15/S6uyw4BMUTPHjxAwXiWtFCfQ7A.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: local('Lato Regular'), local('Lato-Regular'), url(https://fonts.gstatic.com/s/lato/v15/S6uyw4BMUTPHjx4wXiWtFCc.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: local('Lato Bold'), local('Lato-Bold'), url(https://fonts.gstatic.com/s/lato/v15/S6u9w4BMUTPHh6UVSwaPGQ3q5d0N7w.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: local('Lato Bold'), local('Lato-Bold'), url(https://fonts.gstatic.com/s/lato/v15/S6u9w4BMUTPHh6UVSwiPGQ3q5d0.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

a {
  color: #1772d0;
  text-decoration: none;
}

a:focus,
a:hover {
  color: #f09228;
  text-decoration: none;
}

body,
td,
th,
tr,
p,
a {
  font-family: 'Lato', Verdana, Helvetica, sans-serif;
  font-size: 14px;
}

/* Site-wide layout and typography updates to match a clean academic format */
.site-wrap {
  max-width: 980px;
  margin: 36px auto;
  padding: 20px;
  font-family: 'Inter', 'Lato', Verdana, Helvetica, sans-serif;
  color: #111;
}

.site-header { margin-bottom: 12px; }
.header-inner { display:flex; align-items:center; gap:20px; max-width:720px; margin:0 auto; justify-content:center; }
.name-block { display:flex; gap:18px; align-items:center; }
.profile-img { width:140px; height:140px; border-radius:16px; object-fit:cover; }
.name { font-size:36px; margin:0 0 4px 0; }
.role { margin:6px 0 0 0; color:#444; }
.contact-inline a { color:#1772d0; }

.top-nav { margin: 18px 0; display:flex; gap:14px; flex-wrap:wrap; }
.top-nav a { color:#333; padding:6px 8px; border-radius:6px; font-weight:600; text-decoration:none; }
.top-nav a:hover { background:#f5f5f5; color:#1772d0; }

.container { display:grid; grid-template-columns: 1fr; gap:28px; align-items:start; }
.sidebar { display:none; }
.sidebar h3 { margin-top:0; }
.content { max-width:720px; margin:0 auto; }
.content.centered-content { display:block; margin-left:auto; margin-right:auto; }
.content section { margin-bottom:26px; }

/* Center header and nav to match requested layout */
.header-inner { justify-content: flex-start; }
.top-nav { justify-content:center; max-width:720px; margin:0 auto; }
.top-nav a { padding:8px 12px; }

.site-footer { margin-top:36px; color:#666; font-size:13px; }

/* Project page specific styles (model-discovery like) */
.project-page .project-hero { padding: 30px 0 10px 0; border-bottom: 1px solid #eee; }
.project-page .project-hero .hero-inner { display:flex; gap:28px; align-items:center; max-width:980px; margin:0 auto; }
.project-page .project-hero .meta { flex:1; }
.project-page .project-hero h1 { font-size:28px; margin:0 0 8px 0; }
.project-page .project-hero .authors { color:#333; margin:0 0 6px 0; }
.project-page .project-hero .links a { color:#1772d0; }
.project-page .project-hero .hero-figure img { width:480px; max-width:48vw; height:auto; border-radius:8px; box-shadow:0 8px 24px rgba(15,15,15,0.08); }

/* Author block styling: superscripts and affiliation line */
.project-hero .meta { text-align: center; }
.project-hero .meta .authors { font-size:15px; margin:6px 0 6px 0; line-height:1.35; }
.project-hero .meta .authors .author { display:inline-block; margin:0 10px 4px 10px; }
.project-hero .meta sup { font-size:0.65em; vertical-align:super; margin-left:2px; }
.project-hero .meta .affils { color:#444; font-size:13px; margin:6px 0 8px 0; }
.project-hero .meta .links { margin-top:8px; }

.project-content { max-width:980px; margin:20px auto; }
.project-content h2 { font-size:20px; margin:18px 0 8px 0; }
.project-figs { display:flex; gap:12px; flex-wrap:wrap; }
.project-figs img { width:48%; border-radius:6px; }
.project-page pre { background:#f7f7f7; padding:12px; overflow:auto; border-radius:6px; }

@media (max-width: 900px) {
  .project-page .project-hero .hero-inner { flex-direction:column; align-items:center; }
  .project-page .project-hero .hero-figure img { width:100%; max-width:420px; }
  .project-figs img { width:100%; }
}

/* Teaser block (shows top-of-page teaser image/PDF link) */
.project-teaser { display:none; }


strong {
  font-family: 'Lato', Verdana, Helvetica, sans-serif;
  font-size: 14px;
}

h2 {
  margin: 0;
  font-weight: normal;
  font-family: 'Lato', Verdana, Helvetica, sans-serif;
  font-size: 22px;
}

.papertitle {
  font-family: 'Lato', Verdana, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: 700;
}

.name {
  padding-top: 20px;
  margin: 0;
  font-family: 'Lato', Verdana, Helvetica, sans-serif;
  font-size: 32px;
}

.one {
  width: 160px;
  height: 160px;
  position: relative;
}

.two {
  width: 160px;
  height: 160px;
  position: absolute;
  transition: opacity .2s ease-in-out;
  -moz-transition: opacity .2s ease-in-out;
  -webkit-transition: opacity .2s ease-in-out;
}

.fade {
  transition: opacity .2s ease-in-out;
  -moz-transition: opacity .2s ease-in-out;
  -webkit-transition: opacity .2s ease-in-out;
}

span.highlight {
  background-color: #ffffd0;
}

.colored-box {
    color: black;
    padding: 20px;
    display: inline-block;
    border-radius: 10px;
}

/* Responsive improvements */
@media (max-width: 900px) {
  body, td, th, p, a {
    font-size: 15px;
  }
  .name { font-size: 28px; }
  .one, .two { width: 120px; height: 120px; }
  img, video { max-width: 100%; height: auto; }
  .papertitle { font-size: 13px; }
  .container { grid-template-columns: 1fr; }
  .sidebar { order: -1; }
}

@media (max-width: 600px) {
  body, td, th, p, a { font-size: 16px; }
  .name { font-size: 24px; padding-top: 12px; }
  .one, .two { width: 96px; height: 96px; }
  td { display: block; width: 100% !important; }
  tr { display: block; }
  .colored-box { display: block; width: auto; }
  .papertitle { display: block; font-size: 15px; margin-bottom: 6px; }
}
