:root {
  --site-font: "Times New Roman", Times, serif;
  --primary: black;
  --text-color: #b3b3b3;
}
html {
  height: 100%;
}
html,
body {
  margin: 0;
  padding: 0;
  min-height: 100%;
  width: 100%;
}
body {
  background-color: black;
  font-family: var(--site-font);
  color: var(--text-color);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
body * {
  box-sizing: border-box;
}
body a {
  text-decoration: none;
  color: var(--text-color);
}
input {
  -webkit-appearance: none;
}

hero-player {
  position: relative;
  height: 100vh;
  min-height: 630px;
  width: 100%;
  display: flex;
  -webkit-box-pack: center;
  justify-content: center;
  flex-flow: column;
  -webkit-box-align: center;
  align-items: center;
}
hero-player > div {
  position: absolute;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  -webkit-mask-image: linear-gradient(transparent, #ffffff 20%, #ffffff 80%, transparent);
  mask-image: linear-gradient(transparent, #ffffff 20%, #ffffff 80%, transparent);
}
hero-player > div > hero-viewer {
  width: 100%;
  height: 100%;
  display: block;
}
hero-player video {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  aspect-ratio: 1280 / 720;
}
hero-player blockquote {
  will-change: opacity;
  pointer-events: none;
  text-align: center;
  z-index: 1;
  font-family: serif;
  max-width: 90%;
  font-size: 17px;
  color: #d7d7d7;
  text-shadow: 0 1px #434343;
  line-height: 1.3;
  opacity: 1;
  transition: opacity 3s ease-in-out;
}
@media screen and (min-width: 768px) {
  hero-player blockquote {
    font-size: 30px;
  }
}
@media screen and (min-width: 768px) {
  hero-player blockquote {
    font-size: 30px;
  }
}
@media screen and (min-width: 3000px) {
  hero-player blockquote {
    font-size: 34px;
  }
}
hero-player blockquote[hide] {
  opacity: 0;
}
hero-player blockquote cite {
  font-size: 18px;
  font-style: normal;
  color: #c1c1c1;
}
@media screen and (min-width: 768px) {
  hero-player blockquote cite {
    font-size: 20px;
  }
}
@media screen and (min-width: 3000px) {
  hero-player blockquote cite {
    font-size: 24px;
  }
}
hero-player blockquote p {
  margin-top: 6px;
  margin-bottom: 10px;
}

html {
  scroll-behavior: smooth;
  height: fit-content;
}
section,
feature-matrix,
social-links {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin-bottom: 50px;
}
section header,
feature-matrix header,
social-links header {
  font-size: 35px;
  text-align: center;
  text-shadow: 0 0 40px black;
  margin: 80px 0 40px;
  background: -webkit-linear-gradient(#ffffff, #995400, #422900);
  background: linear-gradient(#ffffff, #995400, #422900);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: sans-serif;
  border-bottom: 1px solid #5b3500;
  width: 700px;
  max-width: 100%;
  padding-bottom: 10px;
}
section p,
feature-matrix p,
social-links p {
  font-family: sans-serif;
  color: #ffffffed;
  text-align: center;
  padding: 0 5px;
}
section b,
feature-matrix b,
social-links b {
  color: var(--text-color);
}
section[name="rooms"] {
  z-index: 2;
  margin-top: -300px;
}
@media screen and (max-width: 600px) {
  section[name="rooms"] {
    margin-top: -240px;
  }
}
section[name="rooms"] .rooms {
  display: flex;
  justify-content: space-around;
}
@media screen and (max-width: 600px) {
  section[name="rooms"] .rooms {
    flex-direction: column;
  }
}
section[name="rooms"] .room {
  flex: 0 1 350px;
  line-height: 1.2;
}
section[name="rooms"] .room[coming-soon] {
  pointer-events: none;
}
section[name="rooms"] .room svg {
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 800px) {
  section[name="rooms"] .room {
    flex: 0 1 200px;
  }
}
section[name="rooms"] .description {
  min-height: 30px;
  height: fit-content;
}
section[name="rooms"] .price {
  height: 4px;
  font-size: 18px;
  font-weight: bold;
}
section[name="rooms"] .price span {
  color: white;
}
section[name="rooms"] .play-time {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 13px;
}
section[name="rooms"] .play-time svg {
  display: inline;
  position: relative;
  width: 18px;
  fill: white;
  height: 18px;
  stroke: white;
  margin-right: 7px;
}
section[name="rooms"] h2 {
  font-family: sans-serif;
  margin: 40px 0 0;
  font-size: 20px;
  color: white;
  text-align: center;
}
section[name="rooms"] a {
  display: flex;
  text-decoration: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  margin: 20px;
}
section[name="rooms"] img {
  max-width: 360px;
  width: 100%;
  margin: 0 10px;
}
section[name="rooms"] button {
  font-size: 20px;
  border-radius: 50px;
  padding: 14px 20px;
  background: hsl(34, 48.03%, 90.13%) linear-gradient(hsl(51.16, 100%, 43%) 5%, hsl(34, 96%, 36%) 100%);
  border: none;
  font-weight: bold;
  text-shadow: 0px 1px 0px #ffffff52;
  box-shadow: 0 0 30px #d09041;
  margin: 10px 0;
  cursor: pointer;
  max-width: 250px;
  width: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  text-indent: 10px;
  white-space: nowrap;
}
@media screen and (max-width: 800px) {
  section[name="rooms"] button {
    font-size: 14px;
    text-indent: 0;
  }
}
section[name="rooms"] button svg {
  position: relative !important;
  height: 29px;
  width: auto;
  margin-right: 0px;
  margin-left: 10px;
  margin-top: -9px;
  margin-bottom: -10px;
}
@media screen and (max-width: 800px) {
  section[name="rooms"] button svg {
    display: none;
  }
}
section[name="notify-me"] > div {
  display: flex;
  justify-content: space-evenly;
  flex-direction: row;
  align-items: center;
  max-width: 1200px;
  width: 100%;
}
section[name="notify-me"] > div > div {
  display: flex;
  flex-direction: column;
  font-size: 14px;
  padding-bottom: 10px;
}
section[name="notify-me"] > div > div a {
  padding: 10px;
}
section[name="notify-me"] > div > img {
  max-width: 500px;
  width: 100%;
  height: auto;
  margin-right: 50px;
}
@media screen and (max-width: 600px) {
  section[name="notify-me"] > div > img {
    display: none;
  }
}
section[name="notify-me"] button {
  cursor: pointer;
  font-size: 20px;
  border-radius: 6px;
  padding: 5px 10px;
  text-align: center;
  background-color: #ccc;
  transition: all 0.3s ease-in-out;
  border: none;
  margin-top: 30px;
  width: 130px;
  box-shadow: 0 0 20px #e28405;
}
section[name="notify-me"] button:focus {
  background-color: white;
  outline: none;
}
section[name="attribution"] {
  font-family: sans-serif;
  font-size: 10px;
  flex-direction: row;
}
section[name="attribution"] a {
  font-family: sans-serif;
  font-size: 10px;
}
section[name="attribution"] .attribution {
  margin: 0 10px;
}
footer {
  border-top: 1px solid #ffffff2e;
  padding: 50px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #ccc;
  font-family: sans-serif;
  font-size: 12px;
  margin-top: 100px;
}
footer .legal {
  display: flex;
  margin-bottom: 20px;
}
footer .legal a {
  padding: 10px;
  display: block;
  font-size: 14px;
}
footer .attribution {
  font-weight: 100;
  text-align: center;
}

form-group {
  font-size: 20px;
  font-family: sans-serif;
  max-width: 350px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
form-group label {
  margin: 30px 0px 10px;
  text-align: center;
}
form-group input {
  font-size: 20px;
  border-radius: 6px;
  padding: 5px 10px;
  text-align: center;
  background-color: #ccc;
  transition: all 0.3s ease-in-out;
  border: none;
}
form-group input:focus {
  background-color: white;
  outline: none;
  box-shadow: 0 0 20px #e28405;
}

notify-me {
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  padding: 0 30px;
}
notify-me[busy] {
  cursor: wait;
  pointer-events: none;
}
notify-me[busy] input,
notify-me[busy] button {
  opacity: 0.5;
}
notify-me .error-text {
  padding: 10px;
  color: red;
  font-weight: 100;
  font-size: 16px;
}

user-prompt {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  left: 0;
  position: fixed;
  top: 0;
  transition: all 0.25s;
  width: 100%;
  z-index: 999;
}
user-prompt * {
  box-sizing: border-box;
}
user-prompt[open] {
  background-color: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(10px);
}
user-prompt[open] .content {
  transform: translateY(0);
}
user-prompt .content {
  max-width: 400px;
  width: 100%;
  border: 1px solid #dadce0;
  position: relative;
  background-color: white;
  border-radius: 4px;
  display: block;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
user-prompt .content .top-close-button {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: white;
  border: none;
  margin-top: 6px;
  margin-right: 6px;
}
user-prompt .content .top-close-button div {
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  position: absolute;
}
user-prompt .content .top-close-button svg {
  pointer-events: none;
  opacity: 0.3;
}
user-prompt .content .top-close-button:hover {
  background-color: #f2f2f2;
}
user-prompt .content .top-close-button:hover svg {
  opacity: 0.9;
}
user-prompt .content .alt-button {
  border: none;
  background: none;
  color: #0078f1;
}
user-prompt .content p {
  margin: 6px;
}
user-prompt .content form {
  position: relative;
  margin-block-end: 0;
}
user-prompt .content label {
  padding: 10px 0 2px;
  color: hsl(0, 0%, 40%);
  text-transform: uppercase;
  font-size: 12px;
}
user-prompt .content input {
  background-color: #f1f3f4;
  border-radius: 4px;
  border: 2px solid white;
  color: black;
  font-family: sans-serif;
  font-size: 16px;
  letter-spacing: 0.5px;
  line-height: 2;
  margin-bottom: 5px;
  outline: none;
  padding: 5px 12px;
}
user-prompt .content input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 50px #f1f3f4 inset;
}
user-prompt .content input:-webkit-autofill:after {
  content: "Click to autofill";
  width: 200px;
  height: 200px;
  background-color: pink;
}
user-prompt .content input:focus {
  border: 2px solid #abb2b6;
  background-color: white;
}
user-prompt .content input:disabled {
  background-color: white;
}
user-prompt .content input:invalid[blurred] {
  border-left: 4px solid #d64a48;
}
user-prompt .content input:valid[touched] {
  border-left: 4px solid #138938;
}
user-prompt .content input[type="password"] {
  letter-spacing: 2px;
}
user-prompt .content [name="logo"] {
  display: flex;
  justify-content: center;
  margin-top: -8px;
  position: absolute;
  width: 100%;
}
user-prompt .content [name="logo"] a {
  display: block;
  background: white;
  padding: 0 15px;
}
user-prompt .content [name="logo"] svg {
  height: 13px;
  width: auto;
  padding-bottom: 7px;
}
user-prompt .content header {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 120px;
  justify-content: center;
}
user-prompt .content header h1 {
  font-size: 20px;
  text-align: center;
  margin: 0;
}
user-prompt .content header a {
  color: #0078f1;
  text-decoration: none;
}
user-prompt .content section {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  padding: 0 10px 10px;
}
user-prompt .content section form-group {
  width: 100%;
}
user-prompt .content section input,
user-prompt .content section label {
  width: 100%;
  display: block;
}
user-prompt .content section button.primary {
  background: var(--primary);
  border: none;
  color: white;
  font-weight: 500;
  padding: 8px 16px;
  margin: 0 5px;
  border-radius: 30px;
  font-size: 12px;
  display: inline-block;
  cursor: pointer;
}
user-prompt .content section button.primary:focus {
  outline: none;
  box-shadow: 0px 0px 0px 1px black;
}
user-prompt .content section button.secondary {
  background: var(--primary);
  color: white;
  font-weight: 500;
  padding: 8px 16px;
  margin: 0 5px;
  border-radius: 30px;
  font-size: 12px;
  display: inline-block;
  cursor: pointer;
  border: none;
  background: none;
  margin-right: 10px;
  color: var(--primary);
}
user-prompt .content section button.secondary:focus {
  outline: none;
  box-shadow: 0px 0px 0px 1px black;
}
user-prompt .content section button.secondary:focus {
  outline: none;
  box-shadow: 0px 0px 0px 1px black;
}
user-prompt .content progress-button {
  margin: 10px 0 0 0;
  width: 100%;
}
user-prompt .content .error-text {
  color: #d64a48;
  font-family: sans-serif;
  font-size: 13px;
  margin-bottom: -3px;
  margin-top: -12px;
  line-height: 15px;
}
user-prompt .content .error-text:empty {
  margin: 0;
}
user-prompt section {
  flex-direction: row !important;
  height: auto !important;
  justify-content: flex-end !important;
  margin-bottom: 0 !important;
  padding: 20px !important;
}
user-prompt header {
  border: none !important;
}
user-prompt header h1 {
  color: black;
  font-weight: 400;
  margin: 10px 0 !important;
}
user-prompt header p {
  font-weight: 300;
  color: black;
  margin-top: 20px;
}

:root {
  --site-navigation-height: 140px;
}
@media screen and (max-width: 800px) {
  :root {
    --site-navigation-height: 120px;
  }
}
site-navigation {
  width: 100%;
  display: flex;
  justify-content: center;
  z-index: 1;
  transition: all 0.5s;
  height: 140px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  align-items: center;
}
site-navigation nav {
  font-size: 18px;
  position: absolute;
  display: flex;
  width: 100%;
  max-width: 700px;
  justify-content: space-evenly;
  align-items: center;
  height: var(--site-navigation-height);
}
@media screen and (max-width: 800px) {
  site-navigation nav {
    font-size: 15px;
    top: 0;
  }
}
site-navigation nav a {
  display: flex;
  white-space: nowrap;
  justify-content: center;
  width: 186px;
  text-shadow: 0 1px #434343;
  color: white;
}
site-navigation nav a:hover {
  transition: all 0.5s ease-out;
  transform: scale(1.15);
}
@media screen and (max-width: 800px) {
  site-navigation nav a:last-of-type {
    opacity: 0;
  }
}
@media screen and (max-width: 420px) {
  site-navigation nav a:nth-child(4) {
    opacity: 0;
  }
}
site-navigation nav svg {
  height: 100px;
  filter: drop-shadow(0px 0px 40px black);
}
site-navigation nav span[name="big"] {
  opacity: 1;
}
site-navigation nav span[name="small"] {
  position: absolute;
  opacity: 0;
}
site-navigation nav span[name="small"] svg {
  height: 46px;
  margin-top: 29px;
}
site-navigation[small] {
  background-color: rgba(100, 100, 100, 0.5);
  position: fixed;
  top: 0  !important;
  left: 0;
  height: 60px !important;
  z-index: 10;
  box-shadow: 0 0 10px black;
}
site-navigation[small] a.logo {
  width: 40px;
}
site-navigation[small] nav {
  height: 100%  !important;
  top: 0  !important;
}
site-navigation[small] nav span[name="big"] {
  opacity: 0;
}
site-navigation[small] nav span[name="small"] {
  opacity: 1;
}
site-navigation[small]::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backdrop-filter: saturate(180%) blur(5px);
  backdrop-filter: saturate(100%) blur(5px);
  perspective: 1000;
  z-index: -1;
  display: block;
  background-color: #00000082;
  backface-visibility: hidden;
}
body[name=front] site-navigation {
  height: auto;
}
body[name=front] site-navigation nav {
  top: 50px;
}

share-content {
  position: absolute;
  right: 30px;
}
@media screen and (min-width: 910px) {
  share-content {
    right: var(--right-offset-hint, 50px);
  }
}
share-content button {
  color: white;
  cursor: pointer;
}
share-content > button {
  background-color: #0071e3;
  border: none;
  border-radius: 9999px;
  font-size: 15px;
  height: 36px;
  width: 92px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  padding: 0 10px;
}
share-content > button:hover {
  background-color: #0059b3;
}
share-content .options {
  display: none;
  position: absolute;
  background-color: #303030;
  border: none;
  border-radius: 10px;
  margin-top: 10px;
  width: 190px;
  right: 0px;
  padding: 10px 0;
  border: 1px solid #616161;
}
share-content .options button {
  border: none;
  background: none;
  color: white;
  height: 38px;
  padding: 0 13px;
  font-size: 15px;
  width: 100%;
  text-align: left;
  display: flex;
  align-items: center;
}
share-content .options button.device {
  border-bottom: 1px solid #616161;
}
share-content .options button div:first-of-type {
  width: 20px;
  margin-right: 8px;
  display: flex;
}
share-content .options button div:first-of-type svg {
  height: 20px;
}
share-content .options button:hover {
  background-color: #616161;
}
share-content .options[show] {
  display: block;
}

social-links > div {
  display: flex;
  justify-content: center;
  align-items: center;
}
social-links > div a {
  display: block;
  margin: 10px;
}
social-links > div a svg {
  fill: white;
  width: 30px;
  height: 30px;
}
social-links > div a:hover svg {
  fill: var(--text-color);
}

body[name=content] {
  height: 100%;
  margin-top: 70px;
  justify-content: flex-start;
  color: white;
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", Segoe UI Symbol, "Noto Color Emoji";
}
body[name=content] blockquote {
  margin: 0;
  padding: 0 15px;
  border-left: 3px solid #f4e4c9;
  color: #ffffff;
  font-style: italic;
}
body[name=content] img {
  max-width: 100%;
  margin: 10px 0;
  border-radius: 3px;
}
body[name=content] hr {
  margin: 25px 0;
  border: none;
  border-top: 1px solid #554f45;
}
body[name=content] .content {
  max-width: 800px;
  font-size: 17px;
  padding: 0 10px;
  flex: 1;
  margin-bottom: auto;
  line-height: 1.3;
}
body[name=content] .content h1 {
  font-size: 30px;
  background: -webkit-linear-gradient(#f4e4c9, #f3deb0, #dccca4);
  background: linear-gradient(#f4e4c9, #f4e4c9, #dccca4);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  max-width: 100%;
  font-weight: 400;
  text-overflow: ellipsis;
  overflow: hidden;
}
body[name=content] .content h2 {
  font-size: 17px;
  background: -webkit-linear-gradient(#f4e4c9, #f3deb0, #dccca4);
  background: linear-gradient(#f4e4c9, #f4e4c9, #dccca4);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
body[name=content] .content h1,
body[name=content] .content h2 {
  margin-top: 40px;
}
body[name=content] .content a {
  text-decoration: underline;
  text-decoration-skip-ink: auto;
  text-underline-offset: 2px;
}

:root {
  --footer-height: 300px;
}
site-footer {
  margin-top: 20px;
  width: 100%;
  height: calc(var(--footer-height) - 20px);
  flex: 0 0 calc(var(--footer-height) - 20px);
  background: linear-gradient(180deg, #080808, #131313);
  font-family: sans-serif;
  display: flex;
  justify-content: space-around;
  padding: 20px;
  align-items: center;
  flex-direction: column;
  border-top: 1px solid #2b2b2b;
  top: calc(100% - 300px);
}
@media screen and (max-width: 800px) {
  site-footer {
    padding-top: 5px;
  }
}
site-footer .links {
  color: #909090;
  text-align: center;
}
site-footer .links a {
  color: #909090;
  text-decoration: underline;
  text-underline-position: under;
}
@media screen and (max-width: 800px) {
  site-footer .links a {
    font-size: 12px;
  }
}
site-footer .copyright {
  color: #727272;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
site-footer .copyright svg {
  height: 18px;
  margin-left: 10px;
}
site-footer .tag-line {
  font-size: 20px;
  text-align: center;
  padding: 0 5px;
  width: 60%;
  line-height: 1.3;
  background: linear-gradient(#ffffff, #909090);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 800px) {
  site-footer .tag-line {
    width: 100%;
    font-size: 14px;
  }
}

body[name="status"] {
  color: white;
  font-family: sans-serif;
  min-height: 100vh;
  overflow-x: hidden;
  overflow-y: auto;
  justify-content: space-between;
}
body[name="status"] site-navigation {
  background-color: black;
}
body[name="status"] header {
  font-size: 35px;
  text-align: center;
  text-shadow: 0 0 40px black;
  background: -webkit-linear-gradient(#ffffff, #995400, #422900);
  background: linear-gradient(#ffffff, #995400, #422900);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: sans-serif;
  border-bottom: 1px solid #5b3500;
  width: 700px;
  max-width: 100%;
  padding-bottom: 10px;
}
body[name="status"] * {
  box-sizing: border-box;
}

status-panel {
  display: flex;
  align-items: center;
  height: 100%;
  flex-direction: column;
  width: 100%;
  min-height: calc(100vh - var(--footer-height) - var(--site-navigation-height));
  max-width: 600px;
  font-size: 24px;
  padding: 60px;
}
@media screen and (max-width: 800px) {
  status-panel {
    padding: 30px;
  }
}
status-panel[busy] .status {
  opacity: 0.5;
}
status-panel header {
  font-size: 35px;
  text-align: center;
  margin: 40px 0 40px;
  background: -webkit-linear-gradient(#ffffff, #995400, #422900);
  background: linear-gradient(#626262, #995400, #422900);
  background-clip: border-box;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: sans-serif;
  border-bottom: 1px solid #5b3500;
  width: 700px;
  max-width: 100%;
  padding-bottom: 10px;
}
status-panel .game {
  width: 100%;
  max-width: 800px;
  padding: 15px;
  display: flex;
  justify-content: space-between;
}
status-panel .game[status="Healthy"] .status svg {
  fill: green;
}
status-panel .game[status="Unhealthy"] .status svg {
  fill: #c00;
}
status-panel .game[status="Unknown"] .status svg {
  fill: #df7e00;
}

game-gallery {
  max-width: 100%;
  width: 835px;
  display: block;
  border-radius: 3px;
}
game-gallery > img {
  width: 100%;
  border: 2px solid #272727;
  max-height: 466px;
  object-fit: contain;
}
game-gallery [name=selector] {
  overflow-y: hidden;
  overflow-x: auto;
  border-radius: 3px;
  scroll-snap-type: x mandatory;
  position: relative;
  scrollbar-width: thin;
  scrollbar-color: #686868 #000;
  display: flex;
  padding-top: 15px;
}
game-gallery [name=selector]::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 6px;
  height: 8px;
}
game-gallery [name=selector]::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background-color: rgba(255, 255, 255, 0.545);
  -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
}
game-gallery [name=selector] button {
  background-color: transparent;
  border: none;
  padding: 0;
  margin: 0 5px 0 0;
  box-shadow: 0 0 1px #b3b3b3;
  scroll-snap-align: start;
  border: 2px solid black;
  cursor: pointer;
}
game-gallery [name=selector] button:last-child {
  margin-right: 0;
}
game-gallery [name=selector] button[selected] {
  border: 2px solid #d5d5d5;
  position: relative;
  pointer-events: none;
}
game-gallery [name=selector] button[selected]:after {
  bottom: 100%;
  left: 50%;
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(213, 213, 213, 0);
  border-bottom-color: #d5d5d5;
  border-width: 15px;
  margin-left: -15px;
}
game-gallery [name=selector] button img {
  height: 100px;
}

section[name="order"] {
  font-size: 20px;
}
section[name="order"] p {
  max-width: 90%;
}
section[name="order"] .order-button {
  font-size: 20px;
  border-radius: 50px;
  padding: 15px 30px;
  background: hsl(34, 48.03%, 90.13%) linear-gradient(hsl(51.16, 100%, 43%) 5%, hsl(34, 96%, 36%) 100%);
  border: none;
  font-weight: bold;
  text-shadow: 0px 1px 0px #ffffff52;
  box-shadow: 0 0 30px #d09041;
  margin: 30px 0;
  cursor: pointer;
}
section[name="order"] .order-button:hover {
  background: linear-gradient(hsl(34, 96%, 36%) 0%, hsl(51.16, 100%, 43%) 100%, hsl(34, 48.03%, 90.13%) 100%);
}
section[name="description"] {
  font-family: sans-serif;
  font-size: 27px;
  width: 1000px;
  text-align: center;
  max-width: 100%;
  padding: 0 10px;
}
section[name="description"] p {
  font-family: serif;
}
section[name="video"] video {
  max-height: 650px;
  max-width: 90%;
  height: 100%;
  border: 1px solid #373737;
  border-radius: 3px;
}
section[name="video"] p,
section[name="video"] a {
  color: #6b6b6b;
  text-decoration: none;
  font-size: 12px;
}
p a {
  text-decoration: underline;
  text-decoration-skip-ink: auto;
  text-underline-offset: 3px;
}

section[name="logo"] {
  margin-top: calc(var(--site-navigation-height) + 50px + 40px);
}
section[name="logo"] svg {
  fill: white;
  height: 100px;
}

section[name="logo"] {
  margin-top: calc(var(--site-navigation-height) + 50px + 40px);
}
section[name="logo"] svg {
  fill: white;
  height: 100px;
  max-width: 90%;
  width: auto;
}

section[name="logo"] {
  margin-top: calc(var(--site-navigation-height) + 50px + 40px);
}
section[name="logo"] svg {
  fill: white;
  height: 120px;
  max-width: 90%;
  width: auto;
  filter: drop-shadow(0 0 76px #ffffff96) drop-shadow(0 0 86px #ffffff96);
}

games-scroller {
  height: 100px;
  max-width: 100%;
  overflow: hidden;
  position: relative;
  margin-top: 10px;
  width: fit-content;
}
@media screen and (min-height: 1200px) {
  games-scroller {
    margin-top: 100px;
  }
}
@media screen and (min-height: 1000px) and (max-height: 1200px) {
  games-scroller {
    margin-top: 30px;
  }
}
games-scroller > a {
  display: contents;
}
games-scroller > a:hover .text {
  transform: scale(1.1);
}
games-scroller .games-scroller {
  position: relative;
  white-space: nowrap;
  /* Prevent wrapping */
  will-change: transform;
  /* Optimize GPU rendering */
  transition: transform 0.016s linear;
  /* Smooth transitions (60 FPS) */
}
games-scroller .games-scroller::-webkit-scrollbar {
  display: none;
  /* Hide scrollbar in Chrome/Safari */
}
games-scroller img {
  height: 100px;
  width: 220px;
  margin: 0 10px;
  cursor: pointer;
}
games-scroller .text {
  position: absolute;
  height: 100%;
  top: 0;
  display: flex;
  background: linear-gradient(to right, black, #0000005e, #0000005e, #0000005e, black);
  justify-content: center;
  align-items: center;
  width: 100%;
  font-size: 26px;
  text-shadow: 0px 0px 6px black;
  color: white;
  transition: all 0.5s;
}

quick-info {
  --info-color: #c9c9c9;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: sans-serif;
}
@media screen and (max-width: 600px) {
  quick-info {
    flex-direction: column;
  }
}
quick-info .info {
  display: flex;
  flex-direction: column;
  margin: 10px;
  align-items: center;
}
quick-info .info .title {
  margin-bottom: 10px;
  font-size: 15px;
  color: var(--info-color);
  width: 190px;
  padding-bottom: 4px;
  text-align: center;
  border-bottom: 1px solid var(--info-color);
}
quick-info .info .data {
  font-size: 17px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--info-color);
}
quick-info svg {
  stroke: var(--info-color);
  fill: var(--info-color);
  width: 26px;
  margin-right: 8px;
}
quick-info [name="difficulty"] svg rect {
  fill: none;
}
quick-info [name="difficulty"] svg:last-of-type {
  margin-right: 0;
}
quick-info [name="difficulty"] [difficulty="1"] svg:nth-child(1) rect {
  fill: var(--info-color) !important;
}
quick-info [name="difficulty"] [difficulty="2"] svg:nth-child(1) rect,
quick-info [name="difficulty"] [difficulty="2"] svg:nth-child(2) rect {
  fill: var(--info-color) !important;
}
quick-info [name="difficulty"] [difficulty="3"] svg:nth-child(1) rect,
quick-info [name="difficulty"] [difficulty="3"] svg:nth-child(2) rect,
quick-info [name="difficulty"] [difficulty="3"] svg:nth-child(3) rect {
  fill: var(--info-color) !important;
}
quick-info [name="difficulty"] [difficulty="4"] svg:nth-child(1) rect,
quick-info [name="difficulty"] [difficulty="4"] svg:nth-child(2) rect,
quick-info [name="difficulty"] [difficulty="4"] svg:nth-child(3) rect,
quick-info [name="difficulty"] [difficulty="4"] svg:nth-child(4) rect {
  fill: var(--info-color) !important;
}
quick-info [name="difficulty"] [difficulty="5"] svg:nth-child(1) rect,
quick-info [name="difficulty"] [difficulty="5"] svg:nth-child(2) rect,
quick-info [name="difficulty"] [difficulty="5"] svg:nth-child(3) rect,
quick-info [name="difficulty"] [difficulty="5"] svg:nth-child(4) rect,
quick-info [name="difficulty"] [difficulty="5"] svg:nth-child(5) rect {
  fill: var(--info-color) !important;
}

feature-matrix > div {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  grid-gap: 20px;
  width: 80%;
  max-width: 1280px;
  margin: 0 auto;
}
feature-matrix .feature {
  display: flex;
  font-family: sans-serif;
  flex-direction: column;
}
feature-matrix .feature > div:first-of-type {
  display: flex;
  align-items: center;
  color: white;
  margin-top: 14px;
  flex: 0 1 24px;
}
feature-matrix .feature > div {
  color: #ffffffbd;
  margin-bottom: 16px;
  padding-right: 30px;
}
feature-matrix .feature svg {
  max-width: 45px;
  max-height: 45px;
  margin-right: 16px;
  flex: 0 0 75px;
  fill: var(--text-color);
  stroke: var(--text-color);
}

body[name="ordering"] {
  --border-radius: 6px;
  background: linear-gradient(180deg, #ffffff, #fdfdfd, #fbfbfb, #f9f9f9, #f6f6f6, #f4f4f4, #f2f2f2, #f0f0f0);
  color: black;
  font-family: sans-serif;
  min-height: 100vh;
  overflow-x: hidden;
  overflow-y: auto;
  justify-content: space-between;
}
body[name="ordering"] * {
  box-sizing: border-box;
}
body[name="ordering"] .frame {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  flex-direction: row;
  width: 100%;
  max-width: 1024px;
  min-height: calc(100vh - var(--footer-height));
}
@media screen and (max-width: 800px) {
  body[name="ordering"] .frame {
    margin-top: 30px;
  }
}
body[name="ordering"] .vertical-spacer {
  height: 380px;
  width: 1px;
  background: #d5d5d5;
  margin: 5%;
}
body[name="ordering"] [hidden] {
  display: none;
}
body[name="ordering"] .box {
  padding: 30px;
}
@media screen and (max-width: 800px) {
}

order-viewer {
  width: 100%;
}
order-viewer .box {
  flex-direction: column;
}
order-viewer > div {
  max-width: 1200px !important;
  border-radius: var(--border-radius) !important;
  font-size: 17px;
  display: flex;
  flex-direction: row;
  color: #545454;
}
order-viewer > div .line,
order-viewer > div .delivery,
order-viewer > div .payment,
order-viewer > div .total {
  display: flex;
  flex-direction: row;
  width: 100%;
  margin-bottom: 20px;
}
order-viewer > div .line .description,
order-viewer > div .delivery .description,
order-viewer > div .payment .description,
order-viewer > div .total .description {
  flex: 1 1 auto;
  text-align: left;
}
order-viewer > div .line .amount,
order-viewer > div .delivery .amount,
order-viewer > div .payment .amount,
order-viewer > div .total .amount {
  flex: 0 0 30px;
}
order-viewer > div .line button,
order-viewer > div .delivery button,
order-viewer > div .payment button,
order-viewer > div .total button {
  cursor: pointer;
  display: inline;
  background: none;
  color: #919191;
  padding: 0 !important;
  margin: 0 !important;
}
order-viewer > div .total {
  color: black;
  margin-top: 30px;
  margin-bottom: 0;
  font-weight: bold;
}
order-viewer > div .delivery {
  flex-direction: column;
  margin-top: 30px;
  margin-bottom: 0;
}
order-viewer > div .delivery a {
  display: block;
  padding: 10px 0;
  color: #4285f4;
  text-decoration: underline;
}
order-viewer > div .payment {
  margin-top: 30px;
}
order-viewer > div span {
  font-size: 15px;
}

discount-code {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 10px;
  margin-bottom: 20px;
}
discount-code p {
  font-weight: bold;
}
discount-code button {
  cursor: pointer;
  margin: 0 !important;
}
discount-code input[type="text"] {
  display: none;
  text-align: center;
  padding: 10px;
  border: none;
  border-radius: 50px;
  background: white;
  box-shadow: inset 1px 1px 5px 2px #ccc;
  margin: 20px;
  max-width: 100%;
  -webkit-appearance: none;
  font-size: 20px;
  width: 200px;
}
discount-code input[type="text"]:focus-visible {
  outline: none;
  box-shadow: 0 0 12px 1px #2200ff;
}
discount-code[open] p {
  display: none;
}
discount-code[open] input[type="text"] {
  display: block;
}
discount-code[completed] {
  display: none;
}

:root {
  --loader-button-background: #000;
  --loader-button-color: #fff;
  --loader-button-shadow: none;
}
loader-button {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 250px;
  height: 40px;
}
loader-button > button,
loader-button .shadow {
  background-color: var(--loader-button-background);
  justify-content: center;
  align-items: center;
  border-radius: 20px;
  border: none;
  color: var(--loader-button-color);
  cursor: pointer;
  display: flex;
  font-size: 18px;
  height: 100%;
  transition: all 2s;
  width: 100%;
  margin: 0 !important;
  white-space: nowrap;
  box-shadow: var(--loader-button-shadow);
}
loader-button .shadow {
  position: absolute;
  top: 0;
  opacity: 0;
}
loader-button[busy] {
  pointer-events: none;
}

checkout-control {
  display: flex;
  flex-direction: column;
  max-width: 1024px;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin-top: 30px;
}
@media screen and (max-width: 800px) {
  checkout-control {
    padding: 10px;
  }
}
checkout-control header {
  font-family: sans-serif;
  font-weight: 400;
  font-size: 28px;
  margin-bottom: 40px;
}
checkout-control[mode=self] .vertical-spacer {
  display: none;
}
checkout-control div.columns {
  display: flex;
  flex-direction: row;
  max-width: 1024px;
  justify-content: center;
  align-items: center;
  width: 100%;
}
checkout-control div.columns .vertical-spacer {
  flex: 0 0 1px;
}
checkout-control div.columns > div {
  display: none;
  flex: 1 0 45%;
  max-width: 1024px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 19px;
  color: #545454;
}
@media screen and (max-width: 1024px) {
  checkout-control div.columns {
    flex-direction: column;
  }
}
checkout-control .box {
  background: white;
}
checkout-control .box:last-of-type {
  margin-bottom: 30px;
}
checkout-control h1 {
  width: 100%;
  max-width: 1024px;
  padding-left: 10px;
  font-size: 24px;
  font-weight: 300;
  margin-block-start: 0;
  margin-block-end: 18px;
  text-align: left;
  margin-top: 30px;
}
@media screen and (max-width: 800px) {
  checkout-control h1 {
    font-size: 20px;
  }
}
checkout-control h2 {
  font-size: 17px;
  font-weight: bold;
  text-align: center;
}
checkout-control label {
  font-size: 17px;
  font-weight: bold;
}
checkout-control label:first-of-type {
  margin-top: 30px;
}
checkout-control .details {
  display: flex;
  flex-direction: column;
  max-width: 1200px !important;
  border-radius: 10px !important;
}
checkout-control input[type="text"],
checkout-control input[type="email"] {
  text-align: center;
  padding: 10px;
  border: none;
  border-radius: 50px;
  box-shadow: inset 1px 1px 5px 2px #ccc;
  margin: 20px;
  max-width: 100%;
  -webkit-appearance: none;
}
checkout-control input[type="text"]:focus-visible,
checkout-control input[type="email"]:focus-visible {
  outline: none;
  box-shadow: 0 0 12px 1px #2200ff;
}
checkout-control input[type="email"] {
  font-size: 20px;
  text-transform: lowercase;
}
checkout-control button,
checkout-control button {
  background: var(--primary);
  border: none;
  color: white;
  font-weight: 500;
  padding: 10px 20px;
  border-radius: 30px;
  font-size: 16px;
  display: inline-block;
  margin-bottom: 10px;
}

order-details {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
}
order-details .details {
  display: flex;
  flex-direction: column;
  max-width: 1200px !important;
  border-radius: var(--border-radius) !important;
}
order-details input[type="text"],
order-details input[type="email"] {
  text-align: center;
  padding: 10px;
  border: none;
  border-radius: 50px;
  box-shadow: inset 1px 1px 5px 2px #ccc;
  margin: 20px;
  width: 100%;
  max-width: 350px;
  -webkit-appearance: none;
}
order-details input[type="text"]:focus-visible,
order-details input[type="email"]:focus-visible {
  outline: none;
  box-shadow: 0 0 12px 1px #2200ff;
}
order-details fieldset {
  border: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin: 0;
  padding: 0;
}
order-details fieldset button[name="change-email"] {
  border: none;
  text-decoration: underline;
  color: #919191;
  background: none;
  cursor: pointer;
}
order-details fieldset span {
  font-weight: 600;
}
order-details[completed] button {
  display: none !important;
}

order-payment {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 10px;
  padding: 0 10px;
}
order-payment p {
  font-weight: bold;
}
order-payment[disabled] {
  opacity: 0.5;
  cursor: not-allowed !important;
}
order-payment[disabled] loader-button {
  pointer-events: none;
  cursor: not-allowed !important;
}
order-payment[completed] loader-button {
  display: none;
}

stripe-payment {
  position: fixed;
  background-color: black;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
stripe-payment div {
  width: 100%;
}

giftcard-details {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
}
giftcard-details .details {
  display: flex;
  flex-direction: column;
  max-width: 1200px !important;
  border-radius: var(--border-radius) !important;
  padding: 0 !important;
  position: relative;
}
giftcard-details [name=counter] {
  position: absolute;
  right: 10px;
  bottom: 10px;
  font-size: 14px;
}
giftcard-details textarea {
  font-family: serif;
  font-size: 20px;
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 10px;
  padding: 30px;
  min-height: 150px;
}
giftcard-details textarea:focus-visible {
  outline: none;
  box-shadow: 0 0 12px 1px #2200ff;
}
giftcard-details input[type="text"],
giftcard-details input[type="email"] {
  text-align: center;
  padding: 10px;
  border: none;
  border-radius: 10px;
  box-shadow: inset 1px 1px 5px 2px #ccc;
  margin: 20px;
  max-width: 100%;
  -webkit-appearance: none;
}
giftcard-details input[type="text"]:focus-visible,
giftcard-details input[type="email"]:focus-visible {
  outline: none;
  box-shadow: 0 0 12px 1px #2200ff;
}
giftcard-details[completed] {
  pointer-events: none;
}

flip-button {
  box-shadow: 0 0 40px 0 #ccc;
  border-radius: 30px;
  margin-top: 12px;
  margin-bottom: 40px;
}
@media screen and (max-width: 450px) {
  flip-button {
    padding: 10px;
    width: 90%;
  }
}
flip-button button {
  width: 200px;
  margin: 0;
  cursor: pointer;
  color: var(--primary);
  background: none;
}
@media screen and (max-width: 450px) {
  flip-button button {
    width: 100%;
  }
}
flip-button button[active] {
  color: white;
  background: var(--primary);
}
flip-button[completed] {
  display: none;
}

giftcard-preview {
  flex: 1 0 40%;
  height: 200px;
  border-radius: var(--border-radius) !important;
  background: white !important;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: serif;
  width: 100%;
  height: 100%;
  padding: 0 !important;
  height: 650px;
  max-width: 460px !important;
}
giftcard-preview[hidden] {
  display: none;
}
giftcard-preview * {
  user-select: none;
}
giftcard-preview svg {
  width: auto;
  height: 100%;
  max-width: 460px;
  max-height: 650px;
  border-radius: var(--border-radius) !important;
}
giftcard-preview .loader {
  display: none;
}
giftcard-preview .loader svg {
  fill: #9e8925;
  width: 180px;
  height: 180px;
}
giftcard-preview[loading] .loader {
  display: block;
}
@media screen and (max-width: 1024px) {
  giftcard-preview {
    max-width: 100% !important;
    height: auto;
  }
}

body[name=articles] header {
  aspect-ratio: 13 / 1;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  font-family: sans-serif;
  position: relative;
  margin-bottom: 10px;
}
body[name=articles] header h1 {
  width: 100%;
  text-align: center;
}
body[name=articles] header > a,
body[name=articles] header h1 {
  font-size: 70px;
  background: -webkit-linear-gradient(#ffffff, #995400, #422900);
  background: linear-gradient(#ffffff, #995400, #422900);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  margin: 0;
  font-weight: normal;
  display: inline;
  padding-bottom: 10px;
}
@media screen and (max-width: 1000px) {
  body[name=articles] header > a,
  body[name=articles] header h1 {
    font-size: 30px;
  }
}
body[name=articles] header span {
  font-size: 14px;
  color: #bebebe;
  margin-left: 10px;
}
body[name=articles] .articles p a {
  display: block;
  margin-top: 10px;
}
article {
  font-family: sans-serif;
  line-height: 1.3;
  font-size: 18px;
  margin-bottom: 30px;
  width: 100%;
  max-width: 1024px;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 1000px) {
  article {
    padding: 0 20px;
  }
}
article p {
  margin-bottom: 0;
  padding-block-end: 0;
}
article h2 {
  font-weight: 300;
  margin-block-end: 10px;
  margin-block-start: 50px;
}
article hr {
  width: 50%;
  height: 1px;
  color: #424242 !important;
  border-style: solid;
  margin: 40px auto 30px;
}
article p:empty {
  display: none;
}


/*# sourceMappingURL=homepage.d6b19fe96b9431772cd3.css.map*/