:root {
  --color1: 
  #C0D6DF;
  --color2: 
  #4A6FA5;
  --color3: 
  #166088;
  --color4: 
  #4F6D7A;
  --color5: 
  #DBE9EE;
}

@font-face {
  font-family: "Linux Biolinum O";
  font-style: normal;
  font-weight: normal;
  src: url("fonts/LinBiolinum_R.otf") format("opentype");
}

@font-face {
  font-family: "Linux Biolinum O";
  font-style: italic;
  font-weight: normal;
  src: url("fonts/LinBiolinum_RI.otf") format("opentype");
}

@font-face {
  font-family: "Linux Biolinum O";
  font-weight: bold;
  font-style: normal;
  src: url("fonts/LinBiolinum_RB.otf") format("opentype");
}

@font-face {
  font-family: "Fira Mono";
  src: url("fonts/FiraMono-Regular.otf") format("opentype");
}

body {
  margin: 0;
  background-color: var(--color1);
  font-family: 'Linux Biolinum O', sans-serif;
}

section.stream p {
  font-size: 120%;
}

header {
  text-align: center;
  background-color: var(--color1);
  height: 10em;
  padding-top: 1ex;
}

main {
  padding-left: 1em;
  padding-right: 1em;
}

footer {
  text-align: center;
  height: 5em;
}

header h1 {
  font-size: 250%;
}

header h1 a {
  text-decoration: none;
  color: black;
}

header h2 {
  font-size: 175%;
  font-style: italic;
}

/*
main p {
  max-width: 40em;
}
*/

div.streams {
  margin-left: -1em;
  margin-right: -1em;
  display: flex;
  flex-direction: column;
  height: 100%;
}

section.stream {
  height: 33%;
  padding: 1em;
}

section.stream h1, .software h1 a, .music h1 a, .writing h1 a, .villancicos h1 a {
  color: var(--color5);
}

.software {
  background-color: var(--color2);
}

.music, .villancicos {
  background-color: var(--color3);
}

.writing {
  background-color: var(--color4);
}


section.stream h1 {
  font-size: 200%;
  margin-top: 0;
  margin-left: 1em;
}

section.stream p {
  width: 80%;
  margin-left: 4em;
  margin-right: 1em;
}

section.stream a {
  display: block;
  text-align: right;
  padding-right: 1em;
  padding-bottom: 1em;
  color: white;
  text-decoration: none;
}

section.stream a::after {
  content: " ⇒";
}

a.panel {
  text-decoration: none;
  color: inherit;
}



footer p {
  font-size: 80%;
}

section.text { 
  margin-left: auto;
  margin-right: auto;
  max-width: 40em;
}

div.card-container {
  display: flex;
  flex-direction: row;
  overflow: scroll;
}

section.card {
  min-width: 16em;
  max-height: 28em;
  border: 1px solid black;
  padding: 1em;
  margin: 1ex;
  overflow: scroll;
  background: linear-gradient(var(--color2), var(--color3));
  color: white;
  display: flex;
  flex-direction: column;
}

section.card h2 {
  color: var(--color1);
}

section.card a {
  color: PaleTurquoise; /* TODO */
}

section.card a.highlight {
  color: PaleTurquoise;
  font-size: 120%;
  font-weight: bold;
  margin-top: 1ex;
  height: 1em;
}

section.card code {
  font-family: "Fira Mono", monospace;
  font-size: 82%;
}

section.card h1 {
  font-size: 150%;
  margin-top: 0;
}

section.card h2 {
  font-size: 125%;
}

section.card ul {
  font-size: 90%;
  padding-left: 1.5em;
}

section.card img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

section h1 {
  font-size: 160%;
}

section h2 {
  font-size: 130%;
}


td + td {
  padding-left: 1em;
}

table.cv {
  border-top: 1px solid Gray;
  border-bottom: 1px solid Gray;
  padding-left: 1ex;
  padding-right: 1ex;
}

table.cv td:nth-child(1) {
  width: 30%;
}

table.cv td:nth-child(2) {
  width: 30%;
}

table.cv td:nth-child(3) {
  width: 20%;
}

ul.pubinfo {
  list-style: none;
}

iframe {
  margin-left: auto;
  margin-right: auto;
  width: 25em;
  height: 15em;
}

video {
  width: 16em;
  margin-left: auto;
  margin-right: auto;
}
