*,
*::before,
*::after {
  box-sizing: border-box;
}

/* source-sans-pro-regular - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('../fonts/source-sans-pro-v21-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/source-sans-pro-v21-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* source-serif-pro-regular - latin */
@font-face {
  font-family: 'Source Serif Pro';
  font-style: normal;
  font-weight: 400;
  src: local(''),
       url('../fonts/source-serif-pro-v15-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/source-serif-pro-v15-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, menu, nav, section, time, mark, audio, video, details, summary {
  margin: 0;
  padding: 0;
  border: 0;
  font-family: 'Source Sans Pro', Arial, sans-serif;
}

body {
  min-height: 100vh;
  line-height: 1.75;
  margin: 0;
  display: grid;
  grid-template-rows: auto 1fr auto;
}

img {
  display: block;
}

input,
button,
textarea,
select {
  font: inherit;
}

header, main, footer {
  box-sizing: border-box;
  max-width: 840px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

header {
  display: flex;
  flex-direction: row;
  justify-content: center;
}

header .logo {
  margin: 35px 0 48px 0;
  width: 100%;
  max-width: 224px;
}

header img {
  width: 100%;
  height: auto;
}

main {
  font-size: 20px;
  color: #404040;
  line-height: 30px;
}

main article.reports {

}

main article.reports .intro {
  margin-bottom: 24px;
}

main article.reports a {
  display: block;
  width: 100%;
  background: #ebebeb;
  text-decoration: none;
  margin-bottom: 6px;
}

main article.reports a .report {
}

main article.reports a .report .id {
  font-family: 'Source Serif Pro', Arial, sans-serif;
  font-size: 26px;
  color: #024C94;
  letter-spacing: 0.2px;
  padding: 13px 13px 13px 15px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
}

footer {
  min-height: 50px;
}

footer .line {
  widows: 100%;
  height: 4px;
  background: #124b91;
  border: 1px solid #89a5c8;
}

footer .links {
  display: flex;
  flex-direction: row;
  padding: 21px 0 29px 0;
}

footer .links .link {
  font-size: 14px;
  margin-right: 25px;
}

footer .links .link a {
  color: #024C94;
  text-decoration: none;
}