:root {
  --h1-fontSize: 6.854rem;
  --h4-fontSize: 4.236rem;
  --h5-fontSize: 2.618rem;
  --h6-fontSize: 1.618rem;
  --p-fontSize: 1rem;
  --r-fontSize: 1.2rem;
  --nav-weight: 800;
  --boldWeight: 800;
  --article-title-weight: 800;
  --article-text-weight: 400;
  --bg-Colour: #f4f4f4;
  --s-Colour: #c7c7c7;
  --w-Colour: #fff;
  --b-Colour: #282828;
  --bg-fade-ms: 1000ms;
  --w: 100svw;
  --h: 100svh;
}

@font-face {
  font-family: "SuisseIntl-Medium";
  src: url(../font/SuisseIntl-Medium.otf);
}

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

html,
body {
  margin: 0;
  padding: 0;
  font-family: "SuisseIntl-Medium";
  scroll-behavior: smooth;
  font-size: 62.5%;
  background-color: var(--bg-Colour);
  overflow-x: hidden;
  -webkit-animation: fadeInAnimation ease 3s;
  animation: fadeInAnimation ease 3s;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-font-smoothing: antialiased;
}

@-webkit-keyframes fadeInAnimation {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeInAnimation {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

::-webkit-scrollbar {
  display: none;
}

/* navigation bar */
.desktop-nav-container {
  position: fixed;
  display: flex;
  width: calc(100svw - 2rem);
  justify-content: space-evenly;
  align-items: flex-start;
  margin: 1rem;
  padding: 0;
  z-index: 1000;
}

.nav-item {
  font-size: var(--p-fontSize);
  text-transform: uppercase;
  text-align: left;
  margin: 0;
  padding: 0;
  cursor: pointer;
}

.nav-item a {
  display: flex;
  align-items: baseline;
  text-decoration: none;
  color: var(--s-Colour);
  overflow: hidden;
}

.reveal-text {
  max-width: 0;
  opacity: 0;
  white-space: nowrap;
  transition: max-width 0.5s ease-in-out, opacity 0.3s ease-in-out;
  display: inline-block;
}

.nav-item a:hover .reveal-text {
  max-width: 300px;
  opacity: 1;
}

.mobile-nav,
.openbtn,
.hamburger,
.logo {
  display: none;
}

/* nav phone */
@media screen and (max-width: 768px) {
  .desktop-nav-container {
    display: none;
  }

  .mobile-nav {
    position: fixed;
    display: block;
    height: 100svh;
    width: 0;
    z-index: 4;
    top: 0;
    left: 0;
    background-color: var(--bg-Colour);
    overflow: hidden;
    transition: ease-in-out 0.2s;
  }

  .m-n-content {
    position: relative;
    top: 25%;
    width: calc(100svw - 4rem);
    margin: 0 2rem;
    text-wrap: nowrap;
    transition: ease-in-out 0.2s;
  }

  .m-n-content a {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin: 0;
    padding: 0 0 2rem 0;
    font-size: var(--h6-fontSize);
    text-decoration: none;
    text-transform: uppercase;
    color: var(--b-Colour);
  }

  .hamburger {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    cursor: pointer;
    width: 100svw;
    margin: 0%;
    padding: 2rem;
    filter: invert(1);
    mix-blend-mode: difference;
    z-index: 2;
  }

  .logo-item {
    width: 50%;
  }

  .closebtn {
    position: absolute;
    text-align: right;
    font-size: var(--h6-fontSize);
    text-transform: uppercase;
    text-decoration: none;
    color: var(--b-Colour);
    width: 100%;
    margin: 0;
    padding: 2rem;
  }
}