@font-face
{
  font-family: 'Play';
  font-weight: 400;
  font-style: normal;
  src: url('Play-Regular.ttf') format('truetype');
}

@font-face
{
  font-family: 'Play';
  font-weight: 700;
  font-style: normal;
  src: url('Play-Bold.ttf') format('truetype');
}

:root
{
  --plm: 10%;
  --prm: 8%;
}

body
{
  /*background-image: linear-gradient(#eee .05em, transparent .05em);
  background-size: 100% 20px;*/
  box-sizing: border-box;
  font-family: Play, Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-variant-numeric: tabular-nums;
  font-weight: 500;
  line-height: 20px;
  margin: 0;
  max-width: 100%;
  padding: 0;
  scroll-snap-type: y proximity;
  width: 100%;
}

header
{
  background-color: #6690b8;
  color: white;
  font-size: 32px;
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 40px;
  margin: 0;
  padding: 0 var(--prm) 0 var(--plm);
}

header img
{
  position: relative;
  top: 4px;
}

h1
{
  font-size: 40px;
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 42px;
  margin: 58px var(--prm) 40px var(--plm);
}

h2
{
  color: #2a4d73;
  font-size: 32px;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 39px;
  margin: 0 var(--prm) 20px var(--plm);
  padding-bottom: 1px;
}

h3
{
  font-size: 25px;
  font-weight: 400;
  grid-row-end: 9;
  grid-row-start: 1;
  line-height: 25px;
  margin: 0 0 25px;
}

h4
{
  font-size: 25px;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 25px;
  margin: 0;
}

section
{
  column-gap: 40px;
  display: grid;
  grid-template-columns: 120px repeat(auto-fit, minmax(max-content, 200px));
  grid-auto-columns: max-content;
  margin: 40px var(--prm) 0 var(--plm);
  scroll-snap-align: start;
}

@media (max-width: 479px)
{
  section
  {
    display: block;
  }
}

table
{
  border-collapse: collapse;
  border-spacing: 0;
  height: min-content;
  margin: 0;
  margin-bottom: 40px;
  width: max-content;
}

td
{
  border-bottom: 1px dotted black;
  font-size: 18px;
  letter-spacing: 0.02em;
  padding: 17px 10px 2px;
  white-space: nowrap;
}

td.status
{
  border: 0;
  padding: 0;
}

tr:nth-child(1) td
{
  border: 0;
  padding: 0;
}

td:nth-child(2)
{
  min-width: 150px;
  padding-left: 0;
  width: 100%;
}

a
{
  color: #1a3c62;
  text-decoration: none;
}

header a
{
  color: white;
}

@media (max-width: 299px)
{
  :root
  {
    --plm: 5%;
    --prm: 3%;
  }
}

@media (max-width: 259px)
{
  :root
  {
    --plm: 2%;
    --prm: 1%;
  }
}
