/* Original design credits: Jon Barron, Deepak Pathak, Abhishek Kar, and Saurabh Gupta. */
:root {
  color-scheme: light;
  font-family: 'Titillium Web', Verdana, Helvetica, sans-serif;
  color: #24282d;
  background: #fff;
  font-size: 16px;
}

* { box-sizing: border-box; }
body { margin: 0; line-height: 1.55; }
a { color: #1772d0; text-decoration: none; text-underline-offset: 3px; }
a:hover { color: #c16c12; text-decoration: underline; }
a:focus-visible { outline: 2px solid #1772d0; outline-offset: 4px; border-radius: 2px; }
p { margin: 0 0 1rem; }
td { font-size: 1rem; font-weight: 400; }
strong { font-weight: 600; }

.page-layout { width: 100%; max-width: 900px; margin: 16px auto; table-layout: fixed; }
h1 { margin: 0 0 18px; font-size: 2.375rem; font-weight: 400; text-align: center; line-height: 1.2; }
h2 { margin: 0 0 20px; font-size: 1.375rem; font-weight: 600; line-height: 1.3; }
.profile-photo { display: block; width: 100%; height: auto; border-radius: 15px; }
.profile-sidebar p { margin-top: 16px; font-size: .9375rem; }
.biography p:last-child { margin-bottom: 0; }
.previous-life { margin-top: 24px; }
.previous-life h2 { margin-bottom: 12px; font-size: 1.125rem; }
hr { border: 0; height: 1px; background: #e3e7ec; margin: 22px 0; }
.reward-section { padding: 8px 20px 12px; }
.video-embed { width: 100%; aspect-ratio: 16 / 9; overflow: hidden; border-radius: 12px; background: #101114; }
.video-embed iframe { display: block; width: 100%; height: 100%; border: 0; }
.publications-heading { margin: 30px 20px 8px; }
.paper-title { font-size: 1.0625rem; font-weight: 600; line-height: 1.4; }
.publications td { padding-top: 20px; padding-bottom: 20px; }
.publications td > p:last-child { margin-bottom: 0; }
.publications img, .publications video { max-width: 100%; height: auto; }

@media (max-width: 640px) {
  .page-layout { margin: 8px auto; }
  .page-layout > tbody > tr > td { padding: 20px 16px; }
  h1 { font-size: 2.125rem; }
  .profile-layout, .profile-layout tbody, .profile-layout tr,
  .publications, .publications tbody, .publications tr { display: block; width: 100%; }
  .profile-layout td, .publications td { display: block; width: 100%; padding: 12px 0; }
  .profile-layout .profile-sidebar { max-width: 240px; margin: 0 auto; }
  .profile-photo { max-width: 220px; margin: 0 auto; }
  .biography { text-align: left; }
  .reward-section { padding: 8px 0 12px; }
  .publications-heading { margin: 28px 0 12px; }
  .publications tr { margin-bottom: 24px; }
  .publications img, .publications video { width: 100%; }
}
