html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden], template {
  display: none;
}

a {
  background-color: transparent;
}

a:active, a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 1em 40px;
}

hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code, kbd, pre, samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

button, input, optgroup, select, textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, input[type='button'], input[type='reset'], input[type='submit'] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled], input[disabled] {
  cursor: default;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type='checkbox'], input[type='radio'] {
  box-sizing: border-box;
  padding: 0;
}

input[type='number']::-webkit-inner-spin-button, input[type='number']::-webkit-outer-spin-button {
  height: auto;
}

input[type='search'] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

input[type='search']::-webkit-search-cancel-button, input[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  -webkit-padding-start: 0;
  margin: 0;
  border: 0;
  vertical-align: baseline;
  padding: 0;
  font: inherit;
  -webkit-margin-after: 0;
  font-size: 100%;
  -webkit-margin-before: 0;
}

body {
  line-height: 1rem;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset {
  min-inline-size: 0;
}

*, *:before, *:after {
  box-sizing: border-box;
}

::selection {
  background-color: #ec008c;
  color: #ffffff;
}

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

html {
  font-size: 15px;
}

body {
  background-color: #000000;
  color: #ffffff;
  font-family: 'fira-sans-light', Helvetica, sans-serif;
  line-height: 1.5rem;
}

#app-root, #content {
  height: 100%;
}

#content {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  height: auto;
  width: 100%;
  outline: none;
}

header {
  position: relative;
}

header a {
  display: flex;
}

header .mobile-menu-toggle {
  display: none;
  flex: 1;
}

header .desktop-logo {
  width: 100px;
  height: 24.59px;
}

header .mobile-logo {
  display: none;
  width: 30px;
}

header .desktop-logo:hover, header .mobile-logo:hover {
  cursor: pointer;
}

header .desktop-logo:hover object, header .mobile-logo:hover object {
  filter: invert(80%) sepia(99%) saturate(4821%) hue-rotate(312deg) brightness(100%) contrast(100%);
}

header .personal-vendetta-logo {
  max-width: 180px;
}

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

header ul {
  align-items: center;
  display: flex;
  font-size: 1.8125rem;
  gap: 1rem;
  justify-content: flex-end;
}

header ul a {
  color: #ffffff;
}

header ul a:hover {
  color: #ec008c;
  text-decoration: none;
}

header .fa-brands {
  font-size: 1.3125rem;
}

header.rotated-background {
  margin-bottom: -1rem;
}

header.rotated-background:after {
  border-top: none;
  height: 133px;
}

header.rotated-background nav {
  align-items: flex-start;
}

main {
  flex: 1;
}

footer {
  border-top: 2px solid #d3d3d3;
}

footer ul a {
  color: #ffffff;
}

footer ul a:hover {
  color: #ec008c;
}

section {
  position: relative;
  width: 100%;
  z-index: 1;
}

.container {
  margin: 0 auto;
  position: relative;
}

.container.width-460 {
  max-width: 460px;
  width: 90%;
}

.container.width-540 {
  max-width: 540px;
  width: 90%;
}

.container.width-900 {
  max-width: 900px;
  width: 90%;
}

.container.width-1000 {
  max-width: 1000px;
  width: 90%;
}

.container.width-1300 {
  max-width: 1300px;
  padding-left: 1.8125rem;
  padding-right: 1.8125rem;
  width: 100%;
}

.container.full-width {
  margin: 1.3125rem;
}

