@font-face {
  font-family: "Mont";
  font-display: swap;
  src: url("./fonts/Mont-Regular.otf") format("opentype");
  font-weight: normal;
}

@font-face {
  font-family: "Mont";
  font-display: swap;
  src: url("./fonts/Mont-SemiBold.otf") format("opentype");
  font-weight: 600;
}

@font-face {
  font-family: "Mont";
  font-display: swap;
  src: url("./fonts/Mont-Bold.otf") format("opentype");
  font-weight: bold;
}

html {
  font-size: 10px;
}

html *,
html *:before,
html *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  min-height: 100vh;
  margin: 0;
  padding: 0;
  font-family: "Mont", sans-serif;
  color: #fff;
  text-align: center;
}

p {
  font-size: 1.3rem;
  line-height: 1.8rem;
  color: #fff;
  margin: 1.6rem auto 0;
  text-align: center;
}

.tipsters {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  overflow-x: auto;
  min-height: calc(100vh - 65px);
  -webkit-overflow-scrolling: touch;
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
}

.tipster {
  width: 100vw;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  overflow-y: auto;
  padding: 1.6rem;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  scroll-snap-align: start;
}

#gentleman {
  background-color: #06c68d;
}

#cockney {
  background-color: #f86c6c;
}

.tipster-content {
  display: inherit;
  -webkit-box-orient: inherit;
  -webkit-box-direction: inherit;
  -ms-flex-direction: inherit;
  flex-direction: inherit;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  max-width: 1440px;
  margin: auto;
}

.tipster h2 {
  font-size: 6vw;
  font-weight: bold;
  margin: auto;
  text-transform: uppercase;
  margin: 8px auto 0;
}

.tipster h3 {
  margin: 2vh auto 3vh;
}

.tipster h3 a {
  font-size: 1.3rem;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
}

.tbt-logo {
  max-width: 56px;
  height: auto;
  margin: 2vh auto;
}

.character {
  max-width: 50%;
  height: auto;
  -ms-flex-item-align: center;
  align-self: center;
  margin: auto auto 4vh;
}

.tipster a.button {
  width: 90%;
  font-size: 16px;
  font-weight: bold;
  border: 3px solid #fff;
  background: none;
  border-radius: 3px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  padding: 2vh 1.6rem;
  margin: auto auto 0.8rem;
  cursor: pointer;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.tipster a.button:hover {
  background-color: #fff;
}

#gentleman a.button:hover {
  color: #06c68d;
}
#cockney a.button:hover {
  color: #f86c6c;
}

.tipster-navigation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: calc(100% - 3.2rem);
  margin: auto;
  position: absolute;
  top: 50vh;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.tipster-navigation a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-decoration: none;
  line-height: 1rem;
}

.tipster-navigation span {
  font-size: 2.4rem;
  font-weight: 600;
  color: #fff;
  line-height: 1;
  margin: auto auto 0;
}

.tipster-navigation .next {
  margin-left: auto;
}
.tipster-navigation .next span {
  margin-right: 0.8rem;
}

.tipster-navigation .prev {
  margin-right: auto;
}

.tipster-navigation .prev span {
  margin-left: 0.8rem;
}

footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #000;
  padding: 0;
  margin-top: auto;
}

footer a {
  display: inherit;
  padding: 1.6rem 1.6rem 2.4rem;
  width: 100%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

footer img {
  width: 100%;
  height: auto;
}

.age-rating {
  max-width: 25px;
  margin-right: 8px;
}

.gamble-aware {
  max-width: 100px;
}
.desktop {
  display: none;
}

@media (min-width: 768px) {
  .tbt-logo {
    max-width: 64px;
    margin: 1.6rem;
  }
  p {
    font-size: 1.6rem;
    line-height: 1.25;
  }
  .tipster h2 {
    font-size: 4.8rem;
  }
  .tipster h3 {
    margin: 3.2rem auto 1.6rem;
  }
  .tipster h3 a {
    font-size: 2.4rem;
  }
  .character {
    max-width: 40%;
    margin: auto auto 3.2rem;
  }
  .tipster a.button {
    padding: 1.6rem;
  }
}

@media (min-width: 1024px) {
  .desktop {
    display: block;
  }
  .mobile {
    display: none;
  }
  body {
    text-align: left;
  }
  p {
    font-size: 2.4rem;
    line-height: 1.25;
    text-align: left;
  }
  .tipster-content {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .tipster-details {
    max-width: 800px;
  }
  .character {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
    max-width: 400px;
    margin: auto;
  }
  .tbt-logo {
    max-width: 100%;
    margin-right: auto;
  }
  .tipster h2 {
    font-size: 6.4rem;
  }
  .tipster h3 {
    font-size: 2.4rem;
  }
  .tipster a.button {
    max-width: 200px;
    margin: 3.2rem 0 auto;
  }
  .tipster-navigation {
    position: -webkit-sticky;
    position: sticky;
    bottom: 0;
    top: auto;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    margin-bottom: 0.8rem;
  }
}
