body {
  background-color: #212121;
  color: #FFFCFA;
  text-align: center;
  font-family: "Mulish";
  overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
  font-family: "Baskervville"
}

h1 {
  font-size: 2rem;
}

h2 {
  font-size: 1.6rem;
}

p {
  font-size: 1rem;
}

hr {
  margin-top: 1%;
}

/* Coloured Sections */
.section-white {
  background-color: #FFFCFA;
  color: #1b1b1b;
}

/* Section Padding */
.section {
  padding: 48px 10%
}

/* Buttons */
.btn {
  font-size: 1.1rem;
  border-radius: 2rem;
  padding: 0.5rem 1.5rem;
}

.btn-outline-dark, .btn-outline-light:hover {
  color: #1b1b1b;
  background-color: #FFFCFA;
}

.btn-outline-light, .btn-outline-dark:hover {
  color: #FFFCFA;
  background-color: #212121;
}

/* Main Title */
#main-title {
  padding: 2rem 0 0 0;
}

.title {
  font-family: "Cinzel";
}

/* Navbar */
@media only screen and (min-width: 62.5em) {
  #header {
    padding: 0 15% 0 15%;
  }
}

@media only screen and (max-width: 62.4375em) {
  .dropdown-menu.show {
    text-align: center;
  }
}

.navbar .navbar-brand, .navbar .nav-item .nav-link {
  color: #FFFCFA;
  font-size: 1.2rem;
  font-family: "Mulish";
  font-weight: normal;
}

.navbar .navbar-brand {
  font-weight: bold;
  font-size: 1.5rem;
}

.sticky-top {
  background-color: rgb(33, 33, 33);
  background-color: rgba(33, 33, 33, 0.7);
}

.navbar {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}

/* Info Section */
@media only screen and (min-width: 62.5em) {
  #info {
    padding: 7% 25%;
  }
}

@media only screen and (max-width: 62.4375em) {
  #info {
    padding: 5% 10%;
  }
}

/* Videos Page */
@media only screen and (min-width: 62.5em) {
  .video-block {
    padding: 4% 6%;
  }
}

@media only screen and (max-width: 62.4375em) {
  .video-block {
    padding: 12% 8% 8%;
  }
}

/* Contact */
#contact p {
  padding-top: 5%;
}

.contact-form button:focus {
  box-shadow: none;
}

#contact label, #contact .col-sm-12 {
  padding-top: 3%;
}

#status {
  padding-top: 3%;
  font-size: 1.1rem;
}

/* Follow Me */
#follow p {
  padding: 1.5rem 0;
}

#follow a p {
  padding: 0;
  margin-bottom: 0;
}

#follow a {
  font-size: 1.3rem;
  text-decoration: none;
  color: #1b1b1b;
  transition: opacity 0.2s;
  width: auto;
}

#follow a:hover {
  opacity: 0.7;
}

#follow i {
  font-size: 3.5rem;
}

#follow .row {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  gap: 2rem;
}

@media only screen and (max-width: 62.4375em) {
  #follow .row {
    gap: 0.75rem;
  }
}

/* Icons */
.fa-facebook-square {
  color: #4267B2;
}

.fa-youtube {
  color: #FF0000;
}

.fa-instagram-square {
  color: transparent;
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
  background: -webkit-radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
  background-clip: text;
  -webkit-background-clip: text;
}

/* Footer */
footer {
  color: #D3D3D3;
  padding: 2.5% 7%;
}

footer p {
  font-size: 0.9rem;
  margin-bottom: 0;
}

/* About Me Page */
.divider {
  padding-top: 3%;
  background-color: #212121;
}

#about-me, #about-me-new {
  overflow-x: hidden;
  padding-bottom: 0;
}

#about-me-text {
  padding-left: 8%;
  padding-right: 8%;
}

@media only screen and (min-width: 62.5em) {
  #about-me {
    padding-bottom: 0;
  }
  #about-me-new {
    padding-top: 0;
    padding-bottom: 0;
  }
}

@media only screen and (max-width: 62.4375em) {
  #about-me-text {
    padding-top: 5%;
  }
}

/*#gear {*/
/*  overflow-x: hidden;*/
/*  padding: 0;*/
/*}*/

/*#gear h1 {*/
/*  padding: 5% 0;*/
/*}*/

/*#gear h2 {*/
/*  padding-bottom: 3%;*/
/*}*/

.text-block {
  padding: 1rem 3rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

@media only screen and (max-width: 62.4375em) {
  .text-block {
    padding-top: 2rem;
  }
}

/*@media only screen and (min-width: 62.5em) {*/
/*  #gear .text-block {*/
/*    padding: 4% 6%;*/
/*  }*/

/*}*/

/*@media only screen and (max-width: 62.4375em) {*/
  /*#gear .text-block {*/
  /*  padding-left: 8%;*/
  /*  padding-right: 8%;*/
  /*}*/
/*  #gear .col-lg-6 {*/
/*    padding-top: 6%;*/
/*    padding-bottom: 6%;*/
/*  }*/
/*  #gear h1 {*/
/*    padding: 8% 0;*/
/*  }*/
/*}*/

/* Top Video */
.header-section {
  position: relative;
  z-index: 1;
  height: auto;
}

.header-section .ratio {
  position: relative;
  overflow: hidden;
  height: 100%;
}

.header-section video, .header-section img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: 100%;
  z-index: -1;
}

.header-section video {
  filter: brightness(0.75);
}

.header-section h1, .header-section h3 {
  position: absolute;
  width: 100%;
  margin: auto;
  height: 1px;
  color: white;
  padding: 0 5%;
}

.header-section h1 {
  top: 40%;
}

.header-section h3 {
  top: 55%;
}

@media only screen and (max-width: 87.5em) {
  #top-img {
    height: 700px;
  }

  #top-video {
    height: 750px;
  }
}

@media only screen and (max-width: 62em) {
  #top-img {
    height: 600px;
  }

  #top-video {
    height: 650px;
  }
}

@media only screen and (max-width: 48em) {
  #top-img {
    height: 500px;
  }

  #top-video {
    height: 600px;
  }

  .header-section h1 {
    top: 40%;
  }

  .header-section h3 {
    top: 60%;
  }
}

@media only screen and (max-width: 36em) {
  #top-img {
    height: 350px;
  }

  #top-video {
    height: 450px;
  }

  .header-section h1 {
    top: 30%;
  }

  .header-section h3 {
    top: 60%;
  }
}

/* Gallery */
.gallery .ratio:hover img {
  transform: scale(1.25);
  opacity: 75%;
  transition: all .3s linear;
}

.gallery .ratio img {
  transform: scale(1);
  opacity: 100%;
  transition: all .3s linear;
}

.gallery .ratio, .gallery .ratio:hover {
  overflow: hidden;
}

/* Instagram Fix */
iframe.instagram-media {
  min-width: auto !important;
}

/* Image Compare */
.image-compare {
  height: 100% !important;
}

.ratio-16x9.r3x2 {
  --bs-aspect-ratio: 66.66%;
}

.avatar {
  border-radius: 100%;
  width: 100px;
  height: 100px;
  padding: 0;
  border: none;
}

.avatar.border {
    border: 1px solid #686668 !important;
}

.fas.fa-star {
  display: inline-block;
  color: #FFD700;
  width: auto;
  padding: 0 4px;
}
