:root {
  --color-pink: #e279b7;
  --color-yellow: #e6c333;
  --color-blue: #9695fd;
  --color-primary: var(--color-pink);
  --color-bg: #efe3d5;
  --color-fg: #000000;

  --cursor-size: 24px;
  --cursor-color: #000000;
  --max-width: calc(25 * var(--vspace-0));
  /* Modern fontstack - Neo-Grotesque */
  --font-base:
    Inter, Roboto, "Helvetica Neue", "Arial Nova", "Nimbus Sans", Arial,
    sans-serif;

  /* --step-5: clamp(1.9788rem, 1.5583rem + 2.1022vw, 2.8rem); */
}

html {
  color-scheme: only light;
}

div.main {
  /* Revealing footer: https://piccalil.li/blog/sticky-revealing-footer */
  position: relative;
  z-index: 1;
  background: var(--color-bg);
}

main {
  position: relative;
  z-index: 999;
}

#cursor {
  z-index: 999;
}

header > nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

header > nav > ul,
header > nav > ol {
  margin-top: var(--vspace--1);
}

header > nav ul li svg {
  display: inline-block;
  /* padding: 0.1rem 1rem; */
  vertical-align: middle;
}

@media only screen and (max-width: 600px) {
  header > nav > ul {
    flex-direction: column;
    text-align: right;
  }
}

main > div > ul > li,
main > ul > li {
  list-style-type: none;
}

blockquote {
  text-align: center;
  max-width: var(--max-width);
}

h1 {
  font-size: var(--step-4);
  text-align: center;
  /* Modern Fontstack - Antique */
  font-family:
    Superclarendon, "Bookman Old Style", "URW Bookman", "URW Bookman L",
    "Georgia Pro", Georgia, serif;
  font-weight: 600;
}

h2,
h3 {
  font-size: var(--step-3);
  /* Modern Fontstack - Antique */
  font-family:
    Superclarendon, "Bookman Old Style", "URW Bookman", "URW Bookman L",
    "Georgia Pro", Georgia, serif;
  /* font-weight: normal; */
  /* font-family: InterVariable, sans-serif; */
  /*   font-family: "Soria"; */
  font-weight: 600;
}

h1.kingruby-title {
  /* Modern Fontstack - Rounded Sans */
  font-family:
    ui-rounded, "Hiragino Maru Gothic ProN", Quicksand, Comfortaa, Manjari,
    "Arial Rounded MT", "Arial Rounded MT Bold", Calibri, source-sans-pro,
    sans-serif;
  font-weight: 900;
  font-size: calc(var(--step-4) * 1.5);
  text-align: center;
  /* font-family: InterVariable, sans-serif; */
  /* font-weight: 600; */
  /* color: var(--color-fg); */
}

svg.ruby {
  width: calc(var(--max-width) / 4);
}

img.banner {
  width: 100%;
  max-width: calc(var(--max-width) * 1.5);
}

.bot {
  unicode-bidi: bidi-override;
  direction: rtl;
  text-align: left;
}

.cluster {
  justify-content: center;
  --vspace: var(--vspace-1);
}

.ruby__left {
  fill: var(--color-pink);
  animation: ruby__left 4s ease-in-out infinite;
}
.ruby__middle {
  fill: var(--color-pink);
  animation: ruby__middle 4s ease-in-out infinite;
}
.ruby__right {
  fill: var(--color-pink);
  animation: ruby__right 4s ease-in-out infinite;
}

div.footer {
  /* background-color: black; */
  width: 100vw;
  /* Revealing footer: https://piccalil.li/blog/sticky-revealing-footer */
  position: sticky;
  bottom: 0;
  left: 0;
  z-index: 0;
}

img.footer {
  width: 100%;
  /* max-width: calc(var(--max-width) * 1.5); */
}

@keyframes ruby__left {
  20% {
    fill: var(--color-pink);
  }
  25% {
    fill: var(--color-yellow);
  }
  30% {
    fill: var(--color-blue);
  }
  35% {
    fill: var(--color-pink);
  }
}
@keyframes ruby__middle {
  25% {
    fill: var(--color-pink);
  }
  30% {
    fill: var(--color-yellow);
  }
  35% {
    fill: var(--color-blue);
  }
  40% {
    fill: var(--color-pink);
  }
}
@keyframes ruby__right {
  30% {
    fill: var(--color-pink);
  }
  35% {
    fill: var(--color-yellow);
  }
  40% {
    fill: var(--color-blue);
  }
  45% {
    fill: var(--color-pink);
  }
}
.ruby__overlay {
  fill: #fff;
  opacity: 0.1;
  animation: ruby__overlay 4s ease-in-out infinite;
}
@keyframes ruby__overlay {
  20% {
    opacity: 0;
    fill: #000;
  }
  33% {
    opacity: 0.1;
  }
  45% {
    opacity: 0;
  }
}

.bubble {
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.2));
}

#bubbleBackground {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 2;
}
