:root {
  --link: #069bd6;
  --bg: #fff;
  --text: #000;
}


/* Header */

.bread {
  text-align: left;
  position: fixed;
  left: 3vw;
  width: 94vw;
  top: 0;
  line-height: 7vh;
  border-bottom: 1px solid grey;
  margin-bottom: 2vh;
  background-color: white;

  a, span {
    margin-right: 1vh;
    font-size: 1.7vh;
    font-weight: 400;
  }

  a.current {
    text-decoration: none;
    color: var(--text);
  }

  button {
    display: none;
    transform: rotate(90deg);
  }

}

@media screen 
  and (max-device-width: 420px) {

  .bread {
    line-height: 6vh;
    text-align: center;
    width: 100%;
    left: 0;
    padding: 0 3vh;
    text-align: left;
    .links {
      display: none;
      padding: 0 0 8vw 0;
      text-align: center;    
    }
    &.open .links {
      display: block;
    }
    a, span {
      font-size: 2vh;
    }
    button {
      display: inline;
    }
    button.hambug {
      display: inline;
    }
    button.cross {
      display: none;
    }
    &.open button.hambug {
      display: none;
    }
    &.open button.cross {
      display: inline;
    }
  }

}



/* Scroll Area */

.content {
  margin-left: 3vw;
  margin-top: 9vh;
  height: 87vh;
}

@media (orientation: portrait) {
  .content {
    overflow-x: auto;
  }
}

.scroller {
  display: flex;
  flex-direction: row;
  gap: 3vh;
  height: 100%;
}

.scroller .text img,
.scroller .text video {
  width: 100%;
  display: block;
}

.scroller .text > div {
  aspect-ratio: 1 / 2;
  height: 100%;
  max-width: 80vw;
}

/* Figures */

.figure {
  height: 100%;
}

.figure img,
.figure video {
  max-height: 80%;

  &.small {
    height: 60%;
  }
}

.figure iframe {
  aspect-ratio: 16 / 9;
  width: 50vw;
}

@media (orientation: portrait) {
  .figure img {
    max-height: 50%;
  }
}

.figure p {
  max-width: 90vw;
}

/* Footer */

.footer .spacer {
  height: 100%;
  width: 100vw;
  text-align: center;
}

.footer .sitter {
  height: 100%;
  background: url('../assets/chairsitter.jpg') no-repeat center;
  background-size: contain;
  flex: 1;
}

.footer .contactinfo {
  height: 100%;
  display: flex;
  flex-flow: column;
  font-weight: 300;
  a {
    line-height: 2.6vh;
    flex: 0;
    margin: 0 .5vh;
  }
  h4 {
    font-size: 3vh;
    line-height: 3vh;
  }
  p.email {
    font-size: 3vh;
    line-height: 3vh;
  }
  p.links {
    line-height: 2vh;
    font-size: 2vh;
  }
}


/* Opener */

.opener .spacer {
  width: 91vw;
  height: 100%; 
  background: url('../assets/hedge.jpg') no-repeat center;
  background-size: cover;
  display: flex;
  flex-direction: column-reverse;

  h1 {
    font-weight: 1000;
    color: var(--bg);
    padding: 9vh;
    font-size: 15vh;
    line-height: 12vh;
    letter-spacing: -0.5vh;
    margin: 0;
  }
}

@media (orientation: portrait) {
  .opener .spacer h1  {
    font-weight: 1000;
    color: var(--bg);
    padding: 1vh;
    font-size: 7vh;
    line-height: 6vh;
    letter-spacing: -.25vh;
  }
}

/* Buttons */

a.button {
  display: block;
  border-top: 1px solid var(--link);
  padding: 2.3vh 3vh;
  margin-top: 4.6vh;
  font-weight: 400;
  font-size: 2vh;

  &:hover {
    color: var(--bg);
    background-color: var(--link);
    transition: 200ms;
    font-weight: 400;
    text-decoration: none;
  }

}


/* Typography */

h1, h2 {
  font-weight: 100;
  font-size: 4.3vh;
  line-height: 5.3vh;
  margin-bottom: 1.6vh;
}

h3 {
  font-weight: 100;
  font-size: 3.8vh;
  line-height: 4.7vh;
  margin-top: 1.8vh;
  margin-bottom: 1vh;
}

body {
  font-size: 2.2vh;
  font-weight: 100;
}

.figure p {
  font-style: italic;
}

a {
  color: var(--link);
}

a:hover {
  text-decoration: underline;
}
