@import url("fonts/Poppins/poppins.css");
@import url("fonts/Nippo/nippo.css");
@import url("fonts/Michroma/michroma.css");

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  --ff-Poppins: "Poppins-Regular";
  --ff-Nippo: "Nippo-Regular";
  --ff-Nippo-light: "Nippo-Light";
  --ff-Nippo-Extralight: "Nippo-Extralight";
  --ff-Michroma: "Michroma";
  /* Colours */
  --black: #000000;
  --white: #ffffff;
  --green: #058c42;
  --blue: #1d56fa;
  --gold: #ffc857;
  /* Typography */
  --small: 16px;
  --medium: 1.25rem;
  --large: 1.44rem;
  --x-large: 2.074rem;
  --xl-large: 3rem;
  --xxl-large: 4rem;
}

body {
  background-color: var(--black);
  color: ivory;
  font-family: var(--ff-Poppins);
  min-height: 100vh;
  width: 100%;
}

p {
  font-size: var(--small);
}

h1 {
  font-size: var(--xxl-large);
}

i {
  font-size: 24px;
  color: white;
}

.button {
  background-color: var(--blue);
  color: var(--white);
  font-family: var(--ff-Nippo);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 24px;
  font-size: 20px;
  border: 2px solid transparent;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.button:hover {
  background-color: transparent;
  border: 2px solid var(--blue);
  transform: scale(1.05);
}

.buttonInverse {
  background-color: transparent;
  border: 2px solid var(--green);
  color: var(--white);
  font-family: var(--ff-Nippo);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 24px;
  font-size: 20px;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.buttonInverse:hover {
  background-color: var(--green);
  transform: scale(1.05);
}

ul li {
  list-style: none;
}

.listItem {
  font-size: 20px;
  transition: all 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
  cursor: pointer;
}

.listItem a {
  text-decoration: none;
  color: inherit;
}

.listItem:hover {
  color: var(--gold);
  transform: scale(1.05);
}

section {
    overflow-x: hidden;
}

.overlay {
  position: fixed;        
  top: 0;
  left: 0;
  width: 100%;
  height: 100dvh;         
  background-color:black;
  display: none;          
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 30px;
  z-index: 9999;          
}

.overlay.active {
  display: flex;
}


@media (min-width: 769px) {
  .overlay {
    display: none !important;
  }
}

.mobTopbar {
  position: relative;
  z-index: 10000;
}

body.no-scroll {
  overflow: hidden;
}

/* Hide everything inside the nav and sections initially */
.navBar, section {
  opacity: 0;
  visibility: hidden;
}

/* We will add this class via JS once the loader finishes */
.is-loaded .navBar, 
.is-loaded section {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.5s ease;
}