a {
color: #7733ff;
text-decoration: underline;
}

a:hover {
color: #fe2e9a !important;
}

article.interviewee {
clear: left;
}

article.interviewee img {
float: left;
margin: 0 40px 40px 0;
}

article header {
padding-bottom: 20px;
margin-bottom: 20px;
}

body {
background-color: #fff;
background-image: linear-gradient(#ffe6f3, #fff);
background-repeat: no-repeat;
background-size: 100% 250px;
color: #000;
font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
font-size: 1.2em;
line-height: 1.3em;
margin: 0;
padding: 0;
}

div#wrapper {
margin: auto;
max-width: 600px;
}

div#wrapper > header {
border-bottom: solid 1px #ffcce6;
display: grid;
margin-bottom: 25px;
padding-top: 20px;
}

div#wrapper > header nav {
border-top: solid 1px #ffcce6;
font-size: 90%;
grid-column: 1/3;
grid-row: 2;
margin: 10px 0 5px 0;
padding: 10px 0;
text-transform: uppercase;
}

div#wrapper > header nav a {
color: #000;
}

div#wrapper > header p {
border-left: solid 1px #ffcce6;
color: #666;
font-size: 70%;
margin-left: 50px;
padding: 0 15px;
}

dd {
display: block;
font-size: 80%;
margin: 5px 0 20px 0;
}

main p {
line-height: 1.7em;
}

dt {
display: block;
margin: 0 0 10px 0;
}

figcaption {
color: #aaa;
font-size: 70%;
}

figure {
margin: 0 0 10px 0;
}

footer {
border-top: solid 1px #eee;
clear: left;
font-size: 75%;
margin-top: 20px;
text-align: center;
}

form {
padding: 0;
margin: 10px 0;
}

h1 {
align-self: center;
color: #fe2e9a;
font-size: 250%;
grid-column-start: 1;
grid-row: 1;
margin: 0;
padding: 0;
text-transform: lowercase;
}

h1 a {
text-decoration: none;
}

h1 a:hover {
color: #7733ff !important;
text-decoration: underline;
}

h1 a span {
color: #fe2e9a;
}

h2 {
color: #fe2e9a;
font-size: 160%;
margin: 0;
padding: 5px 0;
}

h3 {
font-size: 120%;
margin: 0;
padding: 0;
}

h4 {
font-size: 100%;
font-weight: 600;
margin: 20px 0 5px 0;
padding: 0;
}

img {
border: solid 1px #aaa;
padding: 5px;
}

main > h2 + p {
font-size: 80%;
margin: 10px 0 20px 0;
padding-bottom: 10px;
border-bottom: solid 1px #eee;
}

nav ul {
list-style: none outside;
margin: 0;
padding: 0;
}

nav ul li {
display: inline-block;
margin: 0 10px 0 0;
padding: 0;
}

nav#paginator {
clear: left;
font-size: 80%;
margin-top: 20px;
text-align: center;
}

nav#paginator span {
color: #ccc;
}

nav.categories {
color: #aaa;
font-size: 75%;
margin: 0;
padding: 0;
}

nav.categories p {
margin: 0;
padding: 0;
}

p#licence {
font-size: 70%;
}

p.summary {
margin: 5px 0;
}

pre {
background-color: #f5f5f5;
font-size: 80%;
max-height: 300px;
overflow: scroll;
padding: 20px;
}

span.summary {
font-size: 75%;
color: #888;
}

time {
color: #888;
display: block;
margin: 10px 0;
font-size: 80%;
}

ul {
font-size: 90%;
list-style: square inside;
margin: 10px;
padding: 0;
}

ul li {
padding: 5px;
}

ul.categories,
ul.months {
display: grid;
font-size: 90%;
grid-template-columns: 33% 33% 33%;
list-style: none outside;
margin: 20px 0;
}

ul.categories li,
ul.months li {
padding: 0;
margin-bottom: 10px;
}

@media all and (max-width: 750px) {

  article.interviewee img {
  float: none;
  margin: 0;
  width: 100%;
  }

  body {
  font-size: 100%;
  }

  div#wrapper > header {
  padding: 25px 20px 0 20px;
  }

  div#wrapper > header nav {
  font-size: 75%;
  grid-row: 4;
  }

  div#wrapper > header p {
  border: 0;
  font-size: 90%;
  grid-column: 1;
  grid-row: 3;
  padding: 0;
  margin: 25px 0 0 0;
  }

  img {
  height: auto;
  padding: 0;
  width: 100%;
  }

  main, footer {
  padding: 0 20px;
  }

  ul.categories {
  grid-template-columns: 50% 50%;
  }
}