@font-face {
  font-family: "Noto Sans Mono";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/noto-sans-mono/noto-sans-mono-cyrillic.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: "Noto Sans Mono";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("../fonts/noto-sans-mono/noto-sans-mono-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "HandelGothic TL";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/handelgothic-tl/handel-gothic-tl-regular.woff2") format("woff2");
}

@font-face {
  font-family: "Russo One";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/russo-one/russo-one-cyrillic.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: "Russo One";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/russo-one/russo-one-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
  --ui-sans: Arial, Helvetica, sans-serif;
  color-scheme: dark;
  background: #000;
}

* {
  box-sizing: border-box;
}

html,
body {
  width: 100%;
  height: 100%;
  margin: 0;
}

body {
  overflow: hidden;
  background: #000;
  color: #d8d2ca;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html:not(.q3-enhanced):not(.q3-asset-error) :is(
  .q3-server-screen,
  .q3-level-screen
) > * {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  animation: q3-screen-failsafe 0s 12s forwards;
}

@keyframes q3-screen-failsafe {
  to {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }
}

html:not(.q3-enhanced):not(.q3-asset-error) :is(
  .q3-banner-fallback,
  .q3-menu-item > span,
  .q3-back > span,
  .q3-server-go > span,
  .q3-footer-fallback,
  .q3-server-row > span,
  .q3-map-card > span,
  .q3-map-description-fallback,
  .q3-map-title-fallback,
  .q3-level-card > span,
  .q3-cv-section-button > span
) {
  visibility: hidden;
  animation: q3-fallback-failsafe 0s 4s forwards;
}

@keyframes q3-fallback-failsafe {
  to { visibility: visible; }
}

button,
a {
  -webkit-tap-highlight-color: transparent;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.q3-viewport {
  position: fixed;
  inset: 0;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: #000;
}

.q3-screen {
  position: absolute;
  top: 50%;
  left: 50%;
  flex: none;
  width: min(100vw, calc(100dvh * 4 / 3));
  aspect-ratio: 4 / 3;
  overflow: hidden;
  container-type: inline-size;
  background: #090000 url("../q3/original/logo512.jpg") 0 0 / 100% 100% no-repeat;
  isolation: isolate;
  transform: translate(-50%, -50%);
}

.q3-banner,
.q3-model-banner,
.q3-model-fallback {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 25%;
}

.q3-banner-fallback {
  position: absolute;
  z-index: 1;
  top: 8.75%;
  left: 0;
  width: 100%;
  color: #a40000;
  font: 700 5.6cqw/1 var(--ui-sans);
  text-align: center;
  text-shadow: .32cqw .32cqw #000;
}

.q3-enhanced .q3-banner-fallback,
.q3-banner,
.q3-model-fallback,
.q3-fixed,
.q3-menu-item canvas,
.q3-server-filters canvas,
.q3-article-details canvas,
.q3-server-row canvas,
.q3-server-status canvas,
.q3-map-browser canvas,
.q3-level-browser canvas,
.q3-about-text,
.q3-cv-section-button canvas,
.q3-cv-row canvas {
  visibility: hidden;
}

.q3-enhanced.q3-fire-error .q3-banner-fallback {
  visibility: visible;
}

.q3-enhanced .q3-banner,
.q3-enhanced .q3-model-fallback,
.q3-enhanced .q3-fixed,
.q3-enhanced .q3-menu-item canvas,
.q3-enhanced .q3-server-filters canvas,
.q3-enhanced .q3-article-details canvas,
.q3-enhanced .q3-server-row canvas,
.q3-enhanced .q3-server-status canvas,
.q3-enhanced .q3-map-browser canvas,
.q3-enhanced .q3-level-browser canvas,
.q3-enhanced .q3-about-text,
.q3-enhanced .q3-cv-section-button canvas,
.q3-enhanced .q3-cv-row canvas {
  visibility: visible;
}

.q3-menu {
  position: absolute;
  z-index: 3;
  top: 27.916667%;
  left: 0;
  display: grid;
  width: 100%;
  grid-auto-rows: 5.3125cqw;
}

.q3-menu[data-q3-home-menu] {
  top: 35%;
}

.q3-menu-item {
  position: relative;
  height: 4.21875cqw;
  color: #b30000;
  font: 700 3.9cqw/1.08 var(--ui-sans);
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  justify-self: center;
}

.q3-menu-item canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% + .3125cqw);
  height: 4.53125cqw;
  max-width: none;
}

