:root {
  --text: #FDDF86;
  --title-text: #F9A90D;
  --title-text-alt: #E85D11;
  --title-grad: linear-gradient(to bottom, #F9A90D 0%, #E85D11 100%);
  --title-grad-reverse: linear-gradient(to bottom, #E85D11 0%, #F9A90D 100%);
  --bg: #0B3C5A;
  --bg-grad: linear-gradient(to bottom, #0B3C5A 0%, #1F1A39 100%);
  --bg-alt: #1F1A39;
  --btn-fill: #E13C1E;
  --btn-fill-2: #960F41;
  --btn-grad: linear-gradient(to bottom, #E13C1E 0%, #960F41 100%);
  --btn-grad-reverse: linear-gradient(to bottom, #960F41 0%, #E13C1E 100%);
  --btn-border: #F88B08;
  --maxw: 940px;
  --anim-duration: 1.67s;
}

/* Base layout */
html,
body {
  height: 100%;
}

body {
  /* min-height: 100vh; */
  /* height: 100dvh; */
  width: 100svw;
  /* min-width: min-content; */
  margin: 0;
  padding: 0;
  /* background: radial-gradient(1200px 800px at 70% 20%, rgba(255, 255, 255, 0.06), transparent 60%) var(--bg); */
  /* background: var(--bg-grad); */
  background-color: var(--bg);
  color: var(--text);
  font-family: "Spline Sans";
}

header {
  background-color: var(--bg);
}

section {
  text-align: center;
  max-width: 100vw;
  margin: 0;
  height: auto;
  /* padding: 25px 0; */
}

.hero:first-of-type {
  min-height: 100lvh;
}

/* Title + copy */
.title {
  color: transparent;
  background-image: var(--title-grad);
  background-clip: text;
  -webkit-background-clip: text;
  font-family: "Tourney", ui-serif, serif;
  font-weight: 600;
  font-size: clamp(25pt, 16svw, 50pt);
  width: 100%;
  white-space: nowrap;
  line-height: 1;
  margin: 0;
  padding: 0;
  text-transform: uppercase;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.subtitle {
  font-family: "Spline Sans";
  font-size: clamp(15pt, 7vw, 30pt);
  font-weight: 500;
  margin: 0;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
}

#indica-title, #sativa-title {
  /* width: 100%; */
  font-size: clamp(20pt, 25vw, 75pt);
}
#sativa-title {
  background-image: var(--title-grad-reverse);
  background-clip: text;
}

.description {
  font-size: clamp(16pt, 1.5rem, 20pt);
  max-width: 500px;
  font-weight: 300;
}

.description strong {
  font-weight: 600;
}

.vstack {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 25px;
}

.hstack {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  place-content: center;
  place-items: center;
  gap: 25px;
}

.dstack {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 25px;
}

@media (min-width: 1000px) {
  .dstack {
    display: flex;
    flex-direction: row;
    place-content: center;
    align-items: center;
  }
}

.spacer {
  flex-grow: 1;
  height: 100%;
}

.hero {
  background: var(--bg-grad);
  background-color: var(--bg);
  padding: 25px 0;
}

.screenshot {
  width: auto;
  height: auto;
  max-width: 90vw;
  max-height: 90lvh;
  opacity: 1;
}

.poster {
  object-fit: contain;
  width: 100vw;
  max-width: 500px;
}

.introduction {
  background-image: url(background-horizontal.jpg);
  overflow: hidden;
  padding: 25px 0;
  /* display: flex; */
  /* place-content: center; */
}

@media (max-width: 700px) {
  .introduction {
    background-position: 450px 100px;
  }
}

.app-store-buttons {
  padding: 25px 0;
}

.square {
  aspect-ratio: 1;
}

.rounded-rect {
  /* width: 80vw; */
  height: auto;
  background: var(--bg-grad);
  border-radius: 50px;
  /* margin: 25px 12.5px; */
  margin: 12.5px 25px;
  padding: 25px;
  text-align: start;
  display: inline-block;
}

.background {
  /* width: auto;
  height: 100%; */
  /* width: 100%; */
  /* height: auto; */
  /* height: 100vh; */
  position: absolute;
  height: 100%;
  top: 0px;
  left: 0;
  z-index: -1;
  border: 1px solid red;
}

.prescrollup {
  background-position: 0 0;
}

@keyframes scrollleft {
  from {
    left: 0;
  }
  to {
    left: -180px;
  }
}
.scrolling {
  animation-name: scrollleft;
  animation-duration: 15s;
  animation-fill-mode: forwards;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}

.zstack {
  display: grid;
  place-items: center;
  position: relative;
}

.zstack > * {
  grid-row: 1;
  grid-column: 1;
}

@keyframes fadeout {
  from {
    opacity: 1;
    visibility: visible;
  }
  to {
    opacity: 0;
    visibility: hidden;
  }
}

@keyframes fadein {
  from {
    opacity: 0;
    visibility: hidden;
  }
  to {
    opacity: 1;
    visibility: visible;
  }
}

@keyframes fadeinout {
  0% {
    opacity: 0;
    visibility: hidden;
  }
  10% {
    opacity: 1;
    visibility: visible;
  }
  50% {
    opacity: 1;
    visibility: visible;
  }
  60% {
    opacity: 0;
    visibility: hidden;
  }
  90% {
    opacity: 0;
    visibility: hidden;
  }
}

.prefadein {
  opacity: 0;
  visibility: hidden;
}

#incorrectImg {
  animation-duration: 3.67s;
}

.fadein {
  /* opacity: 1; */
  /* visibility: visible; */
  animation-name: fadein;
  animation-duration: var(--anim-duration);
  animation-delay: var(--anim-duration);
  animation-fill-mode: both;
  animation-timing-function: ease-in-out;
}

.fadeinout {
  /* opacity: 1; */
  /* visibility: visible; */
  animation-name: fadein;
  animation-duration: var(--anim-duration);
  animation-delay: var(--anim-duration) * 2s;
  /* animation-delay: 3s; */
  /* animation-fill-mode: both; */
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: ease-in-out;
}

.fadeinoutslow {
  animation-name: fadeinout;
  animation-duration: 15s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
}

/* Button */
.cta {
  --pad-y: 1.05rem;
  --pad-x: 2.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: var(--btn-grad);
  color: var(--text);
  border: 5px solid var(--btn-border);
  border-radius: 46px;
  font-weight: 700;
  font-size: 20pt;
  width: 245px;
  height: 82px;
  letter-spacing: 0.04em;
  text-decoration: none;
  box-shadow: 0 6px 0 rgba(0, 0, 0, 0.35), 0 0 0 4px rgba(0, 0, 0, 0.06) inset;
  transition: transform 0.15s ease, background-color 0.2s ease, box-shadow 0.15s ease;
  margin: 50px 0 0 0;
  padding: 0;
}

.cta:hover {
  transform: translateY(-2px) scale(1.015);
}

.cta:active {
  transform: translateY(0);
  box-shadow: 0 2px 0 rgba(0, 0, 0, 0.35), 0 0 0 4px rgba(0, 0, 0, 0.08) inset;
  background: var(--btn-grad-reverse);
}

.cta:focus-visible {
  outline: 0;
  box-shadow:
    0 0 0 4px color-mix(in oklab, var(--btn-border) 70%, transparent),
    0 0 0 8px color-mix(in oklab, var(--text) 30%, transparent);
}

@media (prefers-reduced-motion: reduce) {
  .cta {
    transition: none;
  }
} :root {
  --text: #FDDF86;
  --bg: #0B3C5A; /* default background */
  --bg-alt: #1F1A39; /* alternate background */
  --btn-fill: #E13C1E;
  --btn-fill-2: #960F41; /* hover/alt */
  --btn-border: #F88B08;
  --maxw: 940px;
}