:root {
  --prim-color: #e9af46;
}

html {
  -webkit-text-size-adjust: 100%;
}

html,
body {
  height: 100%;
}

html {
  background-color: #000000;
}

body {
  position: relative;
}

.prim-color {
  color: var(--prim-color);
}

a.active {
  color: var(--prim-color);
}

img.logo.inline {
  display: inline;
  vertical-align: middle;
  margin-right: 4px;
}

.side-image {
  width: 70%;
  height: auto;
}

img.logo.s {
  height: 32px;
  width: 32px;
}

img.logo.s.wide {
  height: 22px;
  width: 32px;
}

img.logo.m {
  height: 64px;
  width: 64px;
}

img.logo.l {
  height: 128px;
  width: 128px;
}

@media (max-width:820px) {
  img.logo.s {
    height: 24px;
    width: 24px;
  }

  img.logo.s.wide {
    height: 22px;
    width: 30px;
  }

  img.logo.m {
    height: 48px;
    width: 48px;
  }

  img.logo.l {
    height: 96px;
    width: 96px;
  }

  .side-image {
    width: 100%;
    height: auto;
  }
}

.hero {
  height: 100vh;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero .message {
  text-align: center;
  width: 60%;
}

@media (max-width:1200px) {
  .hero .message {
    width: 80%;
  }
}

@media (max-width:700px) {
  .hero .message {
    width: 95%;
  }
}

.hero .message img {
  margin: auto;
}

#content {
  width: 60%;
  margin: auto;
}

@media (max-width: 700px) {
  #content {
    width: 85%;
  }
}

/* a {
  color: var(--prim-color);
  transition: color 0.2s;
}

a:hover {
  color: color-mix(in srgb, var(--prim-color) 80%, black 20%);
} */

/* SECTION - BUTTONS ANIMATIONS */
button.prim,
button.second,
a.btnlink.prim,
a.btnlink.second {
  position: relative;
  overflow: hidden;
  border: 1px solid white;
  padding: 10px 30px;
  font-size: 1.75rem;
  font-weight: 800 !important;
  cursor: pointer;
  background: none;
  transition: color 0.4s ease;
  z-index: 1;
  display: inline-block;
  text-decoration: none;
}

button.prim,
a.btnlink.prim {
  color: black;
  background-color: white;
}

button.second,
a.btnlink.second {
  background-color: black;
  color: var(--prim-color);
}

button.prim::before,
button.second::before,
a.btnlink.prim::before,
a.btnlink.second::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 0%;
  z-index: -1;
  transition: height 0.4s ease;
}

button.prim::before,
a.btnlink.prim::before {
  background-color: black;
}

button.second::before,
a.btnlink.second::before {
  background-color: var(--prim-color);
}

button.prim:hover::before,
button.second:hover::before,
a.btnlink.prim:hover::before,
a.btnlink.second:hover::before {
  height: 100%;
}

button.prim:hover,
a.btnlink.prim:hover {
  color: white;
}

button.second:hover,
a.btnlink.second:hover {
  color: black;
}

/* !SECTION - BUTTONS ANIMATIONS */

.image-grid {
  margin-top: 1rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

/* Create three equal columns that sits next to each other */
.column {
  flex: 33%;
  max-width: 33%;
}

.image-grid._2-col>.column {
  flex: 49%;
  max-width: 49%;
}

.column iframe {
  height: 200px;
  border: 0;
}

.column img,
.column iframe {
  vertical-align: middle;
  width: 100%;
  transition: all 0.25s;
  background-color: white;
  margin-top: 8px;
}

@media (max-width: 800px) {

  .image-grid._2-col>.column,
  .column {
    flex: 49%;
    max-width: 49%;
  }
}

@media (max-width: 600px) {

  .image-grid._2-col>.column,
  .column {
    flex: 100%;
    max-width: 100%;
  }
}

/* SECTION - CAROUSEL */
.carousel-wrapper {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
}

.carousel-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  font-size: 2rem;
  padding: 0.5rem 1rem;
  cursor: pointer;
  z-index: 5;
  transition: background 0.2s;
}

.carousel-arrow:hover {
  background: rgba(0, 0, 0, 0.7);
}

.carousel-arrow:active {
  background: rgba(0, 0, 0, 0.75);
}

.carousel-arrow.prev {
  left: 0;
}

.carousel-arrow.next {
  right: 0;
}

.carousel-dots {
  margin-top: 1rem;
  display: flex;
  justify-content: center;
  gap: 0.5rem;
}

.carousel-dots .dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: gray;
  cursor: pointer;
}

.carousel-dots .dot.active {
  background: var(--prim-color);
}

.carousel {
  display: flex;
  overflow: hidden;
  width: 100%;
  background: linear-gradient(270deg, #262626 1%, transparent 15%), linear-gradient(89deg, #262626 1%, transparent 15%);
}

.carousel-img-wrapper {
  background-position: center center;
  background-size: cover;
  height: 200px;
  width: 200px;
  flex: 0 0 auto;
}

.carousel-video-wrapper {
  background-position: center center;
  background-size: cover;
  height: 400px;
  width: 600px;
  flex: 0 0 auto;
  position: relative;
  background-color: black;
}

.carousel-video-wrapper>.carousel-video-title {
  position: absolute;
  text-shadow: 0px 1px 2px black;
  z-index: 2;
  width: 100%;
  background: linear-gradient(0deg, rgba(118, 118, 118, 0) 0%, rgba(0, 0, 0, 0.4) 25%);
  padding: 0 5px;
}

.carousel-video-wrapper>video,
.carousel-video-wrapper>iframe {
  border: 0;
  width: 100%;
  height: 100%;
}

lite-youtube {
  height: 100%;
}

.carousel-content {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  column-gap: 3rem;
  justify-content: center;
  align-items: center;
  margin-right: 3rem;
  cursor: pointer;
  transition: transform 0.5s ease;
}

@media (max-width: 1200px) {
  .carousel-video-wrapper {
    width: 500px;
    height: 281px;
  }

  .carousel-video-wrapper>video,
  .carousel-video-wrapper>iframe {
    width: 500px;
    height: 280px;
  }

  .carousel-content {
    column-gap: 1rem;
  }
}

@media (max-width: 600px) {
  .carousel-video-wrapper {
    width: 85vw;
    height: 48vw;
  }

  .carousel-video-wrapper>video,
  .carousel-video-wrapper>iframe {
    width: 85vw;
    height: 48vw;
  }

  .carousel-content {
    column-gap: 0.5rem;
  }
}

.drag-shield {
  position: absolute;
  inset: 0;
  z-index: 5;
  background: transparent;
  pointer-events: auto;
  display: none;
}


/* !SECTION - CAROUSEL */

.spinner {
  display: inline-block;
  width: 1em;
  height: 1em;
  border: 2px solid #fff;
  border-top-color: transparent;
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
  vertical-align: middle;
}

iframe,
.no-select *,
.no-select {
  -webkit-user-select: none;
  /* Chrome, Safari */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* IE/Edge legacy */
  user-select: none;
  /* Standard */
}