:root {
  --bg: #e4e4e4;
  --bg2: #d4d4d4;
  --primary: #ff9800;
  --primary-text: #000;
  --secondary: #9b59b6;
  --secondary-text: #fff;
  --secondary-dark: #814b96;
  --text: #000;

  --header-height: 64px;
  --font-mono: 'DejaVu Mono', monospace;
  --font-sans: 'DejaVu Sans', Arial, Helvetica, sans-serif;
  --font-serif: 'DejaVu Serif', Times, 'Times New Roman', serif;
}

body {
  margin: 0;
  padding: 0;
  background-color: var(--bg);
  color: var(--text);
  font-family: var(--font-serif);
}

p {
  font-family: var(--font-serif);
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 900;
  font-family: var(--font-);
}

h1 {
  font-size: 32px;
}

h2 {
  font-size: 26px;
}

button {
  font-family: 'DejaVu Sans', sans-serif;
}

header {
  position: fixed;
  width: 100vw;
  top: 0;
  left: 0;
  margin: 0;
  height: var(--header-height);
  background-color: var(--primary);
  color: white;
  box-shadow: #666 0px 2px 3px;
  z-index: 2048;
}

header > div {
  display: flex;
  flex-direction: row;
  align-items: center;
  color: white;
  width: 100%;
  height: 100%;
}

header > div > .brand {
  min-width: 12em;
  font-weight: bold;
  color: var(--primary-text);
  display: flex;
  align-items: center;
}

.trans-cont {
  height: var(--header-height);
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 24px;
}

/* Mobile menu bar */

.header-menu {
  display: flex;
  flex-direction: row;
  height: 100%;
}

.navegation {
  display: flex;
  flex-direction: row;
  height: 100%;
}

.header-links {
  display: flex;
  flex-direction: row;
  flex-wrap: no-wrap;
  height: 100%;
}

.header-links > a {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  min-width: 6em;
  height: 100%;
  padding: auto;
  margin: 0;
  transition: background-color ease 0.2s;
  border-width: 0;
  cursor: pointer;
  text-decoration: none;
  color: var(--primary-text);
}
.header-links > a:hover {
  background-color: rgba(255, 255, 255, .3);
  box-shadow: none;
}
.header-links > a.active {
  background-color: rgba(255, 255, 255, .3);
}

#header-menu-check {
  position: relative;
  top: -2px;
  left: -72px;
  width: 72px;
  height: var(--header-height);
  opacity: 0;
  z-index: -1;
}
label.header-menu-check-label {
  margin: 0;
  padding: 0;
  /* background-color: #353; */
}
label.header-menu-check-label > div {
  width: 72px;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

span.hbm {
  position: relative;
  display: block;
  width: 33px;
  height: 4px;
  margin-bottom: 5px;
  position: relative;
  background: var(--primary-text);
  border-radius: 3px;
  z-index: 1;
  transform-origin: 4px 0px;
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
  background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
  opacity 0.55s ease;
  &:first-child {
    transform-origin: 0% 0%;
  }
  &:nth-last-child(2) {
    transform-origin: 0% 100%;
  }
}

#header-menu-check:checked ~ span.hbm {
  background: pink;
}

#header-menu-check,
.header-menu-check-label {
  display: none;
}

@media only screen and (max-width: 600px) {
  #header-menu-check,
  .header-menu-check-label {
    display: revert;
  }

  .navegation {
    visibility: hidden;
    position: fixed;
    top: var(--header-height);
    left: -80vw; /* Set to 0 when displaying for left to right animation */
    background-color: var(--bg);
    width: 80vw;
    height: calc(100vh - var(--header-height));
    padding-bottom: 64px;
    flex-direction: column;
    align-items: flex-start;
    transition: left 0.2s, visibility 0.2s;
    box-shadow: #666 2px 3px 3px;
  }

  .header-links {
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
  }

  .header-links > a {
    width: calc(100% - 24px);
    justify-content: flex-start;
    padding-left: 24px;
    height: var(--header-height);
  }
  .header-links > a.active {
    font-weight: bold;
  }

  #header-menu-check:checked ~ .navegation {
    visibility: visible;
    left: 0;
  }
}

/* END Mobile menu bar */


.spacer {
  width: 100%;
}

.main {
  margin-top: var(--header-height);
  /* margin-bottom: 32px; */
  display: flex;
  flex-direction: column;
  width: calc(100vw - 24px*2);
  padding: 24px;
}

.center-h {
  display: flex;
  align-items: center;
}

article {
  background-color: #e4e4e4;
  box-shadow: #666 0px 0px 3px;
  max-width: 900px;
  width: 100%;
  padding: 24px;
  margin-top: 32px;
  border-radius: 10px;
  margin-bottom: 2em;
  text-align: justify;
}

button {
  background-color: var(--secondary);
  color: var(--secondary-text);
  border-style: solid;
  border-color: var(--secondary-text);
  border-width: 0px;
  border-radius: 10px;
  font-size: 1em;
  padding: .5em 1em .5em 1em;
  box-shadow: 0px 0px 0px #666;
  transition: box-shadow ease 0.2s;
}

button:hover {
  box-shadow: 0px 2px 4px #666;
}

button:active {
  background-color: var(--secondary-dark);
}



footer {
  /* position: fixed; */
  width: 100vw;
  /* bottom: 0;
     left: 0; */
  margin: 0;
  height: 32px;
  background-color: var(--primary);
  color: white;
  box-shadow: #666 0px 2px 3px;
  z-index: 2048;
  display: flex;
  align-items: center;
  justify-content: center;
}

footer > p {
  display: block;
  color: var(--primary-text);
}
