body {
  background-color: #fff;
  padding:50px;
  font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  color:#595959;
  font-weight:400;
}

.skip-link {
  position:absolute;
  left:-9999px;
  top:10px;
  z-index:10;
  padding:8px 12px;
  background:#fff;
  border:1px solid #e5e5e5;
}

.skip-link:focus {
  left:10px;
}

h1, h2, h3, h4, h5, h6 {
  color:#222;
  margin:0 0 20px;
}

p, ul, ol, table, pre, dl {
  margin:0 0 20px;
}

h1, h2, h3 {
  line-height:1.1;
}

h1 {
  font-size:28px;
  font-weight: 500;
}

h2 {
  color:#393939;
  font-weight: 500;
}

h3, h4, h5, h6 {
  color:#494949;
  font-weight: 500;
}

a {
  color:#a51a3f;
  text-decoration:none;
}

a:hover {
  color:#a33d6a;
}

a:focus-visible {
  outline:2px solid #a51a3f;
  outline-offset:3px;
}

a small {
  font-size:11px;
  color:#777;
  margin-top:-0.3em;
  display:block;
}

a:hover small {
  color:#777;
}

.wrapper {
  width:860px;
  margin:0 auto;
}

blockquote {
  border-left:1px solid #e5e5e5;
  margin:0;
  padding:0 0 0 20px;
  font-style:italic;
}

code, pre {
  font-family:Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal, Consolas, Liberation Mono, DejaVu Sans Mono, Courier New, monospace;
  color:#333;
}

pre {
  padding:8px 15px;
  background: #f8f8f8;
  border-radius:5px;
  border:1px solid #e5e5e5;
  overflow-x: auto;
}

table {
  width:100%;
  border-collapse:collapse;
}

th, td {
  text-align:left;
  padding:5px 10px;
  border-bottom:1px solid #e5e5e5;
}

dt {
  color:#444;
  font-weight:500;
}

th {
  color:#444;
}

img {
  max-width:100%;
}

header {
  width:270px;
  float:left;
  position:fixed;
  -webkit-font-smoothing:subpixel-antialiased;
}

.site-title a {
  color:inherit;
}

.site-title a:hover {
  color:#a51a3f;
}

.site-title {
  margin-bottom:10px;
}

.site-description {
  color:#777;
  margin-bottom:28px;
}

.site-nav ul {
  list-style:none;
  width:auto;
  height:auto;
  margin:0;
  padding:0;
  background:transparent;
  border:0;
  border-radius:0;
}

.site-nav li,
.site-nav ul li + li + li {
  float:none;
  width:auto;
  height:auto;
  border:0;
}

.site-nav ul a {
  display:inline-block;
  height:auto;
  padding:5px 0;
  color:#595959;
  font-size:14px;
  line-height:1.35;
  text-align:left;
}

.site-nav ul a:hover,
.site-nav ul a.current {
  color:#a51a3f;
}

.site-nav ul a.current {
  font-weight:500;
}

strong {
  color:#222;
  font-weight:500;
}

main {
  width:500px;
  float:right;
  padding-bottom:50px;
}

main section {
  margin-top:34px;
}

main > .page-header:first-child {
  margin-top:0;
}

.page-header + hr {
  margin-top:30px;
}

.seminar-date {
  padding:14px 18px;
  border-left:3px solid #a51a3f;
  background:#f8f8f8;
}

.seminar-date strong {
  display:block;
}

.seminar-date strong + strong {
  margin-top:2px;
  color:#a51a3f;
}

.lead {
  color:#393939;
  font-size:16px;
  line-height:1.6;
}

.program-link {
  display:inline-block;
  padding:8px 12px;
  border:1px solid #a51a3f;
  border-radius:3px;
  font-weight:500;
}

.program-link:hover {
  background:#a51a3f;
  color:#fff;
}

.program-entry {
  padding:22px 0 2px;
  border-top:1px solid #e5e5e5;
}

.program-entry:first-of-type {
  padding-top:0;
  border-top:0;
}

.program-entry h3 {
  margin-bottom:8px;
}

.program-entry h3 span {
  display:block;
  margin-top:4px;
  color:#777;
  font-size:13px;
  font-weight:400;
  line-height:1.4;
}

.paper-title {
  margin-bottom:4px;
  color:#222;
  font-weight:500;
}

.coauthors {
  margin-bottom:10px;
  color:#777;
}

.speaker-list {
  padding-left:20px;
}

.speaker-list li {
  margin-bottom:9px;
}

.contact-block address {
  font-style:normal;
  line-height:1.75;
}

.venue-figure {
  margin:30px 0 0;
}

.venue-photo {
  display:block;
  width:100%;
  height:auto;
  border-radius:3px;
}

.venue-figure figcaption {
  margin-top:7px;
  color:#777;
  font-size:12px;
}

.venue-links {
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
}

.venue-links a {
  font-weight:500;
}

small {
  font-size:11px;
}

hr {
  border:0;
  background:#e5e5e5;
  height:1px;
  margin:0 0 20px;
}

footer {
  width:270px;
  float:left;
  position:fixed;
  bottom:50px;
  -webkit-font-smoothing:subpixel-antialiased;
}

@media print, screen and (max-width: 960px) {

  div.wrapper {
    width:auto;
    margin:0;
  }

  header, main, footer {
    float:none;
    position:static;
    width:auto;
  }

  header {
    padding-right:320px;
  }

  main {
    border:1px solid #e5e5e5;
    border-width:1px 0;
    padding:20px 0;
    margin:0 0 20px;
  }

  header a small {
    display:inline;
  }

  .site-nav ul {
    position:static;
    display:flex;
    flex-wrap:wrap;
    gap:4px 20px;
  }
}

@media print, screen and (max-width: 720px) {
  body {
    word-wrap:break-word;
  }

  header {
    padding:0;
  }

  .site-nav ul, header p.view {
    position:static;
  }

  pre, code {
    word-wrap:normal;
  }
}

@media print, screen and (max-width: 480px) {
  body {
    padding:15px;
  }

  .site-nav ul {
    display:block;
  }
}

@media print {
  body {
    padding:0.4in;
    font-size:12pt;
    color:#444;
  }
}