.q3-enhanced .q3-menu-item > span {
  display: none;
}

.q3-menu-item:focus,
.q3-back:focus,
.q3-server-go:focus,
.q3-server-row:focus,
.q3-map-card:focus,
.q3-map-page:focus,
.q3-level-card:focus,
.q3-level-page:focus {
  outline: none;
}

.q3-fixed {
  position: absolute;
  z-index: 2;
  top: 93.75%;
  left: 0;
  width: 100%;
  height: 3.333333%;
}

.q3-footer-fallback {
  position: absolute;
  z-index: 2;
  top: 93.75%;
  left: 0;
  width: 100%;
  margin: 0;
  color: #800000;
  font: 2.5cqw/1 monospace;
  text-align: center;
}

.q3-enhanced .q3-footer-fallback {
  display: none;
}

.q3-pointer {
  position: absolute;
  z-index: 20;
  top: 46.666667%;
  left: 47.5%;
  width: 5%;
  height: 6.666667%;
  pointer-events: none;
  image-rendering: auto;
}

.q3-pointer > img {
  display: block;
  width: 100%;
  height: 100%;
}

.q3-pointer-audio-hint {
  position: absolute;
  top: 100%;
  left: 75%;
  width: 550%;
  height: 50%;
  background: rgb(0 0 0 / 82%);
  image-rendering: pixelated;
  filter: drop-shadow(.3125cqw .3125cqw #000);
}

.q3-audio-ready .q3-pointer-audio-hint {
  display: none;
}

.q3-pointer-ready,
.q3-pointer-ready a,
.q3-pointer-ready button {
  cursor: none;
}

.q3-console {
  position: absolute;
  z-index: 30;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
  overflow: hidden;
  visibility: hidden;
  pointer-events: none;
  background: #050000;
  isolation: isolate;
  transform: translateY(-100%);
}

.q3-console[data-q3-open="true"] {
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.q3-console::before,
.q3-console::after {
  position: absolute;
  z-index: 0;
  inset: 0 0 .833333%;
  content: "";
  background-position: 0 0;
  background-size: 50% 100%;
  background-repeat: repeat-x;
}

.q3-console::before {
  background-image: url("../q3/original/console01.png");
}

.q3-console::after {
  background-image: url("../q3/original/console02.jpg");
  mix-blend-mode: screen;
}

.q3-console-lines,
.q3-console-lines canvas,
.q3-console-version,
.q3-console-prompt,
.q3-console-cursor,
.q3-console-input,
.q3-console-rule {
  position: absolute;
}

.q3-console-lines {
  z-index: 2;
  inset: 0;
}

.q3-console-lines canvas,
.q3-console-version,
.q3-console-prompt {
  left: 0;
  width: 100%;
  height: 6.666667%;
}

.q3-console-version {
  z-index: 2;
  top: 90%;
}

.q3-console-prompt,
.q3-console-input,
.q3-console-cursor {
  top: 86.666667%;
  height: 6.666667%;
}

.q3-console-prompt {
  z-index: 3;
}

.q3-console-cursor {
  z-index: 4;
  width: 1.25%;
}

.q3-console-input {
  z-index: 5;
  left: 1.25%;
  width: 97.5%;
  padding: 0;
  border: 0;
  opacity: 0;
  color: transparent;
  caret-color: transparent;
  background: transparent;
  font-size: 16px;
}

.q3-console-rule {
  z-index: 6;
  right: 0;
  bottom: 0;
  left: 0;
  height: .833333%;
  background: #f00;
}

@media (prefers-reduced-motion: no-preference) {
  .q3-console {
    transition: transform 166.667ms linear, visibility 0s linear 166.667ms;
  }

  .q3-console[data-q3-open="true"] {
    transition-delay: 0s;
  }

  .q3-console::before {
    animation: q3-console-scroll 50s linear infinite;
  }

  .q3-console::after {
    animation: q3-console-turb 10s ease-in-out infinite;
  }

  .q3-console-cursor {
    animation: q3-console-cursor 512ms steps(1, end) infinite;
  }
}

@keyframes q3-console-scroll {
  to { background-position: -50cqw 0; }
}

@keyframes q3-console-turb {
  50% { background-position: -3cqw 2%; }
}

@keyframes q3-console-cursor {
  50% { visibility: hidden; }
}

.q3-back {
  position: absolute;
  z-index: 10;
  left: 0;
  top: 86.666667%;
  width: 20%;
  height: 13.333333%;
  color: #b30000;
  font: 700 3cqw/2 var(--ui-sans);
  text-align: center;
  text-decoration: none;
}

.q3-bitmap-button img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.q3-button-focused,
.q3-bitmap-button > span {
  display: none;
}

.q3-bitmap-button:hover .q3-button-normal,
.q3-bitmap-button:focus .q3-button-normal {
  display: none;
}

.q3-bitmap-button:hover .q3-button-focused,
.q3-bitmap-button:focus .q3-button-focused {
  display: block;
}

.q3-server-banner-fallback {
  top: 3.333333%;
}

.q3-server-browser {
  position: absolute;
  z-index: 4;
  inset: 0;
}

.q3-server-filters {
  position: absolute;
  top: 16.666667%;
  left: 0;
  display: grid;
  width: 100%;
  grid-auto-rows: 2.5cqw;
}

.q3-server-filters canvas {
  display: block;
  width: 100%;
  height: 2.5cqw;
}

.q3-server-preview {
  position: absolute;
  top: 16.666667%;
  left: 11.25%;
  width: 20%;
  height: 20%;
}

.q3-article-details {
  position: absolute;
  top: 16.666667%;
  left: 35%;
  width: 53.125%;
  height: 25%;
}

.q3-article-details canvas {
  display: block;
  width: 100%;
  height: auto;
}

.q3-article-details .q3-article-time,
.q3-article-details .q3-article-description {
  display: none;
}

.q3-article-details-fallback {
  margin: 0;
  color: #ff6e00;
  font: 700 2.2cqw/1.25 var(--ui-sans);
  text-wrap: pretty;
}

.q3-server-list {
  position: absolute;
  top: 43.333333%;
  left: 11.25%;
  display: flex;
  flex-direction: column;
  width: 75%;
}

.q3-server-row {
  position: relative;
  z-index: 5;
  display: grid;
  grid-template-columns: minmax(0, 81.666667%) 16.666667%;
  column-gap: 1.666667%;
  align-items: start;
  width: 100%;
  min-height: 2.8125cqw;
  color: #ff6e00;
  font: 700 2.2cqw/1.15 var(--ui-sans);
  text-decoration: none;
}

.q3-server-row[data-q3-selected="true"] {
  background: rgb(255 110 0 / 30%);
}

.q3-server-row:not([data-q3-selected="true"]):hover {
  background: rgb(255 110 0 / 15%);
}

.q3-server-row canvas {
  display: none;
}

.q3-server-row > span {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: minmax(0, 81.666667%) 16.666667%;
  column-gap: 1.666667%;
  padding: .4cqw;
  overflow-wrap: break-word;
}

.q3-server-row small {
  display: block;
  text-align: right;
}

.q3-server-row[data-q3-selected="true"] > span {
  color: #ff0;
}

.q3-server-arrows {
  position: absolute;
  z-index: 6;
  top: 40%;
  left: 87.5%;
  width: 10%;
  height: 26.666667%;
}

.q3-server-arrows-base,
.q3-server-arrow,
.q3-server-arrow img {
  position: absolute;
  left: 0;
  width: 100%;
}

.q3-server-arrows-base {
  top: 0;
  height: 100%;
}

.q3-server-arrow {
  z-index: 1;
  height: 50%;
  padding: 0;
  border: 0;
  background: transparent;
}

.q3-server-arrow img {
  top: 0;
  height: 100%;
  display: none;
}

.q3-server-arrow:hover img,
.q3-server-arrow:focus img {
  display: block;
}

.q3-server-arrow-up {
  top: 0;
}

.q3-server-arrow-down {
  bottom: 0;
}

.q3-server-status {
  position: absolute;
  top: 78.333333%;
  left: 0;
  width: 100%;
  height: 6.666667%;
}

.q3-server-status canvas {
  display: block;
  width: 100%;
  height: 50%;
}

.q3-server-go {
  position: absolute;
  z-index: 10;
  top: 86.666667%;
  right: 0;
  width: 20%;
  height: 13.333333%;
  color: #b30000;
  font: 700 3cqw/2 var(--ui-sans);
  text-align: center;
  text-decoration: none;
}

.q3-map-screen,
.q3-level-screen {
  background: #000;
}

.q3-map-browser {
  position: absolute;
  z-index: 4;
  inset: 0;
}

.q3-map-frame {
  position: absolute;
  z-index: 0;
  pointer-events: none;
}

.q3-map-frame-left {
  top: 16.25%;
  left: 0;
  width: 40%;
  height: 68.541667%;
}

.q3-map-frame-right {
  top: 15.833333%;
  left: 58.75%;
  width: 40%;
  height: 69.583333%;
}

.q3-map-list {
  position: absolute;
  z-index: 2;
  top: 20%;
  left: 29.375%;
  display: grid;
  width: 41.25%;
  height: 54.166667%;
  grid-template-columns: repeat(2, 48.484848%);
  grid-template-rows: repeat(2, 47.692308%);
  column-gap: 3.030303%;
  row-gap: 4.615385%;
}

.q3-map-card {
  position: relative;
  width: 100%;
  height: 100%;
  background: #000;
  color: #ff6e00;
  font: 700 2.6cqw/1 var(--ui-sans);
  text-align: center;
  text-decoration: none;
}

.q3-map-card[hidden] {
  display: none;
}

.q3-map-card::before,
.q3-map-card::after {
  position: absolute;
  z-index: 3;
  display: none;
  content: "";
  pointer-events: none;
  background-position: center;
  background-size: 100% 100%;
}

.q3-map-card::before {
  inset: 0;
  background-image: url("../q3/original/maps_selected.png");
}

.q3-map-card::after {
  top: -25.806452%;
  left: -23.4375%;
  width: 200%;
  height: 200%;
  background-image: url("../q3/original/maps_select.png");
}

.q3-map-card[data-q3-selected="true"]::before,
.q3-map-card:not([data-q3-selected="true"]):hover::after,
.q3-map-card:not([data-q3-selected="true"]):focus::after {
  display: block;
}

.q3-map-card .q3-levelshot {
  height: 77.419355%;
}

.q3-map-card canvas {
  position: absolute;
  z-index: 2;
  top: 80.645161%;
  left: 0;
  width: 100%;
  height: 19.354839%;
}

.q3-map-card > span {
  position: absolute;
  z-index: 2;
  top: 80.645161%;
  left: 0;
  width: 100%;
}

.q3-enhanced .q3-map-card > span {
  display: none;
}

.q3-map-description {
  position: absolute;
  z-index: 2;
  top: 76.666667%;
  left: 9.375%;
  width: 81.25%;
  height: auto;
}

.q3-map-description-fallback {
  position: absolute;
  z-index: 2;
  top: 76.666667%;
  left: 9.375%;
  width: 81.25%;
  margin: 0;
  color: #ff0;
  font: 700 2.1cqw/1 monospace;
  text-align: center;
}

.q3-enhanced .q3-map-description-fallback {
  display: none;
}

.q3-map-pager {
  position: absolute;
  z-index: 5;
  top: 83.333333%;
  left: 40.625%;
  width: 20%;
  height: 6.666667%;
}

.q3-map-pager-base {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.q3-map-page {
  position: absolute;
  z-index: 1;
  top: 0;
  width: 50%;
  height: 100%;
  padding: 0;
  border: 0;
  background: transparent;
}

.q3-map-page-previous {
  left: 0;
}

.q3-map-page-next {
  left: 47.65625%;
}

.q3-map-page img {
  display: none;
  width: 100%;
  height: 100%;
}

.q3-map-page:hover img,
.q3-map-page:focus img {
  display: block;
}

.q3-map-title {
  position: absolute;
  z-index: 2;
  top: 91.666667%;
  left: 0;
  width: 100%;
  height: 5.625%;
}

.q3-map-title-fallback {
  position: absolute;
  z-index: 2;
  top: 91.666667%;
  left: 0;
  width: 100%;
  margin: 0;
  color: #ff6e00;
  font: 700 3cqw/1 var(--ui-sans);
  text-align: center;
}

.q3-enhanced .q3-map-title-fallback {
  display: none;
}

.q3-level-browser {
  position: absolute;
  z-index: 4;
  inset: 0;
}

.q3-level-list {
  position: absolute;
  top: 13.333333%;
  left: 7.1875%;
  display: grid;
  width: 85.625%;
  height: 26.875%;
  grid-template-columns: repeat(4, 23.357664%);
  column-gap: 2.189781%;
}

.q3-level-card {
  position: relative;
  width: 100%;
  height: 100%;
  color: #ff6e00;
  font: 700 2.6cqw/1 var(--ui-sans);
  text-align: center;
  text-decoration: none;
}

.q3-level-card[hidden] {
  display: none;
}

.q3-level-card::before,
.q3-level-card::after {
  position: absolute;
  z-index: 3;
  display: none;
  content: "";
  pointer-events: none;
  background-position: center;
  background-size: 100% 100%;
}

.q3-level-card::before {
  top: -0.775194%;
  left: -0.78125%;
  width: 101.5625%;
  height: 89.922481%;
  background-image: url("../q3/original/maps_selected.png");
}

.q3-level-card::after {
  top: -23.255814%;
  left: -24.21875%;
  width: 200%;
  height: 177.51938%;
  background-image: url("../q3/original/maps_select.png");
}

.q3-level-card[data-q3-selected="true"]::before,
.q3-level-card:not([data-q3-selected="true"]):hover::after,
.q3-level-card:not([data-q3-selected="true"]):focus::after {
  display: block;
}

.q3-levelshot {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 74.418605%;
  object-fit: cover;
}

.q3-level-card canvas {
  position: absolute;
  z-index: 2;
  top: 74.418605%;
  left: 0;
  width: 100%;
  height: 18.604651%;
}

.q3-level-card > span {
  position: absolute;
  z-index: 2;
  top: 77%;
  left: 0;
  width: 100%;
}

.q3-enhanced .q3-level-card > span {
  display: none;
}

.q3-level-page {
  position: absolute;
  z-index: 5;
  top: 13.333333%;
  width: 2.5%;
  height: 23.75%;
  padding: 0;
  border: 0;
  background: transparent;
}

.q3-level-page-previous {
  left: 2.8125%;
}

.q3-level-page-next {
  right: 2.8125%;
  transform: scaleX(-1);
}

.q3-level-page img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.q3-level-page-focused {
  display: none;
}

.q3-level-page:hover .q3-level-page-normal,
.q3-level-page:focus .q3-level-page-normal {
  display: none;
}

.q3-level-page:hover .q3-level-page-focused,
.q3-level-page:focus .q3-level-page-focused {
  display: block;
}

.q3-level-page:disabled {
  visibility: hidden;
}

.q3-level-title {
  position: absolute;
  top: 40%;
  left: 0;
  width: 100%;
  height: 5.625%;
  margin: 0;
  color: #ff6e00;
  font: 700 3cqw/1.2 var(--ui-sans);
  text-align: center;
  text-wrap: balance;
}

.q3-level-description {
  position: absolute;
  top: 47.916667%;
  left: 9.375%;
  display: none;
  width: 81.25%;
  height: auto;
}

.q3-level-description-fallback {
  position: absolute;
  top: 47.916667%;
  left: 12.5%;
  width: 75%;
  margin: 0;
  color: #ff6e00;
  font: 700 2.8cqw/1.35 var(--ui-sans);
  text-align: center;
  text-wrap: pretty;
}

.q3-about-screen .q3-banner-fallback,
.q3-cv-screen .q3-banner-fallback {
  top: 3.333333%;
}

.q3-about-screen,
.q3-cv-screen {
  background-color: #000;
  background-image: none;
}

.q3-about-frame {
  position: absolute;
  z-index: 2;
  inset: 0;
  pointer-events: none;
}

.q3-about-frame img {
  position: absolute;
}

.q3-about-frame-left {
  top: 16.25%;
  left: 0;
  width: 40%;
  height: 68.541667%;
}

.q3-about-frame-right {
  top: 15.833333%;
  left: 58.75%;
  width: 40%;
  height: 69.583333%;
}

.q3-about-text,
.q3-about-fallback {
  position: absolute;
  z-index: 4;
  top: 34.166667%;
  left: 22.1875%;
  width: 56.09375%;
  height: auto;
}

.q3-about-fallback {
  margin: 0;
  color: #fff;
  font: 700 2.6cqw/1.45 var(--ui-sans);
  text-align: center;
  text-transform: uppercase;
  text-wrap: pretty;
}

.q3-about-text {
  display: none;
}

.q3-about-actions {
  top: 88.333333%;
}

.q3-about-actions .q3-menu-item {
  margin-inline: auto 6.875%;
}

.q3-error-message {
  position: absolute;
  z-index: 4;
  top: 35%;
  left: 20%;
  width: 60%;
  margin: 0;
  color: #fff;
  font: 700 4cqw/1.25 var(--ui-sans);
  text-align: center;
}

.q3-error-message strong,
.q3-error-message span {
  display: block;
}

.q3-error-message strong {
  color: #f00;
  font-size: 1.8em;
}

.q3-game-copy {
  position: absolute;
  z-index: 4;
  top: 21.666667%;
  left: 20%;
  width: 60%;
  color: #fff;
  font: 700 2.8cqw/1.2 var(--ui-sans);
  text-align: center;
}

.q3-game-copy p {
  margin: 0;
  color: #ff6e00;
  font-size: .8em;
}

.q3-game-gallery {
  position: absolute;
  z-index: 4;
  top: 33.333333%;
  left: 25%;
  display: grid;
  width: 50%;
  height: 45%;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 1.25cqw;
}

.q3-game-shot {
  display: grid;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  border: .3125cqw solid #520900;
  background: #000;
  place-items: center;
}

.q3-game-shot:hover,
.q3-game-shot:focus-visible {
  border-color: #f00;
  outline: .3125cqw solid #a00000;
  outline-offset: 0;
}

.q3-game-shot img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.q3-gallery-dialog {
  position: fixed;
  inset: 0;
  max-width: calc(100vw - 192px);
  max-height: 96dvh;
  margin: auto;
  padding: 0;
  overflow: visible;
  border: .3125rem solid #640800;
  background: #000;
  overscroll-behavior: contain;
}

.q3-gallery-dialog::backdrop {
  background: rgb(0 0 0 / 92%);
}

.q3-gallery-dialog > [data-q3-gallery-image] {
  display: block;
  width: auto;
  height: auto;
  max-width: calc(100vw - 192px - .625rem);
  max-height: calc(96dvh - .625rem);
  object-fit: contain;
}

.q3-gallery-page {
  position: absolute;
  z-index: 3;
  top: 50%;
  width: 64px;
  height: 256px;
  padding: 0;
  border: 0;
  background: transparent;
  transform: translateY(-50%);
}

.q3-gallery-page-previous {
  left: -80px;
}

.q3-gallery-page-next {
  right: -80px;
}

.q3-gallery-page img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 32px;
  height: 256px;
  transform: translate(-50%, -50%);
}

.q3-gallery-page-next img {
  transform: translate(-50%, -50%) scaleX(-1);
}

.q3-gallery-page-focused,
.q3-gallery-page:hover .q3-gallery-page-normal,
.q3-gallery-page:focus .q3-gallery-page-normal {
  display: none;
}

.q3-gallery-page:hover .q3-gallery-page-focused,
.q3-gallery-page:focus .q3-gallery-page-focused {
  display: block;
}

.q3-pointer-ready .q3-gallery-dialog,
.q3-pointer-ready .q3-gallery-dialog * {
  cursor: auto;
}

.q3-cv-browser {
  position: absolute;
  z-index: 4;
  inset: 0;
}

.q3-cv-sections {
  position: absolute;
  top: 35.833333%;
  left: 0;
  display: grid;
  width: 31.25%;
  grid-auto-rows: 5.3125cqw;
  justify-items: end;
}

.q3-cv-section-button {
  position: relative;
  justify-self: end;
  width: 100%;
  height: 4.21875cqw;
  padding: 0;
  border: 0;
  color: #800000;
  font: 700 3cqw/1 var(--ui-sans);
  text-align: right;
  background: transparent;
}

.q3-cv-section-button[data-q3-selected="true"] {
  color: #f00;
}

.q3-cv-panels {
  position: absolute;
  top: 25%;
  left: 34.375%;
  display: grid;
  align-items: center;
  width: 42.5%;
  height: 58.333333%;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-color: #840000 #100000;
}

.q3-cv-panel:focus-visible {
  outline: 2px solid #f00;
  outline-offset: .3125cqw;
}

.q3-cv-panel:nth-child(-n + 2) {
  transform: translateY(-3.125cqw);
}

.q3-cv-values {
  margin: 0;
}

.q3-cv-character {
  position: absolute;
  z-index: 1;
  top: 25%;
  right: -5%;
  width: 34.375%;
  height: 37.5cqw;
  margin: 0;
  overflow: hidden;
  pointer-events: none;
}

.q3-cv-character video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.q3-cv-row {
  display: grid;
  grid-template-columns: 29.411765% minmax(0, 1fr);
  column-gap: 2.5cqw;
  align-items: start;
}

.q3-cv-row dt,
.q3-cv-row dd {
  min-width: 0;
  margin: 0;
}

.q3-cv-row dt {
  color: #ff6e00;
  text-align: right;
}

.q3-cv-row dt span {
  white-space: nowrap;
}

.q3-cv-row dd {
  color: #ffae00;
}

.q3-cv-row span {
  display: block;
  padding-inline: .4cqw;
  font: 700 2cqw/1.35 var(--ui-sans);
  overflow-wrap: break-word;
  white-space: pre-line;
}

.q3-cv-row canvas {
  display: none;
  width: 100%;
  height: auto;
}

.q3-enhanced .q3-cv-section-button > span {
  display: none;
}

.q3-cv-noscript {
  position: absolute;
  z-index: 6;
  top: 40%;
  left: 25%;
  width: 50%;
  color: #fff;
  font: 700 2.5cqw/1.4 var(--ui-sans);
  text-align: center;
}

.q3-cv-contact {
  position: relative;
  min-height: 35cqw;
}

.q3-cv-contact-message {
  position: absolute;
  z-index: 2;
  top: 3.125cqw;
  left: 0;
  width: 100%;
  height: 25cqw;
  padding: 1.25cqw;
  resize: none;
  border: 0;
  color: #ff0;
  background: rgb(68 27 0 / 88%);
  font: 700 max(16px, 2.5cqw)/1.25 var(--ui-sans);
  scrollbar-color: #ff6e00 #441b00;
}

.q3-cv-contact-message::placeholder {
  color: #ffae00;
  opacity: .72;
}

.q3-cv-contact-message:focus-visible {
  outline: .3125cqw solid #ff0;
  outline-offset: .3125cqw;
}

.q3-cv-contact-send {
  position: absolute;
  z-index: 10;
  top: 86.666667%;
  left: 80%;
  width: 20%;
  height: 13.333333%;
  padding: 0;
  border: 0;
  color: #b30000;
  background: transparent;
}

.q3-content {
  position: absolute;
  z-index: 4;
  top: 20%;
  left: 8.75%;
  width: 82.5%;
  height: 65%;
  padding: 2.5cqw 3.125cqw;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-color: #840000 #100000;
  background: rgb(0 0 0 / 82%);
  color: #d8d2ca;
  font: 2.1875cqw/1.48 var(--ui-sans);
  user-select: text;
}

.q3-content > :first-child {
  margin-top: 0;
}

.q3-content > :last-child {
  margin-bottom: 0;
}

.q3-content h2,
.q3-content h3 {
  margin: 1.15em 0 .45em;
  color: #df1d0d;
  font-weight: 700;
  line-height: 1.1;
  text-transform: uppercase;
}

.q3-content h2 {
  font-size: 1.25em;
}

.q3-content h3 {
  color: #b9afa4;
  font-size: 1em;
}

.q3-content p,
.q3-content ul {
  margin: 0 0 .8em;
}

.q3-content ul {
  padding-left: 1.25em;
}

.q3-content li + li {
  margin-top: .35em;
}

.q3-content a {
  color: #ef3b22;
  text-decoration-color: #8d170e;
  text-underline-offset: .14em;
}

.q3-content a:hover,
.q3-content a:focus-visible {
  color: #fff;
}

.q3-content time,
.q3-muted-copy {
  color: #91877e;
}

.q3-article-link {
  display: block;
  margin-bottom: 1.2em;
}

.q3-article-link strong {
  display: block;
  color: #e62b18;
  font-size: 1.08em;
  text-transform: uppercase;
}

.q3-profile {
  float: right;
  width: 25%;
  min-width: 96px;
  margin: 0 0 1em 1.5em;
  border: .3125cqw solid #5c0b05;
}

@media (max-aspect-ratio: 3 / 4) {
  .q3-screen {
    width: min(164vw, calc(100dvh * 4 / 3));
    max-width: none;
  }

  .q3-content {
    left: 19.53125%;
    width: 60.9375%;
    padding-inline: 3.75cqw;
    font-size: max(14px, 2.1875cqw);
  }

  .q3-screen > [data-q3-fire-banner] {
    transform: scale(.82);
    transform-origin: 50% 0;
  }

  .q3-server-screen > .q3-banner {
    transform: scale(.78);
    transform-origin: 50% 0;
  }

  .q3-server-screen > .q3-server-banner-fallback {
    left: 19.53125%;
    width: 60.9375%;
    font-size: 4cqw;
  }

  .q3-level-screen {
    width: 100vw;
  }

  .q3-map-screen {
    width: 100vw;
  }

  .q3-about-screen,
  .q3-cv-screen {
    width: 100vw;
  }

  .q3-back {
    left: 19.53125%;
  }

  .q3-level-screen .q3-back,
  .q3-map-screen .q3-back,
  .q3-about-screen .q3-back,
  .q3-cv-screen .q3-back,
  .q3-game-screen .q3-back {
    left: 0;
  }

  .q3-server-screen .q3-server-preview {
    display: none;
  }

  .q3-server-screen .q3-server-row {
    left: 19.53125%;
    width: 60.9375%;
    overflow: hidden;
  }

  .q3-server-screen .q3-server-row canvas {
    width: 100%;
  }

  .q3-server-screen .q3-server-arrows {
    left: 70.46875%;
  }

  .q3-server-screen .q3-server-go {
    right: 19.53125%;
  }

  .q3-console {
    left: 19.53125%;
    width: 60.9375%;
  }
}

@media (pointer: coarse) {
  .q3-screen,
  .q3-pointer-ready a,
  .q3-pointer-ready button,
  .q3-content a,
  .q3-back {
    cursor: auto;
  }

  .q3-pointer {
    display: none;
  }

  .q3-menu-item {
    height: 5.3125cqw;
  }

  .q3-server-row {
    min-height: 5cqw;
  }

  .q3-cv-sections {
    grid-auto-rows: 7cqw;
  }

  .q3-about-actions .q3-menu-item {
    min-height: 7cqw;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
  }
}

@media (forced-colors: active) {
  .q3-menu-item:focus-visible,
  .q3-back:focus-visible,
  .q3-server-go:focus-visible,
  .q3-server-row:focus-visible,
  .q3-server-arrow:focus-visible,
  .q3-map-card:focus-visible,
  .q3-map-page:focus-visible,
  .q3-level-card:focus-visible,
  .q3-level-page:focus-visible,
  .q3-cv-section-button:focus-visible,
  .q3-cv-panel:focus-visible,
  .q3-cv-contact-message:focus-visible,
  .q3-cv-contact-send:focus-visible,
  .q3-game-shot:focus-visible,
  .q3-gallery-page:focus-visible,
  .q3-content a:focus-visible {
    outline: 2px solid Highlight;
  }

  .q3-console:focus-within .q3-console-prompt {
    outline: 2px solid Highlight;
  }
}