.container.full-screen {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.container.inset-0 {
  padding: 1rem;
}

.container.inset-plus-1 {
  padding: 1.3125rem;
}

.container.inset-plus-2 {
  padding: 1.8125rem;
}

.container.horizontal-inset-plus-4 {
  padding-left: 3.975rem;
  padding-right: 3.975rem;
}

.container.vertical-scroll {
  height: 100%;
  overflow-y: auto;
  scroll-behavior: smooth;
}

.container.horizontal-scroll {
  width: 100%;
  overflow-x: auto;
  scroll-behavior: smooth;
}

.container.border {
  border: 1px solid #d3d3d3;
  border-radius: 3px;
  padding: 1rem;
}

.row {
  display: flex;
  position: relative;
  width: 100%;
}

.grid.four-up {
  display: grid;
  grid-template-rows: 1fr;
  grid-template-columns: repeat(4, 1fr);
  grid-row-gap: 2.625rem;
  grid-column-gap: 2.625rem;
}

.column {
  flex: 1;
  min-width: 0;
  position: relative;
  width: 100%;
}

.column.width-460 {
  max-width: 460px;
}

.layerer {
  position: relative;
  width: 100%;
  height: 100%;
}

.layerer .background-layer, .layerer .foreground-layer {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  inset: 0;
}

.layerer .background-layer {
  z-index: -1;
}

.layerer .midground-layer {
  display: flex;
  width: 100%;
  height: 100%;
}

.layerer .foreground-layer {
  z-index: 1;
}

.layerer .mobile {
  display: none;
}

.inliner {
  align-items: center;
  display: flex;
  flex: 0 1 auto;
  gap: 1rem;
  width: auto;
}

.inliner li {
  flex-shrink: 0;
}

.inliner.space-between {
  justify-content: space-between;
}

span.inliner {
  display: inline-flex;
  vertical-align: middle;
}

.button-input {
  align-items: center;
  display: flex;
  flex: 1;
}

.button-input input {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.button-input button, .button-input a.button {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.fieldset-group {
  display: flex;
  gap: 1rem;
}

.fieldset-group fieldset, .fieldset-group div {
  flex: 1;
  position: relative;
}

.fieldset-group .flex-2 {
  flex: 2;
}

.fieldset-group .flex-3 {
  flex: 3;
}

.fieldset-group.width-400 {
  max-width: 400px;
}

.button-group {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}

.button-group button, .button-group .button {
  display: inline-block;
  width: auto;
}

.button-group.centered {
  justify-content: center;
}

.button-group.full-width button, .button-group.full-width .button {
  flex: 1;
}

.desktop {
  display: block;
}

.mobile {
  display: none;
}

hr {
  background-color: #ffffff;
  border: 0;
  display: block;
  height: 1px;
  margin: 0.85rem 0 0.85rem;
}

hr.mini {
  margin-left: auto;
  margin-right: auto;
  width: 50%;
}

.border-bottom {
  border-bottom: 2px solid #ffffff;
}

.border-bottom-light {
  border-bottom: 1px solid #d3d3d3;
}

.text-align-center {
  display: block;
  text-align: center;
}

.text-align-left {
  text-align: left;
}

.text-align-right {
  text-align: right;
}

.text-inliner {
  align-items: baseline;
  display: flex;
  gap: 0.25rem;
}

.center-div {
  margin: 0 auto;
}

.flex-align-center-center {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
}

.flex-1 {
  flex: 1;
}

.flex-2 {
  flex: 2;
}

.flex-3 {
  flex: 3;
}

.flex-4 {
  flex: 4;
}

.flex-5 {
  flex: 5;
}

.margin-top-18 {
  margin-top: 18rem;
}

.margin-top-minus-1 {
  margin-top: 0.625rem;
}

.margin-bottom-minus-1 {
  margin-bottom: 0.625rem;
}

.margin-left-minus-1 {
  margin-left: 0.625rem;
}

.margin-right-minus-1 {
  margin-right: 0.625rem;
}

.padding-top-minus-1 {
  padding-top: 0.625rem;
}

.padding-bottom-minus-1 {
  padding-bottom: 0.625rem;
}

.padding-left-minus-1 {
  padding-left: 0.625rem;
}

.padding-right-minus-1 {
  padding-right: 0.625rem;
}

.gap-minus-1 {
  gap: 0.625rem;
}

.margin-top-minus-4 {
  margin-top: 0.25rem;
}

.margin-bottom-minus-4 {
  margin-bottom: 0.25rem;
}

.margin-left-minus-4 {
  margin-left: 0.25rem;
}

.margin-right-minus-4 {
  margin-right: 0.25rem;
}

.padding-top-minus-4 {
  padding-top: 0.25rem;
}

.padding-bottom-minus-4 {
  padding-bottom: 0.25rem;
}

.padding-left-minus-4 {
  padding-left: 0.25rem;
}

.padding-right-minus-4 {
  padding-right: 0.25rem;
}

.gap-minus-4 {
  gap: 0.25rem;
}

.margin-top-0 {
  margin-top: 1rem;
}

.margin-bottom-0 {
  margin-bottom: 1rem;
}

.margin-left-0 {
  margin-left: 1rem;
}

.margin-right-0 {
  margin-right: 1rem;
}

.padding-top-0 {
  padding-top: 1rem;
}

.padding-bottom-0 {
  padding-bottom: 1rem;
}

.padding-left-0 {
  padding-left: 1rem;
}

.padding-right-0 {
  padding-right: 1rem;
}

.gap-0 {
  gap: 1rem;
}

.margin-top-plus-2 {
  margin-top: 1.8125rem;
}

.margin-bottom-plus-2 {
  margin-bottom: 1.8125rem;
}

.margin-left-plus-2 {
  margin-left: 1.8125rem;
}

.margin-right-plus-2 {
  margin-right: 1.8125rem;
}

.padding-top-plus-2 {
  padding-top: 1.8125rem;
}

.padding-bottom-plus-2 {
  padding-bottom: 1.8125rem;
}

.padding-left-plus-2 {
  padding-left: 1.8125rem;
}

.padding-right-plus-2 {
  padding-right: 1.8125rem;
}

.gap-plus-2 {
  gap: 1.8125rem;
}

.margin-top-minus-2 {
  margin-top: 0.5rem;
}

.margin-bottom-minus-2 {
  margin-bottom: 0.5rem;
}

.margin-left-minus-2 {
  margin-left: 0.5rem;
}

.margin-right-minus-2 {
  margin-right: 0.5rem;
}

.padding-top-minus-2 {
  padding-top: 0.5rem;
}

.padding-bottom-minus-2 {
  padding-bottom: 0.5rem;
}

.padding-left-minus-2 {
  padding-left: 0.5rem;
}

.padding-right-minus-2 {
  padding-right: 0.5rem;
}

.gap-minus-2 {
  gap: 0.5rem;
}

.margin-top-plus-4 {
  margin-top: 3.975rem;
}

.margin-bottom-plus-4 {
  margin-bottom: 3.975rem;
}

.margin-left-plus-4 {
  margin-left: 3.975rem;
}

.margin-right-plus-4 {
  margin-right: 3.975rem;
}

.padding-top-plus-4 {
  padding-top: 3.975rem;
}

.padding-bottom-plus-4 {
  padding-bottom: 3.975rem;
}

.padding-left-plus-4 {
  padding-left: 3.975rem;
}

.padding-right-plus-4 {
  padding-right: 3.975rem;
}

.gap-plus-4 {
  gap: 3.975rem;
}

.margin-top-plus-1 {
  margin-top: 1.3125rem;
}

.margin-bottom-plus-1 {
  margin-bottom: 1.3125rem;
}

.margin-left-plus-1 {
  margin-left: 1.3125rem;
}

.margin-right-plus-1 {
  margin-right: 1.3125rem;
}

.padding-top-plus-1 {
  padding-top: 1.3125rem;
}

.padding-bottom-plus-1 {
  padding-bottom: 1.3125rem;
}

.padding-left-plus-1 {
  padding-left: 1.3125rem;
}

.padding-right-plus-1 {
  padding-right: 1.3125rem;
}

.gap-plus-1 {
  gap: 1.3125rem;
}

.margin-top-minus-3 {
  margin-top: 0.375rem;
}

.margin-bottom-minus-3 {
  margin-bottom: 0.375rem;
}

.margin-left-minus-3 {
  margin-left: 0.375rem;
}

.margin-right-minus-3 {
  margin-right: 0.375rem;
}

.padding-top-minus-3 {
  padding-top: 0.375rem;
}

.padding-bottom-minus-3 {
  padding-bottom: 0.375rem;
}

.padding-left-minus-3 {
  padding-left: 0.375rem;
}

.padding-right-minus-3 {
  padding-right: 0.375rem;
}

.gap-minus-3 {
  gap: 0.375rem;
}

.margin-top-plus-5 {
  margin-top: 6rem;
}

.margin-bottom-plus-5 {
  margin-bottom: 6rem;
}

.margin-left-plus-5 {
  margin-left: 6rem;
}

.margin-right-plus-5 {
  margin-right: 6rem;
}

.padding-top-plus-5 {
  padding-top: 6rem;
}

.padding-bottom-plus-5 {
  padding-bottom: 6rem;
}

.padding-left-plus-5 {
  padding-left: 6rem;
}

.padding-right-plus-5 {
  padding-right: 6rem;
}

.gap-plus-5 {
  gap: 6rem;
}

.margin-top-plus-3 {
  margin-top: 2.625rem;
}

.margin-bottom-plus-3 {
  margin-bottom: 2.625rem;
}

.margin-left-plus-3 {
  margin-left: 2.625rem;
}

.margin-right-plus-3 {
  margin-right: 2.625rem;
}

.padding-top-plus-3 {
  padding-top: 2.625rem;
}

.padding-bottom-plus-3 {
  padding-bottom: 2.625rem;
}

.padding-left-plus-3 {
  padding-left: 2.625rem;
}

.padding-right-plus-3 {
  padding-right: 2.625rem;
}

.gap-plus-3 {
  gap: 2.625rem;
}

h1 {
  font-family: 'fira-sans-bold', Helvetica, sans-serif;
  font-size: 3.975rem;
  line-height: 6rem;
}

h2 {
  font-family: 'fira-sans-semibold', Helvetica, sans-serif;
  font-size: 2.625rem;
  line-height: 3.2rem;
}

h3, legend {
  font-family: 'fira-sans-medium', Helvetica, sans-serif;
  font-size: 1.8125rem;
  line-height: 3rem;
}

h4 {
  font-family: 'fira-sans-regular', Helvetica, sans-serif;
  font-size: 1.3125rem;
  letter-spacing: 1px;
  line-height: 1.8125rem;
  text-transform: uppercase;
}

h4 .circular-numeral {
  font-size: 1em;
}

h4 em {
  text-transform: none;
}

h5 {
  font-family: 'fira-sans-regular', Helvetica, sans-serif;
  font-size: 1.25rem;
  line-height: 1.8125rem;
}

h6, label, th, .small-caps {
  font-family: 'fira-sans-medium', Helvetica, sans-serif;
  font-size: 0.8rem;
  letter-spacing: 1px;
  text-transform: uppercase;
}

h6 span, label span, th span, .small-caps span {
  font-family: 'fira-sans-light', Helvetica, sans-serif;
  font-size: 1rem;
  line-height: 1.5rem;
  text-transform: none;
}

a {
  color: #ec008c;
  text-decoration: none;
}

a:hover {
  cursor: pointer;
  text-decoration: underline;
}

b, strong {
  font-family: 'fira-sans-semibold', Helvetica, sans-serif;
}

i, em {
  font-family: 'fira-sans-light-italic', Helvetica, sans-serif;
}

.small-caps {
  font-family: 'fira-sans-book', Helvetica, sans-serif;
  font-size: 0.8em;
}

strong.small-caps {
  font-family: 'fira-sans-bold', Helvetica, sans-serif;
  letter-spacing: 0.5px;
}

small {
  font-size: 0.85em;
  line-height: 1.15em;
}

sup {
  top: 0;
}

.overflow-ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
}

.nowrap {
  white-space: nowrap;
}

.note {
  color: #d3d3d3;
}

.knockout {
  background-color: #000000;
  border-radius: 3px;
  color: #ffffff;
  display: inline-block;
  padding: 0 0.375rem;
}

.circular-numeral {
  width: 1.3125em;
  justify-content: center;
  height: 1.3125em;
  margin-right: 0.375rem;
  align-items: center;
  font-size: 0.8em;
  background-color: #000000;
  border-radius: 50%;
  display: inline-flex;
  color: #ffffff;
}

.circular-numeral.inverted {
  background-color: #ffffff;
  color: #000000;
  font-family: 'fira-sans-medium', Helvetica, sans-serif;
}

fieldset, .fieldset-group {
  border-top: 1px solid #464646;
  margin-top: 1.8125rem;
  padding-top: 1.3125rem;
}

fieldset fieldset, .fieldset-group fieldset {
  border-top: none;
  margin-top: 0;
  padding-top: 0;
}

fieldset.sticky, .fieldset-group.sticky {
  background-color: #000000;
  border-top: 1px solid #464646;
  padding-top: 1rem;
  padding-bottom: 1rem;
  position: sticky;
  bottom: 0;
  z-index: 1;
}

form > fieldset:first-child {
  border-top: none;
  margin-top: 0;
  padding-top: 0;
}

label.inline-checkbox, label.inline-radio {
  align-items: center;
  display: flex;
  gap: 0.5rem;
  letter-spacing: 0;
  position: relative;
}

label.inline-checkbox:hover, label.inline-radio:hover {
  cursor: pointer;
}

input, textarea, .select-menu > span {
  line-height: 1.5rem;
  width: 100%;
  font-family: 'fira-sans-light', Helvetica, sans-serif;
  border: 2px solid #ffffff;
  padding: 0.5rem 1rem;
  position: relative;
  background-color: black;
  border-radius: 3px;
  display: inline-block;
  color: #ffffff;
}

input:hover, textarea:hover, .select-menu > span:hover {
  cursor: auto;
}

input:focus, textarea:focus, .select-menu > span:focus {
  box-shadow: 0 0.5px 3px 3px #ec008c;
  outline: none;
  z-index: 1;
}

input::placeholder, textarea::placeholder, .select-menu > span::placeholder {
  color: #464646;
  font-family: 'fira-sans-book-italic', Helvetica, sans-serif;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder, .select-menu > span::-webkit-input-placeholder {
  color: #464646;
  font-family: 'fira-sans-book-italic', Helvetica, sans-serif;
}

input::-moz-placeholder, textarea::-moz-placeholder, .select-menu > span::-moz-placeholder {
  color: #464646;
  font-family: 'fira-sans-book-italic', Helvetica, sans-serif;
}

input:-moz-placeholder, textarea:-moz-placeholder, .select-menu > span:-moz-placeholder {
  color: #464646;
  font-family: 'fira-sans-book-italic', Helvetica, sans-serif;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder, .select-menu > span:-ms-input-placeholder {
  color: #464646;
  font-family: 'fira-sans-book-italic', Helvetica, sans-serif;
}

input.white, textarea.white, .select-menu > span.white {
  background-color: #ffffff;
  border: 1px solid #d3d3d3;
  color: #000000;
}

input.white::placeholder, textarea.white::placeholder, .select-menu > span.white::placeholder {
  color: #d3d3d3;
  font-family: 'fira-sans-book-italic', Helvetica, sans-serif;
}

input.white::-webkit-input-placeholder, textarea.white::-webkit-input-placeholder, .select-menu > span.white::-webkit-input-placeholder {
  color: #d3d3d3;
  font-family: 'fira-sans-book-italic', Helvetica, sans-serif;
}

input.white::-moz-placeholder, textarea.white::-moz-placeholder, .select-menu > span.white::-moz-placeholder {
  color: #d3d3d3;
  font-family: 'fira-sans-book-italic', Helvetica, sans-serif;
}

input.white:-moz-placeholder, textarea.white:-moz-placeholder, .select-menu > span.white:-moz-placeholder {
  color: #d3d3d3;
  font-family: 'fira-sans-book-italic', Helvetica, sans-serif;
}

input.white:-ms-input-placeholder, textarea.white:-ms-input-placeholder, .select-menu > span.white:-ms-input-placeholder {
  color: #d3d3d3;
  font-family: 'fira-sans-book-italic', Helvetica, sans-serif;
}

input.size-plus-2, textarea.size-plus-2, .select-menu > span.size-plus-2 {
  font-size: 1.8125rem;
  height: 72px;
  padding: 1.3125rem;
}

input.small, textarea.small, .select-menu > span.small {
  padding: 0.375rem 1rem;
}

input:disabled, input.disabled, textarea:disabled, textarea.disabled, .select-menu > span:disabled, .select-menu > span.disabled {
  color: #d3d3d3;
  cursor: not-allowed;
  pointer-events: none;
}

input[type=checkbox], input[type=radio] {
  appearance: none;
}

input[type=checkbox]:checked:before, input[type=radio]:checked:before {
  background-color: #ffffff;
  content: '';
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  width: 9.5px;
  height: 9.5px;
}

input[type=checkbox]:hover, input[type=radio]:hover {
  cursor: pointer;
}

input[type=checkbox].size-plus-1, input[type=radio].size-plus-1 {
  width: 1.3125rem;
  height: 1.3125rem;
}

input[type=radio] {
  border-radius: 50%;
}

input[type=radio]:checked:before {
  border-radius: 50%;
}

button, .button {
  line-height: 1.5rem;
  gap: 0.375rem;
  font-family: 'fira-sans-regular', Helvetica, sans-serif;
  border: 2px solid #ffffff;
  align-items: center;
  padding: 0.5rem 1rem;
  text-align: center;
  white-space: nowrap;
  position: relative;
  text-decoration: none;
  background-color: transparent;
  border-radius: 3px;
  display: inline-flex;
  color: #ffffff;
}

button:hover, .button:hover {
  background-color: #ec008c;
  border-color: #ec008c;
  color: #ffffff;
  cursor: pointer;
  text-decoration: none;
}

button:focus, .button:focus {
  box-shadow: 0 0.5px 3px 3px #ec008c;
  outline: none;
  z-index: 1;
}

button:disabled, button.disabled, .button:disabled, .button.disabled {
  background-color: #d3d3d3;
  border-color: #d3d3d3;
  color: #ffffff;
}

button:disabled:hover, button.disabled:hover, .button:disabled:hover, .button.disabled:hover {
  cursor: auto;
}

button.magenta, .button.magenta {
  background-color: #ec008c;
  border-color: #ec008c;
  color: #ffffff;
}

button.magenta:hover, .button.magenta:hover {
  background-color: #f6189c;
  border-color: #f6189c;
}

button.black, .button.black {
  background-color: #000000;
}

button.kickstarter, .button.kickstarter {
  background-color: #05ce78;
  border-color: #05ce78;
}

button.kickstarter:hover, .button.kickstarter:hover {
  background-color: #29e28e;
  border-color: #29e28e;
}

button.outline-white, .button.outline-white {
  border-color: #ffffff;
  color: #ffffff;
}

button.outline-black, .button.outline-black {
  border-color: #000000;
  color: #000000;
}

button.outline-grey, .button.outline-grey {
  border-color: #d3d3d3;
  color: #000000;
}

button.outline-light-grey, .button.outline-light-grey {
  border-color: #d3d3d3;
  color: #000000;
}

button.naked, .button.naked {
  border-color: transparent;
}

button.size-plus-1, .button.size-plus-1 {
  font-size: 1.3125rem;
  padding: 0.5rem 1.8125rem 0.625rem;
}

button.size-plus-1 img, .button.size-plus-1 img {
  max-height: 1.6rem;
  width: auto;
}

button.size-plus-2, .button.size-plus-2 {
  font-size: 1.8125rem;
  height: 72px;
  padding: 1.3125rem;
}

button.small, .button.small {
  padding: 0.375rem 1rem;
}

button.extra-small, .button.extra-small {
  padding: 0 0.5rem;
}

button.centered, .button.centered {
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 320px;
}

button.full-width, .button.full-width {
  max-width: 100%;
  width: 100%;
}

.validation-message-container input {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.validation-message-container .button, .validation-message-container button {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.validation-message {
  background-color: #ffffff;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  color: #000000;
  padding: 0.625rem 1.3125rem;
}

.validation-message.error {
  background-color: #fff200;
}

.validation-message.success {
  background-color: #ec008c;
}

.validation-message.warn {

}

.flash-root {
  position: fixed;
  top: 58px;
  left: 0;
  width: auto;
  z-index: 8;
}

.flash-message {
  background-color: #ffffff;
}

.flash-message.error {
  background-color: #fff200;
  color: #000000;
}

.flash-message.success {
  background-color: #ec008c;
  color: #ffffff;
}

.flash-message.warn {

}

.flash-message .container {
  height: auto;
  padding: 0.5rem 1.3125rem;
}

.flash-message span {
  margin-right: 1rem;
}

.flash-message span a {
  display: inline;
  padding: 0;
}

.flash-message span:hover {
  cursor: pointer;
}

.flash-message a {
  color: #ffffff;
  text-decoration: underline;
}

.flash-message a:hover {
  color: #ffffff;
}

.site-spinner {
  width: 80px;
  right: 0;
  top: 0;
  height: 35px;
  border-bottom-right-radius: 3px;
  position: fixed;
  border-bottom-left-radius: 3px;
  z-index: 15;
  box-shadow: 2px 2px 8px #d3d3d3;
  margin-left: -50px;
  background-color: #ec008c;
  left: 50%;
}

.site-spinner:after {
  width: 24px;
  background-repeat: no-repeat;
  height: 24px;
  position: fixed;
  margin-top: 4px;
  content: '';
  background-size: 24px 24px;
  margin-left: -22px;
  display: inline-block;
  background-image: url('/images/gifs/spinner-white.gif');
  left: 50%;
}

[class^="icon-"], [class*=" icon-"] {
  line-height: inherit;
  font-family: 'ad-atra-icons';
  text-transform: none;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  speak: never;
  font-weight: normal;
  font-size: 1.1rem;
  font-style: normal;
  font-variant: normal;
  -moz-osx-font-smoothing: grayscale;
}

.icon-cost-cerebrium-0:before {
  content: '\e900';
}

.icon-cost-cerebrium-1:before {
  content: '\e901';
}

.icon-cost-cerebrium-2:before {
  content: '\e902';
}

.icon-cost-cerebrium-3:before {
  content: '\e903';
}

.icon-cost-cerebrium-4:before {
  content: '\e904';
}

.icon-cost-cerebrium-x:before {
  content: '\e905';
}

.icon-cost-corpus-0:before {
  content: '\e906';
}

.icon-cost-corpus-1:before {
  content: '\e907';
}

.icon-cost-corpus-2:before {
  content: '\e908';
}

.icon-cost-corpus-3:before {
  content: '\e909';
}

.icon-cost-corpus-4:before {
  content: '\e90a';
}

.icon-cost-corpus-x:before {
  content: '\e90b';
}

.icon-cost-idea-1:before {
  content: '\e90c';
}

.icon-cost-idea-2:before {
  content: '\e90d';
}

.icon-cost-idea-3:before {
  content: '\e90e';
}

.icon-cost-idea-x:before {
  content: '\e90f';
}

.icon-cost-memory-1:before {
  content: '\e910';
}

.icon-cost-memory-2:before {
  content: '\e911';
}

.icon-cost-memory-3:before {
  content: '\e912';
}

.icon-cost-memory-4:before {
  content: '\e913';
}

.icon-cost-memory-5:before {
  content: '\e914';
}

.icon-cost-memory-6:before {
  content: '\e915';
}

.icon-cost-memory-x:before {
  content: '\e916';
}

.icon-cost-state-1:before {
  content: '\e917';
}

.icon-cost-state-2:before {
  content: '\e918';
}

.icon-cost-state-3:before {
  content: '\e919';
}

.icon-cost-state-x:before {
  content: '\e91a';
}

.icon-cost-tick-q:before {
  content: '\e91b';
}

.icon-cost-tick-1:before {
  content: '\e91c';
}

.icon-cost-tick-2:before {
  content: '\e91d';
}

.icon-cost-tick-3:before {
  content: '\e91e';
}

.icon-cost-tick-x:before {
  content: '\e91f';
}

.icon-resource-cerebrium-transient:before {
  content: '\e920';
}

.icon-resource-cerebrium:before {
  content: '\e921';
}

.icon-resource-corpus-transient:before {
  content: '\e922';
}

.icon-resource-corpus:before {
  content: '\e923';
}

.icon-resource-idea:before {
  content: '\e924';
}

.icon-resource-memory:before {
  content: '\e925';
}

.icon-resource-state:before {
  content: '\e926';
}

.icon-resource-tick:before {
  content: '\e927';
}

.icon-set-00-promo:before {
  content: '\e928';
}

.icon-set-01-duel:before {
  content: '\e929';
}

.icon-set-02-melee:before {
  content: '\e92a';
}

.icon-set-03-possibilities:before {
  content: '\e92b';
}

.icon-set-04-puppeteer:before {
  content: '\e92c';
}

.icon-set-05-agaku:before {
  content: '\e92d';
}

.icon-set-06-ego:before {
  content: '\e92e';
}

.icon-trigger-down:before {
  content: '\e92f';
}

.icon-trigger-up-down:before {
  content: '\e930';
}

.icon-trigger-up:before {
  content: '\e931';
}

.icon-type-mental-attack:before {
  content: '\e932';
}

.icon-type-mental-reaction:before {
  content: '\e933';
}

.icon-type-mental-state:before {
  content: '\e934';
}

.icon-type-physical-attack:before {
  content: '\e935';
}

.icon-type-physical-reaction:before {
  content: '\e936';
}

.icon-type-physical-state:before {
  content: '\e937';
}

ol, ul, li {
  position: relative;
}

ol.circular-numerals {
  list-style: none;
  counter-reset: circular-numerals;
  margin-left: 1.5em;
}

ol.circular-numerals li {
  counter-increment: circular-numerals;
  margin-bottom: 0.5rem;
}

ol.circular-numerals li::before {
  width: 1.3125em;
  top: 0.35em;
  justify-content: center;
  font-family: 'fira-sans-medium', Helvetica, sans-serif;
  height: 1.3125em;
  margin-right: 0.375rem;
  align-items: center;
  position: absolute;
  content: counter(circular-numerals);
  font-size: 0.8em;
  background-color: #000000;
  border-radius: 50%;
  display: inline-flex;
  color: #ffffff;
  left: -1.8125em;
}

.bulleted-list {
  margin-left: 1em;
}

.bulleted-list li:before {
  width: 6px;
  top: 0.6em;
  height: 6px;
  position: absolute;
  content: '';
  background-color: #000000;
  border-radius: 50%;
  display: block;
  left: -0.8em;
}

img, video {
  display: block;
  max-width: 100%;
  width: 100%;
}

img.inline {
  display: inline-block;
  max-width: 1.8125rem;
  max-height: 1.8125rem;
  vertical-align: middle;
}

img.inline.size-0 {
  max-width: 1rem;
  max-height: 1rem;
}

img.inline.width-24 {
  max-width: 24px;
  max-height: 24px;
}

img.inline.width-42 {
  max-width: 42px;
  max-height: 42px;
}

img.circular-border {
  border: 1px solid #ffffff;
  border-radius: 50%;
}

object {
  pointer-events: none;
}

.object-fit-contain-container, .object-fit-cover-container {
  overflow: hidden;
  position: relative;
}

.object-fit-contain-container.width-20, .object-fit-cover-container.width-20 {
  width: 20px;
  height: 20px;
}

.object-fit-contain-container img, .object-fit-cover-container img {
  width: 100%;
  height: 100%;
}

.object-fit-contain-container img {
  object-fit: contain;
}

.object-fit-cover-container img {
  object-fit: cover;
}

.inline-icon {
  display: inline-block;
  margin-bottom: 2px;
  width: 16px;
  height: 16px;
  overflow: hidden;
  position: relative;
  vertical-align: middle;
}

.inline-icon img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

table {
  width: 100%;
}

.select-menu, .button-menu {
  cursor: pointer;
  height: 41px;
  line-height: 1.5rem;
  position: relative;
}

.select-menu.open, .button-menu.open {
  z-index: 2;
}

.select-menu.width-210, .button-menu.width-210 {
  min-width: 210px;
}

.select-menu.half-width, .button-menu.half-width {
  max-width: 50%;
}

.select-menu ul, .button-menu ul {
  min-width: 100%;
  width: auto;
  height: auto;
  padding: 0;
  text-align: left;
  border-bottom-right-radius: 3px;
  position: absolute;
  border-bottom-left-radius: 3px;
  border-top: 1px solid #d3d3d3;
  z-index: 3;
  box-shadow: 0 7px 8px hsl(0deg 0% 0% / 10%);
  overflow: auto;
  background-color: #ffffff;
  max-height: 60vh;
  color: #000000;
  left: 0;
}

.select-menu div.empty, .button-menu div.empty {
  text-align: center;
  margin-top: 10px;
  margin-bottom: 6px;
  font-style: italic;
  color: #464646;
}

.select-menu li, .button-menu li {
  padding: 0.5rem 1rem;
  color: #000000;
  white-space: nowrap;
}

.select-menu li:last-child, .button-menu li:last-child {
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}

.select-menu li.highlighted, .select-menu li:hover, .button-menu li.highlighted, .button-menu li:hover {
  background-color: #ec008c;
  color: #ffffff;
  cursor: pointer;
}

.select-menu li.highlighted a, .select-menu li:hover a, .button-menu li.highlighted a, .button-menu li:hover a {
  color: #ffffff;
}

.select-menu li.header, .button-menu li.header {
  padding-top: 0;
  padding-bottom: 0;
}

.select-menu li.header.highlighted, .select-menu li.header:hover, .button-menu li.header.highlighted, .button-menu li.header:hover {
  background-color: #ffffff;
  color: #000000;
  cursor: auto;
}

.select-menu.large, .button-menu.large {
  font-size: 2.625rem;
  height: 74px;
}

.select-menu.large ul, .button-menu.large ul {
  top: 74px;
}

.select-menu.large li, .button-menu.large li {
  padding: 1rem;
}

.select-menu.small, .button-menu.small {
  height: 34px;
}

.select-menu.small ul, .button-menu.small ul {
  top: 34px;
}

.select-menu.small li, .button-menu.small li {
  line-height: 1rem;
  padding: 0.375rem 1rem;
}

.select-menu.small .fas, .button-menu.small .fas {
  font-size: 0.85em;
}

.select-menu {
  background-color: transparent;
  border-radius: 3px;
}

.select-menu span.selected {
  white-space: nowrap;
}

.select-menu button.inlay {
  color: #ffffff;
  font-size: 120%;
  line-height: 1.8125rem;
  right: 0;
  top: 0;
  justify-content: center;
  font-family: 'Font Awesome 6 Free';
  height: 100%;
  text-rendering: auto;
  border: none;
  align-items: center;
  -webkit-font-smoothing: antialiased;
  position: absolute;
  z-index: 1;
  font-weight: 900;
  background-color: transparent;
  padding-right: 1rem;
  display: flex;
  font-style: normal;
  font-variant: normal;
  -moz-osx-font-smoothing: grayscale;
  padding-left: 1rem;
}

.select-menu button.inlay:before {
  content: '\f078';
}

.select-menu button.inlay:hover {
  background-color: transparent;
  color: #f6189c;
}

.select-menu button.inlay:focus {
  box-shadow: none;
}

.select-menu.open input {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  box-shadow: 0 0.5px 3px 3px #ec008c;
  outline: none;
  z-index: 1;
}

.select-menu.open button.inlay:before {
  content: '\f00d';
}

.select-menu.open button.inlay:hover {
  color: #ec008c;
}

.select-menu.large input {
  height: 74px;
}

.select-menu.large button.inlay {
  padding-top: 2.2rem;
}

.select-menu.small input {
  height: 34px;
  line-height: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.375rem;
}

.select-menu.small button.inlay {
  padding-top: 7px;
}

.button-menu.open button {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.button-menu button:hover {
  background-color: #f6189c;
  border-color: #f6189c;
}

.button-menu button {
  padding-right: 2.3rem;
}

.button-menu button:after {
  line-height: 1.8125rem;
  right: 0;
  top: 0;
  justify-content: center;
  font-family: 'Font Awesome 6 Free';
  height: 100%;
  text-rendering: auto;
  border: none;
  align-items: center;
  -webkit-font-smoothing: antialiased;
  position: absolute;
  z-index: 1;
  font-weight: 900;
  content: '\f078';
  background-color: transparent;
  padding-right: 1rem;
  display: flex;
  font-style: normal;
  font-variant: normal;
  -moz-osx-font-smoothing: grayscale;
  color: #ffffff;
  padding-left: 1rem;
}

.button-menu ul {
  border-top: none;
  border-top-right-radius: 3px;
  min-width: 10rem;
}

.button-menu.large button {
  height: 74px;
  line-height: 1rem;
  padding: 1rem 3.975rem 1rem 1.3125rem;
}

.button-menu.small button {
  height: 34px;
  line-height: 1rem;
  padding: 0.375rem 2.625rem 0.375rem 1rem;
}

.modal-background {
  right: 0;
  top: 0;
  justify-content: center;
  align-items: center;
  padding: 2.625rem;
  flex-direction: row;
  position: fixed;
  z-index: 13;
  inset: 0;
  overflow: auto;
  background-color: hsla(0, 0%, 0%, 0.9);
  display: flex;
  bottom: 0;
  max-height: calc(var(--vh, 1vh) * 100);
  left: 0;
}

.modal-background.width-20 .modal {
  max-width: 20rem;
}

.modal-background.width-30 .modal {
  max-width: 30rem;
}

.modal-background.full-width .modal {
  max-width: 100%;
}

.modal-background .modal {
  width: 100%;
  max-width: 20rem;
  border: 1px solid #d3d3d3;
  flex-direction: column;
  position: relative;
  background-color: #ffffff;
  border-radius: 3px;
  display: flex;
  max-height: 100%;
  color: #000000;
}

.modal-background .modal .container {
  width: 100%;
}

.modal-background .modal .border-bottom {
  border-bottom: 1px solid #d3d3d3;
}

.modal-background .modal-header {
  align-items: center;
  border-bottom: 1px solid #d3d3d3;
  display: flex;
  flex: 0 0 auto;
  flex-direction: row;
  gap: 1.8125rem;
  justify-content: space-between;
}

.modal-background .modal-header .fa-solid {
  display: inline-block;
  padding: 0.625rem 1rem;
}

.modal-background .modal-header .fa-solid:hover {
  color: #ec008c;
  cursor: pointer;
}

.modal-background .modal-header.closeable .fa-times {
  font-size: 1rem;
  justify-self: flex-end;
}

.modal-background .modal-header.closeable .fa-times:hover {
  color: #ec008c;
  cursor: pointer;
}

.modal-background .modal-header.poppable .fa-chevron-left {
  font-size: 1rem;
}

.modal-background .modal-header.poppable .fa-chevron-left:hover {
  color: #ec008c;
  cursor: pointer;
}

.modal-background .modal-header h2 {
  flex: 1;
}

.modal-background .modal-body {
  flex: 1 1 auto;
  overflow-y: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
  height: 100%;
}

.slick-slider img {
  border: 1px solid #ffffff;
  width: auto;
}

.rotated-background {
  z-index: 3;
}

.rotated-background:after {
  border-bottom: 2px solid #d3d3d3;
  width: 100%;
  top: -1.5rem;
  height: 100%;
  transform-origin: center;
  transform: skewY(-1deg);
  position: absolute;
  border-top: 2px solid #d3d3d3;
  z-index: -1;
  content: '';
  background-color: #000000;
  display: block;
}

section.rotated-background {
  padding: 3.975rem 0 10rem;
}

figure .card {
  margin: 0 auto;
  max-width: 460px;
}

figure .container {
  max-width: 300px;
}

.hero {
  display: flex;
  height: 100vh;
}

.call-to-action {
  background-color: #000000;
  flex: 0 1 auto;
  margin: 0;
  max-width: 550px;
  width: 50%;
}

.call-to-action div {
  height: 100%;
}

.call-to-action .personal-vendetta-logo {
  max-width: 500px;
}

.call-to-action h5 {
  max-width: 400px;
}

section.full-bleed-image {
  height: 100vh;
  margin: -3rem 0;
  overflow: hidden;
}

section.full-bleed-image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

section.full-bleed-image.right-aligned img {
  object-position: right center;
}

section.full-bleed-image.left-aligned img {
  object-position: left center;
}

section.star-field:after {
  background: url('/images/backgrounds/star-field.jpg') no-repeat center center/cover;
}

section.star-field p {
  background-color: black;
}

.search-hero {
  border-bottom: 2px solid #d3d3d3;
  height: 400px;
}

.search-header {
  border-bottom: 2px solid #d3d3d3;
  background-color: #ffffff;
  padding-top: 2rem;
  padding-bottom: 1rem;
  position: sticky;
  top: -1rem;
  z-index: 2;
}

.search-header input[type=text] {
  background-color: #ffffff;
  border-color: #d3d3d3;
  color: #000000;
}

.card-gallery {
  display: grid;
  grid-gap: 1.3125rem;
  grid-template-columns: repeat(4, 1fr);
}

.card-transcription {
  padding-top: 0.625rem;
  white-space: pre-wrap;
}

.card-transcription h2 {
  font-family: 'fira-sans-book', Helvetica, sans-serif;
}

.card-transcription h3 {
  font-family: 'fira-sans-extralight', Helvetica, sans-serif;
  font-variant: all-small-caps;
}

.card-transcription h3 span:last-child {
  letter-spacing: 1.5px;
}

.card-transcription .desire, .card-transcription .fear {
  font-family: 'fira-sans-condensed-light', Helvetica, sans-serif;
}

.card-transcription em {
  font-family: 'fira-sans-condensed-light-italic', Helvetica, sans-serif;
}

.card-transcription hr {
  height: 0.5px;
}

.card {
  border: 1px solid #d3d3d3;
  border-radius: 1rem;
}

.white-background {
  background-color: #ffffff;
  color: #000000;
  padding: 0.375rem 0.625rem;
}

.card-type [class^="icon-"], .card-type [class*=" icon-"] {
  background-color: #ffffff;
  border: 1px solid #ffffff;
  border-radius: 50%;
  color: #000000;
  font-size: 2.625rem;
}

[class^="icon-"].width-41, [class*=" icon-"].width-41 {
  background-color: #ffffff;
  border: 1px solid #ffffff;
  border-radius: 50%;
  color: #000000;
  font-size: 2.625rem;
}

.card-cost [class^="icon-"], .card-cost [class*=" icon-"] {
  background-color: #ffffff;
  border: 1px solid #ffffff;
  border-radius: 50%;
  color: #000000;
  font-size: 1.8125rem;
  line-height: 1.8125rem;
}

[class^="icon-"].width-29, [class*=" icon-"].width-29 {
  background-color: #ffffff;
  border: 1px solid #ffffff;
  border-radius: 50%;
  color: #000000;
  font-size: 1.8125rem;
  line-height: 1.8125rem;
}

.card-footer [class^="icon-"], .card-footer [class*=" icon-"] {
  background-color: #ffffff;
  border: 1px solid #ffffff;
  border-radius: 50%;
  color: #000000;
  font-size: 1.3125rem;
  line-height: 1.3125rem;
}

[class^="icon-"].width-22, [class*=" icon-"].width-22 {
  background-color: #ffffff;
  border: 1px solid #ffffff;
  border-radius: 50%;
  color: #000000;
  font-size: 1.3125rem;
  line-height: 1.3125rem;
}

.rules {
  position: relative;
}

.rules .container::-webkit-scrollbar {
  width: 0.25rem;
}

.rules .container::-webkit-scrollbar-track {
  background-color: #000000;
}

.rules .container::-webkit-scrollbar-thumb {
  background-color: #464646;
  border-radius: 3px;
}

.rules p {
  margin-bottom: 0.625rem;
}

.rules p.margin-bottom-0 {
  margin-bottom: 1rem;
}

.rules p.margin-bottom-plus-3 {
  margin-bottom: 2.625rem;
}

.rules .inliner {
  gap: 0.25rem;
}

.rules li {

}

.table-of-contents {
  font-size: 0.533rem;
  line-height: 2rem;
}

.table-of-contents .container {
  height: 100vh;
  overflow-y: scroll;
  position: sticky;
  top: 0;
  margin-right: 0.375rem;
  padding: 3rem 1rem 6rem 0;
}

.table-of-contents ol.level-2 {
  margin-bottom: 1.3125rem;
}

.table-of-contents ol.level-3 {
  margin-bottom: 0.375rem;
}

.table-of-contents ol.level-4 {
  margin: 0 0 0.25rem 0.625rem;
}

.table-of-contents h1, .table-of-contents h2, .table-of-contents h3, .table-of-contents h4, .table-of-contents h5, .table-of-contents h6, .table-of-contents .small-caps {
  line-height: 1.5em;
}

.table-of-contents h1 {
  font-size: 3.975em;
}

.table-of-contents h2 {
  font-size: 2.625em;
  line-height: 1.3125em;
}

.table-of-contents h3, .table-of-contents legend {
  font-size: 1.8125em;
}

.table-of-contents h4 {
  font-size: 1.3125em;
}

.table-of-contents h5 {
  font-size: 1.3125em;
}

.table-of-contents h6, .table-of-contents label, .table-of-contents th, .table-of-contents .small-caps {
  font-size: 0.8em;
}

.table-of-contents span {
  display: block;
}

.table-of-contents .active {
  background-color: #ec008c;
  border-radius: 3px;
  color: #ffffff;
}

.table-of-contents .active:hover {
  color: #ffffff;
}

.table-of-contents a {
  border-radius: 3px;
  color: #ffffff;
  display: block;
  padding: 0.125rem 0.375rem;
}

.table-of-contents a:hover {
  color: #ec008c;
  text-decoration: none;
}

.rules-content > .row {
  gap: 2.625rem;
}

.rules-content > .row:first-child {
  margin-top: 7rem;
}

.rules-content > .row > .column:first-child {
  flex: 3;
}

.rules-content > .row > .column:last-child {
  flex: 2;
}

.rules-content ul, .rules-content ol {
  margin-bottom: 1rem;
}

.rules-content li {
  margin-bottom: 0.5rem;
}

.rules-content img {
  margin-bottom: 1rem;
}

.rules-content img.width-120 {
  margin: 0 auto;
  max-width: 120px;
}

.rules-content img.width-240 {
  margin-left: auto;
  margin-right: auto;
  max-width: 240px;
}

.rules-content img.width-400 {
  margin-left: auto;
  margin-right: auto;
  max-width: 400px;
}

.rules-content img.margin-bottom-plus-2 {
  margin-bottom: 1.8125rem;
}

.rules-content img.border {
  border: 1px solid #d3d3d3;
}

.rules-content hr {
  background-color: #000000;
}

.thumbnail {
  border: 1px solid #d3d3d3;
  border-radius: 3px;
}

.thumbnail:hover {
  cursor: pointer;
  opacity: 0.8;
}

.rules-content {
  background-color: #ffffff;
  border-radius: 3px;
  color: #000000;
  padding: 0.5rem 1.3125rem 6rem 1.3125rem;
  position: relative;
  overflow-x: hidden;
}

.rules-content h2 {
  line-height: 4rem;
  margin-top: 3.975rem;
}

.rules-content h3 {
  margin-top: 0.625rem;
}

.rules-content h4 {
  margin-top: 0.625rem;
  margin-bottom: 0.625rem;
}

.rules-content h5 {
  margin-bottom: 0.375rem;
}

.rules-content a.reference-0 {
  position: relative;
}

.rules-content a.reference-0:after {
  background-color: #ec008c;
  content: '';
  display: block;
  position: absolute;
  top: 0.5rem;
  width: 2000px;
  height: 2px;
}

.rules-content a.reference {
  display: block;
  position: relative;
}

.rules-content a.reference .fa-solid {
  color: #d3d3d3;
  margin-left: -3px;
  position: relative;
  z-index: 2;
}

.rules-content a.reference:before {
  background-color: #d3d3d3;
  content: '';
  display: block;
  position: absolute;
  top: 12px;
  width: 2000px;
  height: 1px;
}

.rules-content a.reference:hover:before, .rules-content a.reference.active:before {
  background-color: #ec008c;
}

.rules-content a.reference:hover .fa-solid, .rules-content a.reference.active .fa-solid {
  color: #ec008c;
}

.rules-content a.reference-3 {
  position: relative;
}

.rules-content a.reference-3:hover {
  text-decoration: none;
}

.rules-content a.reference-3:hover:after {
  background-color: #ec008c;
  content: '';
  display: block;
  position: absolute;
  top: 0.5rem;
  left: 100%;
  width: 2000px;
  height: 1px;
}

.rules-content img.card {
  margin-left: auto;
  margin-right: auto;
  max-width: 300px;
}

.rules-right .container {
  padding: 1.8125rem 1.3125rem 6rem 1.3125rem;
}

.rules-right h3 {
  line-height: 2rem;
}

.rules-right div {
  padding: 1rem 0;
  position: relative;
}

.rules-right div:before {
  width: 2000px;
  right: 0;
  top: 29px;
  height: 1px;
  position: absolute;
  z-index: -1;
  content: '';
  background-color: #ffffff;
  display: block;
}

.rules-right div.active:before {
  background-color: #ec008c;
}

.rules-right div.container:before {
  height: 0;
}

.rules-right h5 {
  margin-bottom: 0.375rem;
}

.expandable {
  position: relative;
}

.expander {
  align-items: center;
  display: flex;
  gap: 0.25rem;
  margin-bottom: 0.375rem;
  padding: 1rem;
  width: auto;
}

.expander .fa-solid {
  width: 15px;
}

.expander .fa-caret-down {
  display: none;
}

.expander:hover {
  color: #ec008c;
  cursor: pointer;
  text-decoration: none;
}

.expander h5 {
  margin-bottom: 0;
}

.expanded {
  display: none;
  padding: 0 1rem 1rem 1rem;
  position: absolute;
  top: 57px;
  width: 100%;
  z-index: 1;
}

.expandable.hover .expander .fa-caret-down {
  display: block;
}

.expandable.hover .expander .fa-caret-right {
  display: none;
}

.expandable.hover .expanded {
  display: block;
}

aside.expandable .expander {
  background-color: #000000;
  border-radius: 3px;
  color: #ffffff;
  margin-top: 0.375rem;
  margin-bottom: 1.3125rem;
}

aside.expandable .expanded {
  background-color: #000000;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  color: #ffffff;
}

aside.expandable .bulleted-list li:before {
  background-color: #ffffff;
}

aside.expandable.hover .expander {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

aside.expandable.static {
  margin-bottom: 1.3125rem;
}

aside.expandable.static .expander {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  margin-bottom: 0;
}

aside.expandable.static .expanded {
  display: block;
  position: static;
}

.handwriting span.name {
  display: none;
}

.handwriting img {
  width: auto;
}

.handwriting .table-of-contents-marker {
  height: 2.9rem;
}

.handwriting .introduction-marker {
  height: 2.2rem;
  padding: 0.25rem 0;
}

.handwriting .preparation-marker {
  height: 2.6rem;
  padding: 0.25rem 0;
}

.handwriting .ideas-marker {
  height: 2.3rem;
  padding: 0.25rem 0;
}

.handwriting .actions-marker {
  height: 2.3rem;
  padding: 0.25rem 0;
}

.handwriting .on-your-turn-marker {
  height: 2.4rem;
  padding: 0.25rem 0;
}

.handwriting .reference-marker {
  height: 2.4rem;
  padding: 0.25rem 0;
}

.handwriting .rules-blood {
  height: 8rem;
  margin-bottom: -2rem;
}

.handwriting .introduction-blood {
  height: 4rem;
}

.handwriting .preparation-blood {
  height: 4.5rem;
}

.handwriting .ideas-blood {
  height: 3.9rem;
}

.handwriting .actions-blood {
  height: 4.4rem;
}

.handwriting .on-your-turn-blood {
  height: 4.5rem;
}

.handwriting .reference-blood {
  height: 4.8rem;
}

@media screen and (max-width: 1300px) {

  .grid.four-up {
    grid-gap: 1.8125rem;
  }

}

@media screen and (max-width: 1100px) {

  .grid.four-up {
    grid-template-rows: repeat(2, 1fr);
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 2.625rem;
  }
  
  .container.width-1300 {
    padding: 0;
  }
  
  .table-of-contents {
    display: none;
  }

}

@media screen and (max-width: 800px) {

  
  
  header .desktop-logo, header .personal-vendetta-logo {
    display: none;
  }
  
  header .mobile-logo {
    display: block;
  }
  
  header.rotated-background:after {
    height: 80px;
  }
  
  
  
  
  
  .hero .layerer .desktop {
    display: none;
  }
  
  .hero .layerer .mobile {
    display: block;
  }
  
  .hero .layerer .call-to-action {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, black 80%);
    max-width: 100%;
    width: 100%;
  }
  
  .hero .layerer .flex-align-center-center {
    justify-content: flex-end;
  }
  
  .container.horizontal-inset-plus-4 {
    padding-left: 2.625rem;
    padding-right: 2.625rem;
  }
  
  .row {
    flex-direction: column;
  }
  
  .card-gallery {
    grid-template-columns: repeat(3, 1fr);
  }
  
  section.full-bleed-image {
    height: 70vh;
  }
  
  
  
  section.full-bleed-image.mobile-center-aligned img {
    object-position: center center;
  }
  
  .rules-content > .row {
    gap: 0;
  }
  
  .rules-content > .row:first-child {
    flex-direction: column-reverse;
    margin-top: 1.8125rem;
  }
  
  .rules-content > .row:first-child h2 {
    margin-top: 1.8125rem;
  }
  
  
  
  .rules-content .thumbnail {
    margin-bottom: 2.625rem;
  }
  
  aside.expandable {
    margin-bottom: 1rem;
  }
  
  aside.expandable .expander {
    margin: 0;
  }
  
  aside.expandable .expanded {
    padding: 1rem;
    position: static;
  }

}

@media screen and (max-width: 700px) {

  .grid.four-up {
    grid-gap: 1.3125rem;
  }

}

@media screen and (max-width: 600px) {

  .desktop {
    display: none;
  }
  
  .mobile {
    display: block;
  }
  
  h2 {
    font-size: 1.8125rem;
    line-height: 2.3rem;
  }
  
  h3 {
    font-size: 1.5125rem;
    line-height: 1.8125rem;
  }
  
  
  
  .card-type [class^="icon-"], .card-type [class*=" icon-"] {
    font-size: 2.2rem;
    line-height: 2.2rem;
  }
  
  
  
  [class^="icon-"].width-41, [class*=" icon-"].width-41 {
    font-size: 2.2rem;
    line-height: 2.2rem;
  }
  
  
  
  .card-cost [class^="icon-"], .card-cost [class*=" icon-"] {
    font-size: 1.5rem;
    line-height: 1.5rem;
  }
  
  
  
  [class^="icon-"].width-29, [class*=" icon-"].width-29 {
    font-size: 1.5rem;
    line-height: 1.5rem;
  }
  
  .grid.four-up {
    grid-template-rows: repeat(4, 1fr);
    grid-template-columns: 1fr;
    grid-gap: 2.625rem;
    margin-top: -1.8125rem;
  }
  
  .card-gallery {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 0.625rem;
  }
  
  .search-header {
    padding-top: 2rem;
  }
  
  .search-header .button-group {
  
  }
  
  .search-header .button-input {
    width: 100%;
  }
  
  fieldset {
    width: 100%;
  }
  
  fieldset .inliner, .fieldset-group {
    align-items: flex-start;
    flex-direction: column;
  }
  
  .inline-checkbox, .inline-radio {
    width: 100%;
  }

}

@font-face {
  font-family: 'fira-sans-hair';
  src: url('/fonts/fira-sans-hair.woff2') format('woff2'), url('/fonts/fira-sans-hair.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-hair-italic';
  src: url('/fonts/fira-sans-hair-italic.woff2') format('woff2'), url('/fonts/fira-sans-hair-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-thin';
  src: url('/fonts/fira-sans-thin.woff2') format('woff2'), url('/fonts/fira-sans-thin.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-thin-italic';
  src: url('/fonts/fira-sans-thin-italic.woff2') format('woff2'), url('/fonts/fira-sans-thin-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-ultralight';
  src: url('/fonts/fira-sans-ultralight.woff2') format('woff2'), url('/fonts/fira-sans-ultralight.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-ultralight-italic';
  src: url('/fonts/fira-sans-ultralight-italic.woff2') format('woff2'), url('/fonts/fira-sans-ultralight-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-extralight';
  src: url('/fonts/fira-sans-extralight.woff2') format('woff2'), url('/fonts/fira-sans-extralight.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-extralight-italic';
  src: url('/fonts/fira-sans-extralight-italic.woff2') format('woff2'), url('/fonts/fira-sans-extralight-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-light';
  src: url('/fonts/fira-sans-light.woff2') format('woff2'), url('/fonts/fira-sans-light.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-light-italic';
  src: url('/fonts/fira-sans-light-italic.woff2') format('woff2'), url('/fonts/fira-sans-light-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-book';
  src: url('/fonts/fira-sans-book.woff2') format('woff2'), url('/fonts/fira-sans-book.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-book-italic';
  src: url('/fonts/fira-sans-book-italic.woff2') format('woff2'), url('/fonts/fira-sans-book-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-medium';
  src: url('/fonts/fira-sans-medium.woff2') format('woff2'), url('/fonts/fira-sans-medium.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-medium-italic';
  src: url('/fonts/fira-sans-medium-italic.woff2') format('woff2'), url('/fonts/fira-sans-medium-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-regular';
  src: url('/fonts/fira-sans-regular.woff2') format('woff2'), url('/fonts/fira-sans-regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-regular-italic';
  src: url('/fonts/fira-sans-regular-italic.woff2') format('woff2'), url('/fonts/fira-sans-regular-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-semibold';
  src: url('/fonts/fira-sans-semibold.woff2') format('woff2'), url('/fonts/fira-sans-semibold.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-semibold-italic';
  src: url('/fonts/fira-sans-semibold-italic.woff2') format('woff2'), url('/fonts/fira-sans-semibold-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-bold';
  src: url('/fonts/fira-sans-bold.woff2') format('woff2'), url('/fonts/fira-sans-bold.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-bold-italic';
  src: url('/fonts/fira-sans-bold-italic.woff2') format('woff2'), url('/fonts/fira-sans-bold-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-extrabold';
  src: url('/fonts/fira-sans-extrabold.woff2') format('woff2'), url('/fonts/fira-sans-extrabold.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-extrabold-italic';
  src: url('/fonts/fira-sans-extrabold-italic.woff2') format('woff2'), url('/fonts/fira-sans-extrabold-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-heavy';
  src: url('/fonts/fira-sans-heavy.woff2') format('woff2'), url('/fonts/fira-sans-heavy.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-heavy-italic';
  src: url('/fonts/fira-sans-heavy-italic.woff2') format('woff2'), url('/fonts/fira-sans-heavy-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-ultra';
  src: url('/fonts/fira-sans-ultra.woff2') format('woff2'), url('/fonts/fira-sans-ultra.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-ultra-italic';
  src: url('/fonts/fira-sans-ultra-italic.woff2') format('woff2'), url('/fonts/fira-sans-ultra-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-hair';
  src: url('/fonts/fira-sans-condensed-hair.woff2') format('woff2'), url('/fonts/fira-sans-condensed-hair.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-hair-italic';
  src: url('/fonts/fira-sans-condensed-hair-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-hair-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-thin';
  src: url('/fonts/fira-sans-condensed-thin.woff2') format('woff2'), url('/fonts/fira-sans-condensed-thin.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-thin-italic';
  src: url('/fonts/fira-sans-condensed-thin-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-thin-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-ultralight';
  src: url('/fonts/fira-sans-condensed-ultralight.woff2') format('woff2'), url('/fonts/fira-sans-condensed-ultralight.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-ultralight-italic';
  src: url('/fonts/fira-sans-condensed-ultralight-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-ultralight-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-extralight';
  src: url('/fonts/fira-sans-condensed-extralight.woff2') format('woff2'), url('/fonts/fira-sans-condensed-extralight.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-extralight-italic';
  src: url('/fonts/fira-sans-condensed-extralight-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-extralight-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-light';
  src: url('/fonts/fira-sans-condensed-light.woff2') format('woff2'), url('/fonts/fira-sans-condensed-light.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-light-italic';
  src: url('/fonts/fira-sans-condensed-light-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-light-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-book';
  src: url('/fonts/fira-sans-condensed-book.woff2') format('woff2'), url('/fonts/fira-sans-condensed-book.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-book-italic';
  src: url('/fonts/fira-sans-condensed-book-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-book-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-medium';
  src: url('/fonts/fira-sans-condensed-medium.woff2') format('woff2'), url('/fonts/fira-sans-condensed-medium.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-medium-italic';
  src: url('/fonts/fira-sans-condensed-medium-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-medium-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-regular';
  src: url('/fonts/fira-sans-condensed-regular.woff2') format('woff2'), url('/fonts/fira-sans-condensed-regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-regular-italic';
  src: url('/fonts/fira-sans-condensed-regular-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-regular-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-semibold';
  src: url('/fonts/fira-sans-condensed-semibold.woff2') format('woff2'), url('/fonts/fira-sans-condensed-semibold.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-semibold-italic';
  src: url('/fonts/fira-sans-condensed-semibold-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-semibold-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-bold';
  src: url('/fonts/fira-sans-condensed-bold.woff2') format('woff2'), url('/fonts/fira-sans-condensed-bold.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-bold-italic';
  src: url('/fonts/fira-sans-condensed-bold-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-bold-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-extrabold';
  src: url('/fonts/fira-sans-condensed-extrabold.woff2') format('woff2'), url('/fonts/fira-sans-condensed-extrabold.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-extrabold-italic';
  src: url('/fonts/fira-sans-condensed-extrabold-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-extrabold-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-heavy';
  src: url('/fonts/fira-sans-condensed-heavy.woff2') format('woff2'), url('/fonts/fira-sans-condensed-heavy.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-heavy-italic';
  src: url('/fonts/fira-sans-condensed-heavy-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-heavy-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-ultra';
  src: url('/fonts/fira-sans-condensed-ultra.woff2') format('woff2'), url('/fonts/fira-sans-condensed-ultra.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'fira-sans-condensed-ultra-italic';
  src: url('/fonts/fira-sans-condensed-ultra-italic.woff2') format('woff2'), url('/fonts/fira-sans-condensed-ultra-italic.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: ad-atra-icons;
  src: url('/fonts/ad-atra-icons.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}