@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;900&display=swap');

* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

article, aside, details, figcaption, figure, footer, header, hgroup, nav, main, section { display: block; }
audio, canvas, video { display: inline-block; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { background: #FFF; font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
html, button, select, input, textarea { font-family: Roboto, helvetica, arial, sans-serif; font-weight: 400; color: #181818; }
body { background: #FFF; margin: 0;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing:antialiased;
  font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  padding: 0 1.4vw;
  min-height: 100vh;
}



@media only screen and (min-width: 1024px) {
  body {
    font-size: calc(5.75px + (10 - 5.75) * ((100vw - 768px) / (1336 - 768)));
  }
}

@media only screen and (max-width: 1023px) {
  body {
    font-size: 62.5%;
  }
}

header,
main {
  position: relative;
  width: 100%;
}

main {
  display: flex;
  padding-bottom: 1.4vw;
}

.logo {
  position: absolute;
  bottom: 1.9vw;
  right: 0;
}

.logo svg {
  width: 7vw;
  height: auto;
}

h1 {
  font-size: 1.75em;
  line-height: 1;
  font-weight: 900;
  text-transform: uppercase;
  border-bottom: 1px solid #181818;
  max-width: 40vw;
  padding-top: 5vw;
  padding-bottom: 1.4vw;
  margin: 0;
}

.partners {
  padding: .9vw 0 .7vw;
}

.partners svg {
  width: 25vw;
  height: auto;
}

.more_info {
  position: absolute;
  bottom: 1vw;
  left: .7vw;
  z-index: 10;
}

.more_info p {
  font-size: 1.5em;
  line-height: 1.3em;
  color: #181818;
}

.more_info a:link,
.more_info a:visited {
  color: #181818;
  text-decoration: underline;
}

.more_info a:hover,
.more_info a:active {
  color: #181818;
  text-decoration: none;
}

video {
  position: relative;
  bottom: 0;
  left: 0;
  width: 100%;
  height: auto;
}

button {
  background: #181818;
  color: #FFF;
  border: 0 none;
  border-radius: 0;
  cursor: pointer;
  padding: .5vw .7vw;
  line-height: 1;
  font-size: 1.5em;

  position: absolute;
  bottom: 2vw;
  right: .7vw;
  z-index: 10;
  transition: background .2s ease-in-out;
}

button:hover {
  background: #434343;
}


@media only screen and (max-width: 1023px) {
  body {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
  }

  .logo {
    bottom: 2.5vw;
  }

  .partners {
    padding: 1.3vw 0 1.1vw;
  }

  button {
    font-size: 1.5em;
  }
}

@media only screen and (max-width: 767px) {
  body {
    min-height: 85vh;
    padding: 0 12px;
  }

  h1 {
    font-size: 1.5em;
    max-width: 100vw;
  }

  .logo {
    bottom: 27.5vw;
  }

  .logo svg {
    width: 33vw;
  }

  .partners svg {
    width: 66vw;
  }

  .more_info {
    bottom: -9vw;
    left: 0;
  }

  p {
    font-size: 2em;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {

  h1 {
    font-size: 2em;
    max-width: 65vw;
  }

  .logo svg {
    width: 12vw;
  }

  .partners svg {
    width: 35vw;
  }

  .more_info {
    bottom: -3vw;
    left: 0;
  }

  p {
    font-size: 2em;
  }
}
