

:root {
  --color-night: #081421;
  --color-corridor: #102536;
  --color-stone: #d8e0e3;
  --color-ash: #9eafb5;
  --color-toxic-turquoise: #35e0d0;
  --color-deep-turquoise: #087c7a;
  --color-spark-orange: #ff8a3d;
  --color-warning-crimson: #e44b5f;
  --color-stone-line: #29404d;
  --color-alchemical-paper: #f3fffc;

  --color-page: var(--color-night);
  --color-surface: var(--color-corridor);
  --color-surface-raised: #143044;
  --color-text: var(--color-stone);
  --color-text-muted: var(--color-ash);
  --color-link: var(--color-toxic-turquoise);
  --color-focus: var(--color-spark-orange);
  --color-border: var(--color-stone-line);
  --color-border-active: var(--color-toxic-turquoise);
  --color-danger: var(--color-warning-crimson);

  --font-heading: "Barlow Condensed", "Arial Narrow", sans-serif;
  --font-body: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;

  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lead: 1.125rem;
  --font-size-card-title: 1.5rem;
  --font-size-h2: clamp(1.75rem, 4vw, 2rem);
  --font-size-h1: clamp(1.875rem, 8vw, 2.75rem);

  --line-height-tight: 1.02;
  --line-height-heading: 1.1;
  --line-height-body: 1.65;
  --line-height-small: 1.5;

  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --font-weight-extrabold: 800;

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --space-8: 4rem;
  --space-9: 6rem;

  --container: 77.5rem;
  --container-wide: 90rem;
  --content-width: 47.5rem;
  --page-padding: 2rem;

  --radius-none: 0;
  --radius-sm: 0.25rem;
  --radius-md: 0.5rem;

  --shadow-floating: 0 0.75rem 1.875rem rgb(0 0 0 / 0.28);

  --transition-fast: 180ms ease-out;
  --transition-base: 200ms ease-out;
}

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

html {
  color-scheme: dark;
  scroll-behavior: smooth;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

ul,
ol {
  margin: 0;
  padding-inline-start: 1.5rem;
}

body {
  min-inline-size: 20rem;
  min-block-size: 100vh;
  overflow-x: hidden;
  background: var(--color-page);
  color: var(--color-text);
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-body);
  text-rendering: optimizeLegibility;
}

main,
header,
footer,
section,
article,
aside,
nav,
form,
fieldset {
  min-inline-size: 0;
}

img,
picture,
svg,
canvas,
video,
iframe {
  display: block;
  max-inline-size: 100%;
}

img,
video {
  block-size: auto;
}

img {
  object-fit: cover;
}

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

button,
select {
  text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  cursor: pointer;
}

button:disabled,
input:disabled,
textarea:disabled,
select:disabled {
  cursor: not-allowed;
  opacity: 0.65;
}

textarea {
  min-block-size: 7rem;
  resize: vertical;
}

table {
  inline-size: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

a {
  color: var(--color-link);
  text-decoration-color: currentcolor;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.16em;
  transition: color var(--transition-base), text-decoration-color var(--transition-base);
}

a:hover {
  color: var(--color-alchemical-paper);
  text-decoration-color: var(--color-spark-orange);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid var(--color-focus);
  outline-offset: 3px;
}

::selection {
  background: var(--color-spark-orange);
  color: var(--color-night);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--color-alchemical-paper);
  font-family: var(--font-heading);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-heading);
  overflow-wrap: break-word;
}

h1 {
  margin-block-end: var(--space-5);
  font-size: var(--font-size-h1);
  font-weight: var(--font-weight-extrabold);
  line-height: var(--line-height-tight);
}

h2 {
  margin-block: var(--space-7) var(--space-4);
  font-size: var(--font-size-h2);
}

h3 {
  margin-block: var(--space-6) var(--space-3);
  font-size: var(--font-size-card-title);
  line-height: 1.2;
}

h4 {
  margin-block: var(--space-5) var(--space-3);
  font-size: 1.25rem;
  line-height: 1.25;
}

h5,
h6 {
  margin-block: var(--space-4) var(--space-2);
  font-size: 1rem;
  line-height: 1.35;
}

p {
  margin-block-end: var(--space-4);
}

ul,
ol {
  margin-block-end: var(--space-4);
}

li::marker {
  color: var(--color-toxic-turquoise);
}

blockquote {
  margin-block: var(--space-5);
  padding: var(--space-4) var(--space-5);
  border-inline-start: 3px solid var(--color-toxic-turquoise);
  background: rgb(16 37 54 / 0.65);
  color: var(--color-alchemical-paper);
}

blockquote > :last-child,
.card > :last-child,
.panel > :last-child,
.stack > :last-child,
.compact-group > :last-child,
.content-flow > :last-child {
  margin-block-end: 0;
}

hr {
  block-size: 1px;
  margin-block: var(--space-6);
  border: 0;
  background: var(--color-border);
}

small {
  font-size: var(--font-size-xs);
  line-height: 1.4;
}

strong,
b {
  font-weight: var(--font-weight-semibold);
}

code,
kbd,
samp,
pre {
  font-family: ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

code,
kbd,
samp {
  padding: 0.08em 0.3em;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-corridor);
  font-size: 0.92em;
}

pre {
  overflow-x: auto;
  margin-block-end: var(--space-5);
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-corridor);
}

pre code {
  padding: 0;
  border: 0;
  background: transparent;
}

caption {
  padding-block: var(--space-2);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  text-align: start;
}

th,
td {
  padding: var(--space-3) var(--space-4);
  border-block-end: 1px solid var(--color-border);
  text-align: start;
  vertical-align: top;
}

th {
  color: var(--color-alchemical-paper);
  font-weight: var(--font-weight-semibold);
}

label {
  display: inline-block;
  margin-block-end: var(--space-2);
  color: var(--color-alchemical-paper);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-small);
}

input,
textarea,
select {
  inline-size: 100%;
  min-block-size: 2.75rem;
  padding: 0.625rem 0.75rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-corridor);
  color: var(--color-text);
  line-height: 1.4;
  transition: border-color var(--transition-base), background-color var(--transition-base), box-shadow var(--transition-base);
}

input::placeholder,
textarea::placeholder {
  color: var(--color-ash);
  opacity: 1;
}

input:hover,
textarea:hover,
select:hover {
  border-color: var(--color-toxic-turquoise);
}

input:focus,
textarea:focus,
select:focus {
  border-color: var(--color-toxic-turquoise);
  background: #133044;
}

fieldset {
  margin: 0;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
}

legend {
  padding-inline: var(--space-2);
  color: var(--color-alchemical-paper);
  font-weight: var(--font-weight-semibold);
}

.container,
.container-wide,
.content-column {
  inline-size: min(100% - (var(--page-padding) * 2), var(--container));
  margin-inline: auto;
}

.container-wide {
  max-inline-size: var(--container-wide);
}

.content-column {
  max-inline-size: var(--content-width);
  margin-inline: 0;
}

.section {
  padding-block: clamp(2.5rem, 7vw, 6rem);
}

.section--compact {
  padding-block: clamp(2rem, 5vw, 4rem);
}

.surface {
  background: var(--color-surface);
}

.panel,
.card {
  min-inline-size: 0;
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
}

.panel {
  border-radius: var(--radius-md);
}

.card--raised,
.panel--raised {
  box-shadow: var(--shadow-floating);
}

.card--active,
.panel--active {
  border-color: var(--color-border-active);
}

.stack {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-4);
}

.stack--tight {
  gap: var(--space-2);
}

.stack--loose {
  gap: var(--space-6);
}

.cluster {
  display: flex;
  min-inline-size: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
}

.cluster > * {
  min-inline-size: 0;
}

.actions {
  display: flex;
  min-inline-size: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
}

.actions > * {
  min-inline-size: 0;
}

.content-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin-block-end: var(--space-4);
}

.content-list > li {
  min-inline-size: 0;
}

.button,
button,
input[type="submit"],
input[type="button"],
input[type="reset"] {
  display: inline-flex;
  min-block-size: 2.75rem;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: 0.625rem 1rem;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  background: var(--color-spark-orange);
  color: var(--color-night);
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  transition: background-color var(--transition-base), border-color var(--transition-base), color var(--transition-base), transform var(--transition-base);
}

.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover {
  background: #ff9b59;
  color: var(--color-night);
}

.button:active,
button:active,
input[type="submit"]:active,
input[type="button"]:active,
input[type="reset"]:active {
  transform: translateY(1px);
}

.button--secondary {
  border-color: var(--color-toxic-turquoise);
  background: transparent;
  color: var(--color-toxic-turquoise);
}

.button--secondary:hover {
  border-color: var(--color-alchemical-paper);
  background: rgb(53 224 208 / 0.12);
  color: var(--color-alchemical-paper);
}

.button--turquoise {
  border-color: var(--color-deep-turquoise);
  background: var(--color-deep-turquoise);
  color: var(--color-alchemical-paper);
}

.button--danger {
  border-color: var(--color-warning-crimson);
  background: var(--color-warning-crimson);
  color: var(--color-alchemical-paper);
}

.eyebrow,
.meta,
.status {
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  margin-block-end: var(--space-3);
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.status {
  display: inline-flex;
  min-block-size: 1.5rem;
  align-items: center;
  padding-inline: var(--space-2);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
}

.status--warning {
  border-color: var(--color-warning-crimson);
  color: #ffb4bf;
}

.status--active {
  border-color: var(--color-toxic-turquoise);
  color: var(--color-toxic-turquoise);
}

.lead {
  margin-block-end: var(--space-5);
  color: var(--color-stone);
  font-size: var(--font-size-lead);
  line-height: 1.6;
}

.breadcrumb {
  margin-block-end: var(--space-3);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  line-height: 1.5;
}

.breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}

.breadcrumb li {
  min-inline-size: 0;
}

.breadcrumb li + li::before {
  margin-inline-end: var(--space-2);
  color: var(--color-stone-line);
  content: "/";
}

.breadcrumb [aria-current="page"] {
  color: var(--color-stone);
}

.skip-link {
  position: fixed;
  z-index: 1000;
  inset-block-start: var(--space-2);
  inset-inline-start: var(--space-2);
  padding: var(--space-3) var(--space-4);
  transform: translateY(-150%);
  border-radius: var(--radius-sm);
  background: var(--color-spark-orange);
  color: var(--color-night);
  font-weight: var(--font-weight-bold);
  text-decoration: none;
  transition: transform var(--transition-base);
}

.skip-link:focus {
  transform: translateY(0);
}

.visually-hidden {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.error-message {
  margin-block-start: var(--space-2);
  color: #ffb4bf;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

[aria-invalid="true"] {
  border-color: var(--color-warning-crimson);
}

[aria-invalid="true"]:focus {
  border-color: var(--color-warning-crimson);
  box-shadow: 0 0 0 3px rgb(228 75 95 / 0.2);
}

@media (max-width: 56.25rem) {
  :root {
    --page-padding: 1.25rem;
  }

  .section {
    padding-block: clamp(2.5rem, 8vw, 3.5rem);
  }

  .content-column {
    margin-inline: auto;
  }
}

@media (max-width: 45rem) {
  h1 {
    margin-block-end: var(--space-4);
  }

  h2 {
    margin-block: var(--space-6) var(--space-3);
  }

  h3 {
    margin-block: var(--space-5) var(--space-3);
  }

  .panel,
  .card {
    padding: var(--space-4);
  }

  .button,
  button,
  input[type="submit"],
  input[type="button"],
  input[type="reset"] {
    min-block-size: 2.75rem;
  }

  th,
  td {
    padding: var(--space-2) var(--space-3);
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}


.site-header {
  position: relative;
  z-index: 100;
  border-block-end: 1px solid var(--color-border);
  background: var(--color-corridor);
}

.site-header__inner {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--space-5);
  inline-size: min(100% - (var(--page-padding) * 2), var(--container-wide));
  min-block-size: 5.25rem;
  margin-inline: auto;
}

.site-header__brand {
  display: inline-flex;
  min-inline-size: 0;
  align-items: center;
  gap: var(--space-3);
  color: var(--color-alchemical-paper);
  text-decoration: none;
}

.site-header__brand:hover { color: var(--color-alchemical-paper); }

.site-header__mark {
  flex: 0 0 auto;
  inline-size: 2.5rem;
  block-size: 2.5rem;
  object-fit: contain;
}

.site-header__brand-copy {
  display: grid;
  min-inline-size: 0;
  gap: 0.125rem;
  line-height: 1;
}

.site-header__brand-name {
  color: var(--color-alchemical-paper);
  font-family: var(--font-heading);
  font-size: 1.0625rem;
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.12em;
  white-space: nowrap;
}

.site-header__brand-description {
  color: var(--color-ash);
  font-size: 0.625rem;
  font-weight: var(--font-weight-semibold);
  letter-spacing: 0.06em;
  white-space: nowrap;
}

.site-header__navigation {
  display: contents;
}

.site-header__list {
  display: flex;
  min-inline-size: 0;
  align-items: center;
  justify-content: center;
  gap: clamp(0.5rem, 1.1vw, 1rem);
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-header__item,
.site-header__item + .site-header__item {
  margin: 0;
  padding: 0;
}

.site-header__item--mobile { display: none; }

.site-header__link {
  position: relative;
  display: inline-flex;
  min-block-size: 2.75rem;
  align-items: center;
  color: var(--color-stone);
  font-family: var(--font-heading);
  font-size: 0.875rem;
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.06em;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}

.site-header__link::after {
  position: absolute;
  inset-inline: 0;
  inset-block-end: 0.35rem;
  block-size: 1px;
  transform: scaleX(0);
  transform-origin: left;
  background: var(--color-toxic-turquoise);
  content: "";
  transition: transform var(--transition-base);
}

.site-header__link::before {
  position: absolute;
  inset-inline-start: 0;
  inset-block-end: 0.18rem;
  inline-size: 0.3rem;
  block-size: 0.3rem;
  transform: scale(0);
  border-radius: 50%;
  background: var(--color-spark-orange);
  content: "";
  transition: transform var(--transition-base);
}

.site-header__link:hover::after,
.site-header__link:focus-visible::after,
.site-header__link[aria-current="page"]::after { transform: scaleX(1); }

.site-header__link:hover::before,
.site-header__link:focus-visible::before,
.site-header__link[aria-current="page"]::before { transform: scale(1); }

.site-header__search {
  min-inline-size: 12.5rem;
  margin: 0;
}

.site-header__search-label {
  display: block;
  margin: 0 0 var(--space-1);
  color: var(--color-ash);
  font-size: 0.625rem;
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.08em;
  line-height: 1.2;
}

.site-header__search-control {
  display: flex;
  align-items: stretch;
}

.site-header__search input {
  min-inline-size: 0;
  min-block-size: 2.5rem;
  border-radius: var(--radius-sm) 0 0 var(--radius-sm);
  font-size: var(--font-size-sm);
}

.site-header__search-submit {
  min-block-size: 2.5rem;
  padding-inline: var(--space-3);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
  font-size: 0.75rem;
}

.site-header__toggle { display: none; }

@media (max-width: 68rem) {
  .site-header__inner {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--space-3);
    min-block-size: 4.5rem;
  }

  .site-header__mark {
    inline-size: 2rem;
    block-size: 2rem;
  }

  .site-header__brand-name { font-size: 0.875rem; }
  .site-header__brand-description { display: none; }

  .site-header__toggle {
    display: inline-flex;
    inline-size: 2.75rem;
    min-block-size: 2.75rem;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.28rem;
    padding: 0;
    border-color: var(--color-border);
    background: transparent;
    color: var(--color-alchemical-paper);
  }

  .site-header__toggle:hover,
  .site-header__toggle[aria-expanded="true"] {
    border-color: var(--color-toxic-turquoise);
    background: rgb(53 224 208 / 0.1);
  }

  .site-header__toggle-line {
    display: block;
    inline-size: 1.25rem;
    block-size: 2px;
    background: currentcolor;
    transition: transform var(--transition-base), opacity var(--transition-base);
  }

  .site-header__toggle[aria-expanded="true"] .site-header__toggle-line:nth-child(1) { transform: translateY(0.42rem) rotate(45deg); }
  .site-header__toggle[aria-expanded="true"] .site-header__toggle-line:nth-child(2) { opacity: 0; }
  .site-header__toggle[aria-expanded="true"] .site-header__toggle-line:nth-child(3) { transform: translateY(-0.42rem) rotate(-45deg); }

  .site-header__navigation {
    position: absolute;
    z-index: 110;
    inset-block-start: 100%;
    inset-inline: 0;
    display: grid;
    max-block-size: calc(100vh - 4.5rem);
    overflow-y: auto;
    padding: var(--space-4) max(var(--page-padding), calc((100% - var(--container)) / 2));
    transform: translateY(-0.5rem);
    visibility: hidden;
    border-block-end: 1px solid var(--color-border);
    background: var(--color-corridor);
    box-shadow: var(--shadow-floating);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--transition-base), transform var(--transition-base), visibility var(--transition-base);
  }

  .site-header__navigation.is-open {
    transform: translateY(0);
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }

  .site-header__list {
    display: grid;
    justify-content: stretch;
    gap: 0;
  }

  .site-header__item--mobile { display: block; }

  .site-header__link {
    min-block-size: 2.75rem;
    border-block-end: 1px solid rgb(41 64 77 / 0.65);
  }

  .site-header__link::after { inset-block-end: 0.25rem; }

  .site-header__search {
    min-inline-size: 0;
    margin-block-start: var(--space-4);
  }
}

@media (max-width: 24rem) {
  .site-header__inner { min-block-size: 4.25rem; }
  .site-header__brand { gap: var(--space-2); }
  .site-header__brand-name { font-size: 0.78rem; letter-spacing: 0.08em; }
}

@media (prefers-reduced-motion: reduce) {
  .site-header__link::after,
  .site-header__link::before,
  .site-header__toggle-line,
  .site-header__navigation { transition: none; }
}


.site-footer {
  border-block-start: 1px solid var(--color-border);
  background: #07111c;
}

.site-footer__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.5fr) minmax(0, 1fr);
  gap: var(--space-6);
  inline-size: min(100% - (var(--page-padding) * 2), var(--container));
  margin-inline: auto;
  padding-block: var(--space-8) var(--space-6);
}

.site-footer__identity,
.site-footer__contact,
.site-footer__legal {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.site-footer__eyebrow {
  margin: 0;
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.1em;
}

.site-footer__title,
.site-footer__section-title {
  margin: 0;
  color: var(--color-alchemical-paper);
  font-size: 1.75rem;
}

.site-footer__section-title { font-size: 1.25rem; }

.site-footer__copy,
.site-footer__legal p {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-body);
}

.site-footer__map {
  position: relative;
  min-inline-size: 0;
  padding-inline-start: var(--space-5);
}

.site-footer__map::before {
  position: absolute;
  inset-block: 0.75rem;
  inset-inline-start: 0.3rem;
  inline-size: 1px;
  background: var(--color-toxic-turquoise);
  content: "";
}

.site-footer__nav-list,
.site-footer__legal-list {
  display: grid;
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-footer__nav-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }



.site-footer__nav-list a {
  color: var(--color-stone);
  font-family: var(--font-heading);
  font-size: 0.9375rem;
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.06em;
  text-decoration: none;
}

.site-footer__nav-list a:hover,
.site-footer__nav-list a:focus-visible { color: var(--color-toxic-turquoise); }

.site-footer__address {
  display: grid;
  gap: var(--space-2);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  font-style: normal;
  line-height: var(--line-height-small);
}

.site-footer__legal {
  grid-column: 1 / -1;
  padding-block-start: var(--space-5);
  border-block-start: 1px solid var(--color-border);
}

.site-footer__legal-list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3) var(--space-5);
}

.site-footer__legal-list a { font-size: var(--font-size-sm); }
.site-footer__copyright { color: var(--color-ash) !important; }

.consent-banner {
  position: fixed;
  z-index: 900;
  inset-inline: 0;
  inset-block-end: 0;
  padding: var(--space-3) var(--page-padding);
  border-block-start: 1px solid var(--color-toxic-turquoise);
  background: rgb(8 20 33 / 0.98);
  box-shadow: var(--shadow-floating);
}

.consent-banner[hidden] { display: none; }

.consent-banner__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-5);
  inline-size: min(100%, var(--container));
  margin-inline: auto;
}

.consent-banner__copy {
  min-inline-size: 0;
}

.consent-banner__title {
  margin: 0 0 var(--space-1);
  font-size: 1.25rem;
}

.consent-banner__copy p {
  margin: 0;
  color: var(--color-stone);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

.consent-banner__actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: var(--space-2);
}

@media (max-width: 45rem) {
  .site-footer__inner {
    grid-template-columns: 1fr;
    gap: var(--space-6);
    padding-block: var(--space-7) var(--space-5);
  }

  .site-footer__legal { grid-column: auto; }
  .site-footer__nav-list { grid-template-columns: 1fr; }

  .consent-banner__inner {
    align-items: stretch;
    flex-direction: column;
    gap: var(--space-3);
  }

  .consent-banner__actions > * { flex: 1 1 8rem; }
}


.regulamin-page {
  padding-block: var(--space-7) var(--space-9);
}

.regulamin-page__container {
  inline-size: min(100% - (var(--page-padding) * 2), var(--container));
}

.regulamin-page__layout {
  display: grid;
  grid-template-columns: minmax(0, 8fr) minmax(13.75rem, 3fr);
  column-gap: var(--space-6);
  align-items: start;
}

.regulamin-document,
.regulamin-sidebar {
  min-inline-size: 0;
}

.regulamin-document {
  grid-column: 1;
  max-inline-size: 47.5rem;
}

.regulamin-sidebar {
  grid-column: 2;
  padding-block-start: 11rem;
}

.regulamin-intro {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.regulamin-intro .breadcrumb,
.regulamin-intro .eyebrow,
.regulamin-intro h1,
.regulamin-intro .lead {
  margin: 0;
}

.regulamin-intro h1 {
  font-size: clamp(1.875rem, 8vw, 2.75rem);
}

.regulamin-intro__date {
  inline-size: 100%;
  margin: 0;
  color: var(--color-stone);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
}

.regulamin-intro__date span {
  margin-inline-end: var(--space-2);
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-xs);
  letter-spacing: 0.1em;
}

.regulamin-intro__lead {
  max-inline-size: 42.5rem;
}

.regulamin-independence {
  display: flex;
  inline-size: 100%;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin-block-start: var(--space-2);
  padding: var(--space-4);
  border: 1px solid var(--color-stone-line);
  border-inline-start: 3px solid var(--color-warning-crimson);
  background: rgb(16 37 54 / 0.72);
}

.regulamin-independence p {
  margin: 0;
}

.regulamin-independence__label,
.regulamin-third-party__label,
.regulamin-no-guarantee__label,
.regulamin-label {
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.1em;
  line-height: var(--line-height-small);
}

.regulamin-independence__label {
  color: #ffb4bf;
}

.regulamin-toc {
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-corridor);
}

.regulamin-toc__title {
  margin: 0 0 var(--space-3);
  color: var(--color-alchemical-paper);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
}

.regulamin-toc ol {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}

.regulamin-toc li,
.regulamin-toc a {
  min-inline-size: 0;
}

.regulamin-toc a {
  display: block;
  min-block-size: 2.75rem;
  padding: var(--space-2) 0 var(--space-2) var(--space-3);
  border-inline-start: 2px solid var(--color-stone-line);
  color: var(--color-stone);
  font-size: var(--font-size-sm);
  line-height: 1.35;
  text-decoration: none;
  transition: border-color var(--transition-base), color var(--transition-base), background-color var(--transition-base);
}

.regulamin-toc a:hover,
.regulamin-toc a[aria-current="true"] {
  border-color: var(--color-toxic-turquoise);
  background: rgb(53 224 208 / 0.08);
  color: var(--color-alchemical-paper);
}

.regulamin-toc a[aria-current="true"]::after {
  display: inline-block;
  inline-size: 0.375rem;
  block-size: 0.375rem;
  margin-inline-start: var(--space-2);
  border-radius: 50%;
  background: var(--color-toxic-turquoise);
  content: "";
  vertical-align: middle;
}

.regulamin-sidebar .regulamin-toc {
  position: sticky;
  inset-block-start: var(--space-6);
}

.regulamin-toc--compact {
  display: none;
  margin-block: var(--space-6) var(--space-7);
}

.regulamin-section {
  position: relative;
  margin-block-start: var(--space-8);
  padding-inline-start: var(--space-6);
}

.regulamin-section::before {
  position: absolute;
  inset-block: 0;
  inset-inline-start: 0.5rem;
  inline-size: 1px;
  background: var(--color-stone-line);
  content: "";
}

.regulamin-section__heading {
  display: flex;
  min-inline-size: 0;
  align-items: flex-start;
  gap: var(--space-3);
}

.regulamin-section__heading > * {
  min-inline-size: 0;
}

.regulamin-section__node {
  position: relative;
  z-index: 1;
  display: grid;
  flex: 0 0 2rem;
  inline-size: 2rem;
  block-size: 2rem;
  place-items: center;
  margin-inline-start: -2.5rem;
  border: 1px solid var(--color-toxic-turquoise);
  border-radius: 50%;
  background: var(--color-night);
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  line-height: 1;
}

.regulamin-section__node--final {
  border-color: var(--color-spark-orange);
  color: var(--color-spark-orange);
}

.regulamin-section h2 {
  margin: 0;
  font-size: clamp(1.75rem, 4vw, 2rem);
}

.regulamin-definitions,
.regulamin-rules,
.regulamin-rights,
.regulamin-information,
.regulamin-links,
.regulamin-final {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-5);
  margin-block-start: var(--space-5);
}

.regulamin-definition,
.regulamin-rule,
.regulamin-rights > section,
.regulamin-information > section,
.regulamin-links > section,
.regulamin-final > section {
  inline-size: 100%;
  min-inline-size: 0;
}

.regulamin-definition {
  max-inline-size: 38.75rem;
  padding-inline-start: var(--space-4);
  border-inline-start: 1px solid var(--color-stone-line);
}

.regulamin-definition p,
.regulamin-rule p,
.regulamin-rights p,
.regulamin-information p,
.regulamin-links p,
.regulamin-final p {
  max-inline-size: 43.75rem;
}

.regulamin-definition p:last-child,
.regulamin-rule p:last-child,
.regulamin-rights p:last-child,
.regulamin-information p:last-child,
.regulamin-links p:last-child,
.regulamin-final p:last-child {
  margin-block-end: 0;
}

.regulamin-definition--scope {
  max-inline-size: 45.625rem;
}

.regulamin-rule {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.regulamin-rule h3,
.regulamin-rights h3,
.regulamin-information h3,
.regulamin-links h3,
.regulamin-final h3 {
  margin: 0;
}

.regulamin-label {
  margin: 0;
}

.regulamin-label--allowed {
  color: var(--color-toxic-turquoise);
}

.regulamin-label--restricted {
  color: #ffb4bf;
}

.regulamin-prohibited-list {
  display: flex;
  max-inline-size: 42.5rem;
  flex-direction: column;
  gap: var(--space-3);
  margin: 0;
}

.regulamin-prohibited-list li {
  min-inline-size: 0;
  padding-inline-start: var(--space-1);
}

.regulamin-third-party,
.regulamin-no-guarantee,
.regulamin-technical,
.regulamin-contact {
  display: flex;
  inline-size: 100%;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.regulamin-third-party {
  max-inline-size: 43.125rem;
  padding: var(--space-4);
  border: 1px solid var(--color-stone-line);
  background: rgb(16 37 54 / 0.55);
}

.regulamin-third-party h3,
.regulamin-third-party p,
.regulamin-no-guarantee p,
.regulamin-technical h3,
.regulamin-technical p,
.regulamin-contact h3,
.regulamin-contact p {
  margin: 0;
}

.regulamin-entry-line {
  max-inline-size: 45rem;
  padding-inline-start: var(--space-4);
  border-inline-start: 3px solid var(--color-toxic-turquoise);
}

.regulamin-loop {
  max-inline-size: 47.5rem;
}

.regulamin-loop__steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--space-2);
  inline-size: 100%;
  margin-block: var(--space-4) var(--space-5);
}

.regulamin-loop__steps > span {
  position: relative;
  display: flex;
  min-inline-size: 0;
  min-block-size: 5.25rem;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-1);
  padding: var(--space-3);
  border: 1px solid var(--color-stone-line);
  background: var(--color-corridor);
  color: var(--color-alchemical-paper);
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: var(--font-weight-bold);
  line-height: 1.1;
}

.regulamin-loop__steps > span:not(:last-child)::after {
  position: absolute;
  z-index: 1;
  inset-inline-end: -0.625rem;
  inset-block-start: 50%;
  inline-size: 0.625rem;
  block-size: 1px;
  background: var(--color-toxic-turquoise);
  content: "";
}

.regulamin-loop__steps small {
  color: var(--color-ash);
  font-family: var(--font-body);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-regular);
  line-height: 1.3;
}

.regulamin-no-guarantee {
  max-inline-size: 45rem;
  padding: var(--space-4);
  border: 1px solid var(--color-stone-line);
  border-inline-start: 3px solid var(--color-warning-crimson);
  background: rgb(16 37 54 / 0.45);
}

.regulamin-no-guarantee__label {
  margin: 0;
  color: #ffb4bf;
}

.regulamin-links {
  max-inline-size: 42.5rem;
}

.regulamin-technical {
  padding: var(--space-4);
  border: 1px solid var(--color-stone-line);
  background: var(--color-corridor);
}

.regulamin-final {
  max-inline-size: 45rem;
}

.regulamin-effective-date {
  color: var(--color-alchemical-paper);
}

.regulamin-contact {
  padding: var(--space-4);
  border: 1px solid var(--color-toxic-turquoise);
  background: rgb(16 37 54 / 0.75);
}

.regulamin-contact__email {
  display: inline-flex;
  inline-size: fit-content;
  min-block-size: 2.75rem;
  align-items: center;
  padding: var(--space-2) var(--space-3);
  border: 1px solid var(--color-toxic-turquoise);
  color: var(--color-toxic-turquoise);
  font-weight: var(--font-weight-semibold);
  overflow-wrap: anywhere;
}

.regulamin-contact__email:hover {
  background: rgb(53 224 208 / 0.1);
}

@media (max-width: 60rem) {
  .regulamin-page__layout {
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--space-6);
  }

  .regulamin-document,
  .regulamin-sidebar {
    grid-column: 1;
  }

  .regulamin-document {
    max-inline-size: 47.5rem;
  }

  .regulamin-sidebar {
    display: none;
  }

  .regulamin-toc--compact {
    display: block;
  }
}

@media (max-width: 51.25rem) {
  .regulamin-loop__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-3);
  }

  .regulamin-loop__steps > span:not(:last-child)::after {
    display: none;
  }
}

@media (max-width: 45rem) {
  .regulamin-page {
    padding-block: var(--space-6) var(--space-8);
  }

  .regulamin-document {
    max-inline-size: none;
  }

  .regulamin-section {
    margin-block-start: var(--space-7);
    padding-inline-start: var(--space-5);
  }

  .regulamin-section__node {
    flex-basis: 1.75rem;
    inline-size: 1.75rem;
    block-size: 1.75rem;
    margin-inline-start: -2.125rem;
  }

  .regulamin-section::before {
    inset-inline-start: 0.4375rem;
  }

  .regulamin-section h2 {
    font-size: clamp(1.75rem, 8vw, 1.9rem);
  }

  .regulamin-intro__lead,
  .regulamin-definition,
  .regulamin-definition--scope,
  .regulamin-definition p,
  .regulamin-rule p,
  .regulamin-rights p,
  .regulamin-information p,
  .regulamin-links p,
  .regulamin-final p,
  .regulamin-third-party,
  .regulamin-no-guarantee,
  .regulamin-entry-line,
  .regulamin-loop,
  .regulamin-links,
  .regulamin-final {
    max-inline-size: none;
  }

  .regulamin-loop__steps {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    margin-block-end: var(--space-5);
  }

  .regulamin-loop__steps > span {
    min-block-size: 4.5rem;
    padding-inline-start: var(--space-5);
    border-block-end: 0;
  }

  .regulamin-loop__steps > span:last-child {
    border-block-end: 1px solid var(--color-stone-line);
  }

  .regulamin-loop__steps > span::before {
    position: absolute;
    inset-inline-start: var(--space-3);
    inset-block-start: 0;
    inline-size: 1px;
    block-size: 100%;
    background: var(--color-toxic-turquoise);
    content: "";
  }

  .regulamin-loop__steps > span:first-child::before {
    inset-block-start: 50%;
    block-size: 50%;
  }

  .regulamin-loop__steps > span:last-child::before {
    block-size: 50%;
  }

  .regulamin-loop__steps > span::after {
    position: absolute;
    inset-inline-start: calc(var(--space-3) - 0.1875rem);
    inset-block-start: calc(50% - 0.1875rem);
    display: block;
    inline-size: 0.375rem;
    block-size: 0.375rem;
    border-radius: 50%;
    background: var(--color-toxic-turquoise);
    content: "";
  }

  .regulamin-contact__email {
    inline-size: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .regulamin-toc a {
    transition: none;
  }
}


.cookies-page {
  padding-block: var(--space-7) var(--space-9);
}

.cookies-document__header {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-5);
}

.cookies-document__header > .breadcrumb {
  grid-column: 1 / -1;
  min-inline-size: 0;
}

.cookies-title-block {
  grid-column: 1 / span 8;
  min-inline-size: 0;
}

.cookies-title-block .lead {
  max-inline-size: 47.5rem;
}

.cookies-scope {
  max-inline-size: 45rem;
  margin-block-end: 0;
}

.cookies-document__meta {
  display: flex;
  min-inline-size: 0;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  margin-block: 0 var(--space-5);
  padding-block-end: var(--space-4);
  border-block-end: 1px solid var(--color-toxic-turquoise);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

.cookies-document__meta > * {
  min-inline-size: 0;
}

.cookies-document__meta-icon {
  position: relative;
  inline-size: 1.3rem;
  block-size: 1.55rem;
  flex: 0 0 1.3rem;
  border: 1px solid var(--color-toxic-turquoise);
}

.cookies-document__meta-icon::after {
  position: absolute;
  inset: 0.4rem 0.22rem auto;
  block-size: 1px;
  background: var(--color-toxic-turquoise);
  box-shadow: 0 0.3rem 0 var(--color-toxic-turquoise), 0 0.6rem 0 var(--color-toxic-turquoise);
  content: "";
}

.cookies-layout {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
  gap: var(--space-5);
  align-items: start;
  margin-block-start: var(--space-8);
}

.cookies-index-wrap,
.cookies-content {
  min-inline-size: 0;
}

.cookies-index {
  max-inline-size: 18.75rem;
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: rgb(16 37 54 / 0.72);
}

.cookies-index__toggle {
  display: flex;
  inline-size: 100%;
  min-inline-size: 0;
  min-block-size: 2.75rem;
  justify-content: space-between;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--color-alchemical-paper);
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: var(--font-weight-bold);
  text-align: start;
}

.cookies-index__toggle-mark {
  position: relative;
  inline-size: 1rem;
  block-size: 1rem;
  flex: 0 0 1rem;
  margin-inline-start: var(--space-3);
}

.cookies-index__toggle-mark::before,
.cookies-index__toggle-mark::after {
  position: absolute;
  inset-block-start: 0.45rem;
  inset-inline-start: 0;
  inline-size: 1rem;
  block-size: 2px;
  background: var(--color-toxic-turquoise);
  content: "";
}

.cookies-index__toggle-mark::after {
  transform: rotate(90deg);
  transition: transform var(--transition-base);
}

.cookies-index__toggle[aria-expanded="true"] .cookies-index__toggle-mark::after {
  transform: rotate(0deg);
}

.cookies-index__list {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-2);
  margin: var(--space-4) 0 0;
  padding: 0;
  list-style: none;
}

.cookies-index__list > li {
  min-inline-size: 0;
}

.cookies-index__list a {
  position: relative;
  display: block;
  min-block-size: 2.75rem;
  padding: 0.55rem 0 0.55rem var(--space-3);
  color: var(--color-stone);
  font-size: var(--font-size-sm);
  line-height: 1.45;
  text-decoration: none;
}

.cookies-index__list a::before {
  position: absolute;
  inset-block: 0.55rem;
  inset-inline-start: 0;
  inline-size: 1px;
  background: var(--color-border);
  content: "";
  transition: background-color var(--transition-base), inline-size var(--transition-base);
}

.cookies-index__list a:hover::before,
.cookies-index__list a.is-current::before {
  inline-size: 3px;
  background: var(--color-toxic-turquoise);
}

.cookies-index__list a.is-current::after {
  display: inline-block;
  margin-inline-start: var(--space-2);
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-xs);
  content: "Aktualna sekcja";
}

.cookies-content {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.cookies-summary,
.cookies-section {
  min-inline-size: 0;
  scroll-margin-top: 8rem;
}

.cookies-summary {
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-corridor);
}

.cookies-summary h2,
.cookies-section > h2 {
  margin-block-start: 0;
}

.cookies-summary__intro {
  max-inline-size: 43rem;
}

.cookies-summary__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
  margin-block-start: var(--space-5);
}

.cookies-summary__grid > * {
  min-inline-size: 0;
}

.cookies-summary__item {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  gap: var(--space-3);
  min-inline-size: 0;
  min-block-size: 7.25rem;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: rgb(8 20 33 / 0.36);
  color: var(--color-stone);
  text-decoration: none;
}

.cookies-summary__item:hover {
  border-color: var(--color-toxic-turquoise);
  color: var(--color-alchemical-paper);
}

.cookies-summary__number {
  color: var(--color-spark-orange);
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: var(--font-weight-extrabold);
  line-height: 1;
}

.cookies-summary__copy {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-2);
}

.cookies-summary__copy strong {
  color: var(--color-alchemical-paper);
}

.cookies-summary__copy span {
  max-inline-size: 34rem;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

.cookies-section {
  padding-block-start: var(--space-7);
  border-block-start: 1px solid var(--color-border);
}

.cookies-section > h2 {
  max-inline-size: 45rem;
}

.cookies-section > h3,
.cookies-section h3 {
  max-inline-size: 45rem;
}

.cookies-definition {
  max-inline-size: 45rem;
  padding-inline-start: var(--space-5);
  border-inline-start: 3px solid var(--color-toxic-turquoise);
}

.cookies-definition p,
.cookies-copy-standard,
.cookies-context-note p,
.cookies-category p:not(.cookies-category__label),
.cookies-consent-copy p,
.cookies-browser-intro,
.cookies-removal-note p,
.cookies-blocking-note p,
.cookies-updates p,
.cookies-related p {
  max-inline-size: 45rem;
}

.cookies-context-note {
  max-inline-size: 41.25rem;
  margin-block: var(--space-5) 0;
  padding: var(--space-4) var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: rgb(16 37 54 / 0.7);
}

.cookies-context-note h3 {
  margin-block: 0;
  font-size: 1.25rem;
}

.cookies-context-note p {
  margin-block: var(--space-3) 0;
}

.cookies-category-route {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-4);
  max-inline-size: 47.5rem;
  padding-inline-start: var(--space-5);
  border-inline-start: 1px solid var(--color-border);
}

.cookies-category-route > * {
  position: relative;
  min-inline-size: 0;
}

.cookies-category-route > *::before {
  position: absolute;
  inset-block-start: 1.3rem;
  inset-inline-start: calc(var(--space-5) * -1 - 0.35rem);
  inline-size: 0.65rem;
  block-size: 0.65rem;
  border-radius: 50%;
  background: var(--color-toxic-turquoise);
  content: "";
}

.cookies-category--optional::before {
  background: var(--color-spark-orange);
}

.cookies-category {
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: rgb(16 37 54 / 0.66);
}

.cookies-category__label {
  display: inline-block;
  margin-block-end: var(--space-2);
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.cookies-category--optional .cookies-category__label {
  color: var(--color-spark-orange);
}

.cookies-category h3 {
  margin-block: 0 var(--space-3);
}

.cookies-category p:last-child {
  margin-block-end: 0;
}

.cookies-caution,
.cookies-knowledge-note,
.cookies-removal-note,
.cookies-blocking-note {
  min-inline-size: 0;
  border-radius: var(--radius-sm);
}

.cookies-caution {
  max-inline-size: 45rem;
  margin-block-start: var(--space-5);
  padding: var(--space-4) var(--space-5);
  border-inline-start: 3px solid var(--color-warning-crimson);
  background: rgb(228 75 95 / 0.09);
}

.cookies-caution p,
.cookies-knowledge-note p,
.cookies-removal-note p,
.cookies-blocking-note p {
  margin-block-end: 0;
}

.cookies-consent-copy {
  max-inline-size: 45rem;
}

.cookies-consent-copy h3 {
  margin-block-start: 0;
}

.cookies-rights-list {
  max-inline-size: 40rem;
}

.cookies-action-panel {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-4);
  max-inline-size: 40rem;
  margin-block-start: var(--space-5);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-corridor);
}

.cookies-action-panel h3 {
  margin: 0;
}

.cookies-choice-steps {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-4);
  margin: 0;
  padding: 0;
  list-style: none;
}

.cookies-choice-steps > li {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: var(--space-3);
  min-inline-size: 0;
}

.cookies-choice-steps__number {
  display: flex;
  inline-size: 2rem;
  block-size: 2rem;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-sm);
  background: var(--color-spark-orange);
  color: var(--color-night);
  font-weight: var(--font-weight-bold);
  line-height: 1;
}

.cookies-knowledge-note {
  max-inline-size: 42.5rem;
  margin-block-start: var(--space-5);
  padding: var(--space-4) var(--space-5);
  border: 1px solid var(--color-border);
  background: rgb(16 37 54 / 0.55);
}

.cookies-browser-intro {
  max-inline-size: 43rem;
}

.cookies-browser-steps {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-4);
  max-inline-size: 41.25rem;
  margin: var(--space-5) 0;
  padding: 0;
  list-style: none;
}

.cookies-browser-steps > li {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: var(--space-3);
  min-inline-size: 0;
  padding-block-end: var(--space-4);
  border-block-end: 1px solid var(--color-border);
}

.cookies-browser-steps__number {
  display: flex;
  inline-size: 3rem;
  block-size: 3rem;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-toxic-turquoise);
  border-radius: 50%;
  color: var(--color-toxic-turquoise);
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: var(--font-weight-bold);
}

.cookies-browser-steps > li > div {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-1);
}

.cookies-browser-steps strong {
  color: var(--color-alchemical-paper);
}

.cookies-removal-note,
.cookies-blocking-note {
  max-inline-size: 42.5rem;
  padding: var(--space-4) var(--space-5);
}

.cookies-removal-note {
  border-block: 1px solid var(--color-border);
}

.cookies-removal-note h3,
.cookies-blocking-note h3 {
  margin-block: 0 var(--space-3);
  font-size: 1.25rem;
}

.cookies-blocking-note {
  margin-block-start: var(--space-5);
  border-inline-start: 3px solid var(--color-warning-crimson);
  background: rgb(228 75 95 / 0.09);
}

.cookies-section--closing {
  padding-block-end: 0;
}

.cookies-updates,
.cookies-related {
  max-inline-size: 43.75rem;
}

.cookies-updates h3,
.cookies-related h3 {
  margin-block-start: 0;
}

.cookies-related {
  margin-block-start: var(--space-5);
}

.cookies-contact-card {
  position: relative;
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-3);
  inline-size: min(100%, 38.75rem);
  margin-block-start: var(--space-6);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-corridor);
}

.cookies-contact-card > * {
  min-inline-size: 0;
}

.cookies-contact-card h3,
.cookies-contact-card p {
  margin: 0;
}

.cookies-contact-card__node {
  position: absolute;
  inset-block-start: var(--space-5);
  inset-inline-end: var(--space-5);
  inline-size: 0.75rem;
  block-size: 0.75rem;
  border-radius: 50%;
  background: var(--color-spark-orange);
}

.cookies-contact-card__links {
  display: flex;
  min-inline-size: 0;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.cookies-contact-card__links > a {
  display: inline-flex;
  min-inline-size: 0;
  min-block-size: 2.75rem;
  align-items: center;
  overflow-wrap: anywhere;
}

.cookies-contact-card__note {
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

@media (min-width: 56.3125rem) and (min-height: 42rem) {
  .cookies-index {
    position: sticky;
    inset-block-start: 7rem;
  }
}

@media (max-width: 56.25rem) {
  .cookies-page {
    padding-block: var(--space-6) var(--space-8);
  }

  .cookies-document__header {
    grid-template-columns: 1fr;
  }

  .cookies-document__header > .breadcrumb,
  .cookies-title-block {
    grid-column: 1;
  }

  .cookies-layout {
    grid-template-columns: 1fr;
    gap: var(--space-6);
    margin-block-start: var(--space-6);
  }

  .cookies-index {
    max-inline-size: none;
  }

  .cookies-content {
    gap: var(--space-7);
  }
}

@media (max-width: 47.5rem) {
  .cookies-summary__grid {
    grid-template-columns: 1fr;
  }

  .cookies-summary__item {
    min-block-size: 0;
  }
}

@media (max-width: 45rem) {
  .cookies-summary,
  .cookies-category,
  .cookies-action-panel,
  .cookies-contact-card {
    padding: var(--space-4);
  }

  .cookies-category-route {
    padding-inline-start: var(--space-4);
  }

  .cookies-category-route > *::before {
    inset-inline-start: calc(var(--space-4) * -1 - 0.35rem);
  }

  .cookies-context-note,
  .cookies-caution,
  .cookies-knowledge-note,
  .cookies-removal-note,
  .cookies-blocking-note {
    padding: var(--space-4);
  }
}

@media (max-width: 26.25rem) {
  .cookies-document__meta {
    align-items: flex-start;
    flex-direction: column;
  }

  .cookies-choice-steps > li,
  .cookies-browser-steps > li {
    grid-template-columns: 1fr;
  }

  .cookies-choice-steps__number,
  .cookies-browser-steps__number {
    justify-self: start;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cookies-index__toggle-mark::after,
  .cookies-index__list a::before {
    transition: none;
  }
}


.privacy-page {
  background: var(--color-night);
}

.privacy-page__intro,
.privacy-page__section {
  padding-block: clamp(2.5rem, 6vw, 4rem);
}

.privacy-page__intro {
  border-block-end: 1px solid var(--color-border);
  background: linear-gradient(135deg, rgb(16 37 54 / 0.55), transparent 65%);
}

.privacy-page__section + .privacy-page__section {
  padding-block-start: clamp(2.5rem, 6vw, 4rem);
}

.privacy-page__layout {
  display: grid;
  grid-template-columns: minmax(0, 8fr) minmax(13.75rem, 4fr);
  gap: var(--space-6);
  inline-size: min(100% - (var(--page-padding) * 2), var(--container));
  margin-inline: auto;
}

.privacy-page__layout > * {
  min-inline-size: 0;
}

.privacy-page__document-column {
  grid-column: 1;
  inline-size: 100%;
  max-inline-size: 47.5rem;
}

.privacy-page__document-column--legal {
  max-inline-size: 47.5rem;
}

.privacy-page__breathing-space,
.privacy-page__desktop-index {
  grid-column: 2;
  min-inline-size: 0;
}

.privacy-page__eyebrow,
.privacy-page__automation-label,
.privacy-page__revision-label {
  margin-block-end: var(--space-3);
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.1em;
  line-height: var(--line-height-small);
  text-transform: uppercase;
}

.privacy-page h2 {
  scroll-margin-top: 7rem;
}

.privacy-page h2 > span {
  margin-inline-end: var(--space-2);
  color: var(--color-spark-orange);
}

.privacy-page__lead {
  max-inline-size: 47.5rem;
  margin-block-end: var(--space-5);
  color: var(--color-stone);
  font-size: var(--font-size-lead);
  line-height: 1.6;
}

.privacy-page__status {
  display: flex;
  inline-size: 100%;
  max-inline-size: 47.5rem;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: rgb(16 37 54 / 0.75);
}

.privacy-page__status-node {
  flex: 0 0 0.75rem;
  inline-size: 0.75rem;
  block-size: 0.75rem;
  margin-block-start: 0.42rem;
  border-radius: 50%;
  background: var(--color-spark-orange);
}

.privacy-page__status-copy {
  flex: 1 1 auto;
  min-inline-size: 0;
}

.privacy-page__status-label {
  display: block;
  color: var(--color-ash);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.privacy-page__status strong {
  color: var(--color-alchemical-paper);
}

.privacy-page__status p {
  max-inline-size: 39rem;
  margin-block: var(--space-2) 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
}

.privacy-page__definition-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

.privacy-page__definition-item {
  display: grid;
  grid-template-columns: minmax(10rem, 0.31fr) minmax(0, 0.69fr);
  gap: var(--space-5);
  padding-block: var(--space-5);
  border-block-start: 1px solid var(--color-border);
}

.privacy-page__definition-item > * {
  min-inline-size: 0;
}

.privacy-page__definition-item h3 {
  margin: 0;
}

.privacy-page__definition-item p {
  max-inline-size: 43.75rem;
}

.privacy-page__contact-lines {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin: 0;
}

.privacy-page__contact-lines > div {
  display: grid;
  grid-template-columns: 5rem minmax(0, 1fr);
  gap: var(--space-3);
  align-items: center;
}

.privacy-page__contact-lines dt {
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
}

.privacy-page__contact-lines dd {
  min-inline-size: 0;
  margin: 0;
}

.privacy-page__contact-lines a {
  display: inline-flex;
  min-block-size: 2.75rem;
  align-items: center;
  overflow-wrap: anywhere;
}

.privacy-page__chapter {
  scroll-margin-top: 7rem;
}

.privacy-page__chapter + .privacy-page__chapter {
  margin-block-start: clamp(3rem, 6vw, 4rem);
  padding-block-start: clamp(3rem, 6vw, 4rem);
  border-block-start: 1px solid var(--color-border);
}

.privacy-page__chapter > h2 {
  max-inline-size: 46rem;
  margin-block-start: 0;
}

.privacy-page__data-unit {
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  gap: var(--space-4);
  padding-block: var(--space-5);
  border-block-start: 1px solid var(--color-border);
}

.privacy-page__data-unit > * {
  min-inline-size: 0;
}

.privacy-page__unit-number,
.privacy-page__purpose-number {
  color: var(--color-toxic-turquoise);
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
}

.privacy-page__unit-copy {
  position: relative;
  max-inline-size: 43.75rem;
}

.privacy-page__data-unit:not(.privacy-page__data-unit--cookies) .privacy-page__unit-copy::before {
  position: absolute;
  inset-block: 0;
  inset-inline-start: -1.5rem;
  inline-size: 1px;
  background: var(--color-toxic-turquoise);
  content: "";
}

.privacy-page__data-unit h3,
.privacy-page__purpose-item h3,
.privacy-page__information-unit h3,
.privacy-page__retention-unit h3,
.privacy-page__rights-unit h3,
.privacy-page__procedure-unit h3,
.privacy-page__security-unit h3,
.privacy-page__related-unit h3 {
  margin-block-start: 0;
}

.privacy-page__data-unit ul {
  max-inline-size: 40rem;
}

.privacy-page__purpose-item {
  display: grid;
  grid-template-columns: 4.5rem minmax(0, 1fr);
  gap: var(--space-4);
  padding-block: var(--space-5);
  border-block-start: 1px solid var(--color-border);
}

.privacy-page__purpose-item > * {
  min-inline-size: 0;
}

.privacy-page__purpose-copy {
  max-inline-size: 45rem;
}

.privacy-page__legal-basis {
  max-inline-size: 40.625rem;
  margin-block-end: 0;
  padding-block-start: var(--space-3);
  border-block-start: 1px solid rgb(41 64 77 / 0.8);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
}

.privacy-page__risk-word {
  color: #ffb4bf;
  font-weight: var(--font-weight-semibold);
}

.privacy-page__information-unit,
.privacy-page__retention-unit,
.privacy-page__rights-unit,
.privacy-page__procedure-unit,
.privacy-page__security-unit,
.privacy-page__revision-unit,
.privacy-page__related-unit {
  padding-block: var(--space-5);
  border-block-start: 1px solid var(--color-border);
}

.privacy-page__information-unit p,
.privacy-page__retention-unit > p,
.privacy-page__rights-unit > p,
.privacy-page__procedure-unit > p,
.privacy-page__security-unit p,
.privacy-page__revision-unit p {
  max-inline-size: 45rem;
}

.privacy-page__information-unit--transfer {
  border-inline-start: 2px solid var(--color-toxic-turquoise);
  padding-inline-start: var(--space-4);
}

.privacy-page__retention-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-3);
  max-inline-size: 45rem;
  margin-block-start: var(--space-5);
}

.privacy-page__retention-grid > div {
  min-inline-size: 0;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  background: rgb(16 37 54 / 0.6);
}

.privacy-page__retention-grid h4 {
  margin-block: 0 var(--space-2);
}

.privacy-page__retention-grid p {
  margin: 0;
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
}

.privacy-page__rights-list {
  display: flex;
  max-inline-size: 42.5rem;
  flex-direction: column;
  gap: var(--space-3);
}

.privacy-page__rights-list li {
  padding-inline-start: var(--space-1);
}

.privacy-page__procedure-unit {
  margin-block-start: var(--space-5);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: rgb(16 37 54 / 0.65);
}

.privacy-page__procedure-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: var(--space-5) 0 0;
  padding: 0;
  list-style: none;
}

.privacy-page__procedure-list > li {
  display: grid;
  grid-template-columns: 4rem minmax(0, 1fr);
  gap: var(--space-3);
  min-inline-size: 0;
  padding-block: var(--space-4);
  border-block-start: 1px solid var(--color-border);
}

.privacy-page__procedure-list > li > * {
  min-inline-size: 0;
}

.privacy-page__procedure-list > li > span {
  display: inline-flex;
  inline-size: 2rem;
  block-size: 2rem;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-toxic-turquoise);
  border-radius: 50%;
  color: var(--color-toxic-turquoise);
  font-family: var(--font-heading);
  font-weight: var(--font-weight-bold);
}

.privacy-page__procedure-list p {
  margin: var(--space-2) 0 0;
  color: var(--color-text-muted);
}

.privacy-page__supervisory-note {
  max-inline-size: 43.75rem;
  margin-block-start: var(--space-4);
  padding-block-start: var(--space-4);
  border-block-start: 1px solid var(--color-border);
}

.privacy-page__supervisory-note h4 {
  margin-block-start: 0;
}

.privacy-page__security-unit + .privacy-page__security-unit {
  margin-block-start: var(--space-5);
}

.privacy-page__security-unit--automation {
  border-inline-start: 2px solid var(--color-toxic-turquoise);
  padding-inline-start: var(--space-4);
}

.privacy-page__automation-label {
  margin-block-start: 0;
}

.privacy-page__chapter--final {
  padding-block-end: clamp(3rem, 6vw, 4rem);
}

.privacy-page__revision-unit {
  max-inline-size: 43.75rem;
}

.privacy-page__revision-label {
  margin: 0;
}

.privacy-page__revision-date {
  display: block;
  margin-block: var(--space-1) var(--space-4);
  color: var(--color-spark-orange);
  font-family: var(--font-heading);
  font-size: 1.5rem;
  line-height: 1.2;
}

.privacy-page__related-unit {
  max-inline-size: 32.5rem;
  margin-block-start: var(--space-5);
}

.privacy-page__related-unit > p {
  max-inline-size: 32.5rem;
}

.privacy-page__related-unit ul {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}

.privacy-page__related-unit li {
  min-inline-size: 0;
}

.privacy-page__related-unit a {
  display: flex;
  min-block-size: 2.75rem;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-1);
  padding: var(--space-3) var(--space-4);
  border-inline-start: 2px solid var(--color-toxic-turquoise);
  background: rgb(16 37 54 / 0.55);
  text-decoration: none;
}

.privacy-page__related-unit a:hover {
  background: rgb(53 224 208 / 0.1);
}

.privacy-page__related-unit a span {
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
}

.privacy-page__desktop-index {
  display: block;
}

.privacy-page__index-nav {
  position: sticky;
  inset-block-start: 6.5rem;
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  inline-size: 100%;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: rgb(16 37 54 / 0.75);
}

.privacy-page__index-nav > p {
  margin-block-end: var(--space-2);
  color: var(--color-alchemical-paper);
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
}

.privacy-page__index-nav a {
  position: relative;
  display: block;
  min-inline-size: 0;
  padding: var(--space-2) var(--space-2) var(--space-2) var(--space-3);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  line-height: 1.35;
  text-decoration: none;
}

.privacy-page__index-nav a::before {
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 0;
  inline-size: 0.4rem;
  block-size: 0.4rem;
  transform: translateY(-50%);
  border: 1px solid var(--color-stone-line);
  border-radius: 50%;
  content: "";
}

.privacy-page__current-text {
  display: none;
  margin-block-start: var(--space-1);
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
}

.privacy-page__index-nav a.is-current {
  border-inline-start: 2px solid var(--color-toxic-turquoise);
  color: var(--color-alchemical-paper);
  font-weight: var(--font-weight-semibold);
}

.privacy-page__index-nav a.is-current::before {
  border-color: var(--color-toxic-turquoise);
  background: var(--color-toxic-turquoise);
}

.privacy-page__index-nav a.is-current .privacy-page__current-text {
  display: block;
}

.privacy-page__mobile-index {
  display: none;
}

@media (max-width: 61.1875rem) {
  .privacy-page__layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .privacy-page__document-column,
  .privacy-page__document-column--legal {
    grid-column: 1;
    max-inline-size: 47.5rem;
  }

  .privacy-page__breathing-space,
  .privacy-page__desktop-index {
    display: none;
  }

  .privacy-page__mobile-index {
    display: block;
    inline-size: 100%;
    max-inline-size: 47.5rem;
    margin-block-end: var(--space-6);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    background: rgb(16 37 54 / 0.75);
  }

  .privacy-page__mobile-index summary {
    display: flex;
    min-block-size: 2.75rem;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-3);
    padding: var(--space-3) var(--space-4);
    color: var(--color-alchemical-paper);
    font-weight: var(--font-weight-semibold);
    cursor: pointer;
  }

  .privacy-page__mobile-index summary span {
    color: var(--color-toxic-turquoise);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-regular);
  }

  .privacy-page__mobile-index[open] summary span {
    font-size: 0;
  }

  .privacy-page__mobile-index[open] summary span::after {
    font-size: var(--font-size-sm);
    content: "Zamknij sekcje";
  }

  .privacy-page__mobile-index nav {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    padding: 0 var(--space-4) var(--space-4);
  }

  .privacy-page__mobile-index nav a {
    display: flex;
    min-block-size: 2.75rem;
    align-items: center;
    padding: var(--space-2) 0;
    border-block-start: 1px solid var(--color-border);
    font-size: var(--font-size-sm);
  }
}

@media (max-width: 45rem) {
  .privacy-page__intro,
  .privacy-page__section {
    padding-block: clamp(2.5rem, 8vw, 3.5rem);
  }

  .privacy-page__lead {
    font-size: 1.125rem;
  }

  .privacy-page__status {
    flex-direction: column;
    gap: var(--space-2);
    padding: var(--space-4);
  }

  .privacy-page__status-node {
    margin-block-start: 0;
  }

  .privacy-page__definition-item,
  .privacy-page__data-unit,
  .privacy-page__purpose-item,
  .privacy-page__procedure-list > li {
    grid-template-columns: minmax(0, 1fr);
  }

  .privacy-page__definition-item {
    gap: var(--space-3);
  }

  .privacy-page__data-unit,
  .privacy-page__purpose-item {
    gap: var(--space-2);
  }

  .privacy-page__data-unit:not(.privacy-page__data-unit--cookies) .privacy-page__unit-copy::before {
    display: none;
  }

  .privacy-page__unit-number,
  .privacy-page__purpose-number {
    color: var(--color-spark-orange);
  }

  .privacy-page__retention-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    border: 1px solid var(--color-border);
  }

  .privacy-page__retention-grid > div {
    border: 0;
    border-block-end: 1px solid var(--color-border);
  }

  .privacy-page__retention-grid > div:last-child {
    border-block-end: 0;
  }

  .privacy-page__procedure-unit {
    padding: var(--space-4);
  }

  .privacy-page__procedure-list > li {
    gap: var(--space-2);
  }

  .privacy-page__contact-lines > div {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
  }
}

@media (max-width: 24.375rem) {
  .privacy-page__status,
  .privacy-page__procedure-unit {
    padding-inline: var(--space-3);
  }

  .privacy-page__mobile-index summary {
    padding-inline: var(--space-3);
  }
}

@media (prefers-reduced-motion: reduce) {
  .privacy-page__index-nav a,
  .privacy-page__related-unit a {
    transition: none;
  }
}


.kontakt-page {
  overflow: hidden;
}

.kontakt-page .section {
  position: relative;
}

.kontakt-hero {
  padding-block: var(--space-6) var(--space-8);
}

.kontakt-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
  gap: var(--space-5);
}

.kontakt-hero__content,
.kontakt-hero__media,
.kontakt-channels__intro,
.kontakt-channel-card,
.kontakt-details__intro,
.kontakt-details__panel,
.kontakt-scope__intro,
.kontakt-scope-card,
.kontakt-form-section__intro,
.kontakt-form,
.kontakt-corrections__content,
.kontakt-boundary__answer,
.kontakt-boundary-card,
.kontakt-closing__panel {
  min-inline-size: 0;
}

.kontakt-hero__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-5);
  padding: clamp(var(--space-5), 4vw, var(--space-7));
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: rgb(8 20 33 / 0.96);
}

.kontakt-hero__copy {
  max-inline-size: 42.5rem;
}

.kontakt-hero__copy .eyebrow,
.kontakt-hero__copy h1,
.kontakt-hero__copy .lead,
.kontakt-notice h2,
.kontakt-notice p {
  margin: 0;
}

.kontakt-hero__copy .eyebrow {
  margin-block-end: var(--space-3);
}

.kontakt-hero__copy h1 {
  font-size: clamp(2rem, 4.3vw, 3rem);
}

.kontakt-hero__copy .lead {
  max-inline-size: 42.5rem;
}

.kontakt-notice {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  max-inline-size: 35rem;
  padding: var(--space-4) var(--space-5);
  border: 1px solid var(--color-warning-crimson);
  border-inline-start-width: 4px;
  border-radius: var(--radius-sm);
  background: rgb(228 75 95 / 0.09);
}

.kontakt-notice h2 {
  color: #ffb4bf;
  font-size: 1.25rem;
}

.kontakt-notice p {
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

.kontakt-hero__actions {
  gap: var(--space-3);
}

.kontakt-hero__media {
  position: relative;
  min-block-size: 31.25rem;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-corridor);
}

.kontakt-hero__media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgb(8 20 33 / 0.42), transparent 62%);
  content: "";
  pointer-events: none;
}

.kontakt-hero__media img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  object-position: 72% center;
}

.kontakt-channels__intro {
  inline-size: min(100%, 40.625rem);
}

.kontakt-channels__intro .eyebrow,
.kontakt-channels__intro h2,
.kontakt-channels__intro .lead,
.kontakt-scope__intro .eyebrow,
.kontakt-scope__intro h2,
.kontakt-scope__intro .lead,
.kontakt-form-section__intro .eyebrow,
.kontakt-form-section__intro h2,
.kontakt-form-section__intro .lead,
.kontakt-corrections__intro .eyebrow,
.kontakt-corrections__intro h2,
.kontakt-corrections__intro .lead,
.kontakt-boundary__answer .eyebrow,
.kontakt-boundary__answer h2,
.kontakt-closing__panel .eyebrow,
.kontakt-closing__panel h2,
.kontakt-closing__panel p {
  margin: 0;
}

.kontakt-channels__intro .eyebrow,
.kontakt-scope__intro .eyebrow,
.kontakt-form-section__intro .eyebrow,
.kontakt-corrections__intro .eyebrow,
.kontakt-boundary__answer .eyebrow,
.kontakt-closing__panel .eyebrow {
  margin-block-end: var(--space-3);
}

.kontakt-channels__intro h2,
.kontakt-scope__intro h2,
.kontakt-form-section__intro h2,
.kontakt-corrections__intro h2,
.kontakt-boundary__answer h2,
.kontakt-closing__panel h2 {
  margin-block-end: var(--space-4);
}

.kontakt-channels__intro .lead,
.kontakt-scope__intro .lead,
.kontakt-form-section__intro .lead,
.kontakt-corrections__intro .lead {
  margin-block-end: 0;
}

.kontakt-channels__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block-start: var(--space-6);
}

.kontakt-channel-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
}

.kontakt-channel-card::before {
  position: absolute;
  inset-block-start: 0;
  inset-inline: var(--space-5);
  block-size: 2px;
  transform: scaleX(0);
  transform-origin: left;
  background: var(--color-toxic-turquoise);
  content: "";
  transition: transform var(--transition-base);
}

.kontakt-channel-card:hover::before,
.kontakt-channel-card:focus-within::before {
  transform: scaleX(1);
}

.kontakt-channel-card--form::before {
  background: var(--color-spark-orange);
}

.kontakt-channel-card h3,
.kontakt-channel-card p,
.kontakt-channel-card a,
.kontakt-scope-card h3,
.kontakt-scope-card p,
.kontakt-scope-card a {
  margin: 0;
}

.kontakt-channel-card h3,
.kontakt-scope-card h3 {
  font-size: clamp(1.35rem, 2.2vw, 1.5rem);
}

.kontakt-channel-card > a,
.kontakt-scope-card > a {
  min-block-size: 2.75rem;
  display: inline-flex;
  align-items: center;
  font-weight: var(--font-weight-semibold);
}

.kontakt-node {
  color: var(--color-toxic-turquoise);
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.08em;
}

.kontakt-details {
  background: rgb(16 37 54 / 0.6);
}

.kontakt-details__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  align-items: start;
  gap: var(--space-6);
}

.kontakt-details__intro {
  inline-size: min(100%, 22rem);
}

.kontakt-details__intro .eyebrow,
.kontakt-details__intro h2,
.kontakt-details__intro p {
  margin: 0;
}

.kontakt-details__intro .eyebrow {
  margin-block-end: var(--space-3);
}

.kontakt-details__intro h2 {
  margin-block-end: var(--space-4);
}

.kontakt-details__diagram {
  inline-size: min(100%, 13.75rem);
  margin-block-start: var(--space-6);
  color: var(--color-toxic-turquoise);
  opacity: 0.72;
}

.kontakt-details__panel {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-night);
  font-style: normal;
}

.kontakt-detail-record {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  min-inline-size: 0;
  padding: var(--space-4);
  border-inline-start: 3px solid var(--color-toxic-turquoise);
  background: rgb(16 37 54 / 0.6);
}

.kontakt-detail-record__label,
.kontakt-detail-record__value {
  margin: 0;
}

.kontakt-detail-record__label {
  color: var(--color-ash);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.kontakt-detail-record__value {
  color: var(--color-alchemical-paper);
  font-size: clamp(1.05rem, 2vw, 1.3rem);
  font-weight: var(--font-weight-medium);
  overflow-wrap: anywhere;
}

.kontakt-detail-record a:hover {
  color: var(--color-toxic-turquoise);
}

.kontakt-detail-record a span {
  color: var(--color-ash);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-regular);
}

.kontakt-scope__intro {
  inline-size: min(100%, 43.125rem);
}

.kontakt-scope__grid {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block-start: var(--space-6);
}

.kontakt-scope__grid::before {
  position: absolute;
  z-index: 0;
  inset-block-start: 50%;
  inset-inline: 12%;
  block-size: 1px;
  background: var(--color-stone-line);
  content: "";
}

.kontakt-scope-card {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
}

.kontakt-scope-card .kontakt-node {
  display: inline-flex;
  min-inline-size: 2.5rem;
  min-block-size: 2.5rem;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-toxic-turquoise);
  border-radius: 50%;
  background: var(--color-night);
}

.kontakt-scope-card--goal .kontakt-node {
  border-color: var(--color-spark-orange);
  color: var(--color-spark-orange);
}

.kontakt-scope-card--goal > a {
  color: var(--color-spark-orange);
}

.kontakt-form-section {
  background: linear-gradient(135deg, rgb(16 37 54 / 0.72), rgb(8 20 33 / 0.96));
}

.kontakt-form-section__intro,
.kontakt-form {
  inline-size: min(100%, 51.25rem);
  margin-inline: auto;
}

.kontakt-form-section__intro {
  margin-inline: auto;
  text-align: left;
}

.kontakt-form {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
  margin-block-start: var(--space-6);
  padding: clamp(var(--space-5), 4vw, var(--space-6));
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-corridor);
  box-shadow: var(--shadow-floating);
}

.kontakt-form__summary:empty,
.kontakt-form__status:empty,
.kontakt-field .error-message:empty {
  display: none;
}

.kontakt-form__summary {
  padding: var(--space-3) var(--space-4);
  border-inline-start: 3px solid var(--color-warning-crimson);
  background: rgb(228 75 95 / 0.12);
  color: #ffb4bf;
  font-size: var(--font-size-sm);
}

.kontakt-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}

.kontakt-field {
  display: flex;
  flex-direction: column;
  min-inline-size: 0;
  gap: var(--space-2);
}

.kontakt-field--half {
  grid-column: span 1;
}

.kontakt-field--full {
  grid-column: 1 / -1;
}

.kontakt-field label,
.kontakt-field .error-message {
  margin: 0;
}

.kontakt-field textarea {
  min-block-size: 10rem;
}

.kontakt-form__footer {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.kontakt-form__footer p,
.kontakt-form__status {
  max-inline-size: 38.75rem;
  margin: 0;
}

.kontakt-form__footer > p {
  color: var(--color-ash);
  font-size: var(--font-size-sm);
}

.kontakt-form__status {
  color: var(--color-toxic-turquoise);
  font-weight: var(--font-weight-semibold);
}

.kontakt-corrections__content {
  inline-size: min(100%, 51.25rem);
  margin-inline: auto;
}

.kontakt-corrections__intro {
  inline-size: min(100%, 38.75rem);
}

.kontakt-steps {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
  margin: var(--space-6) 0 0;
  padding: 0;
  list-style: none;
}

.kontakt-step {
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  gap: var(--space-4);
  min-inline-size: 0;
}

.kontakt-step__number {
  display: flex;
  inline-size: 2.75rem;
  block-size: 2.75rem;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-toxic-turquoise);
  border-radius: 50%;
  color: var(--color-toxic-turquoise);
  font-family: var(--font-heading);
  font-size: 1.2rem;
  font-weight: var(--font-weight-bold);
}

.kontakt-step__number--warning {
  border-color: var(--color-warning-crimson);
  color: #ffb4bf;
}

.kontakt-step__number--goal {
  border-color: var(--color-spark-orange);
  color: var(--color-spark-orange);
}

.kontakt-step__copy {
  min-inline-size: 0;
  padding-block-end: var(--space-5);
  border-block-end: 1px solid var(--color-border);
}

.kontakt-step__copy h3,
.kontakt-step__copy p,
.kontakt-step__copy a {
  margin: 0;
}

.kontakt-step__copy h3 {
  margin-block-end: var(--space-3);
}

.kontakt-step__copy p {
  max-inline-size: 42.5rem;
  margin-block-end: var(--space-3);
}

.kontakt-step__copy a {
  display: inline-flex;
  min-block-size: 2.75rem;
  align-items: center;
  font-weight: var(--font-weight-semibold);
}

.kontakt-boundary__answer {
  inline-size: min(100%, 51.25rem);
}

.kontakt-boundary__notice {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  max-inline-size: 42.5rem;
  padding: var(--space-5);
  border: 1px solid var(--color-warning-crimson);
  border-inline-start-width: 4px;
  border-radius: var(--radius-sm);
  background: rgb(228 75 95 / 0.08);
}

.kontakt-boundary__notice h3,
.kontakt-boundary__notice p {
  margin: 0;
}

.kontakt-boundary__notice h3 {
  color: #ffb4bf;
}

.kontakt-boundary__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block-start: var(--space-6);
}

.kontakt-boundary-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
}

.kontakt-boundary-card--inside {
  border-inline-start: 4px solid var(--color-toxic-turquoise);
}

.kontakt-boundary-card--outside {
  border-inline-start: 4px solid var(--color-warning-crimson);
}

.kontakt-boundary-card h3,
.kontakt-boundary-card p {
  margin: 0;
}

.kontakt-closing {
  padding-block-end: var(--space-9);
}

.kontakt-closing__panel {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  inline-size: min(100%, 51.25rem);
  margin-inline: auto;
  padding: clamp(var(--space-5), 4vw, var(--space-6));
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: linear-gradient(100deg, var(--color-corridor), rgb(8 20 33 / 0.88));
}

.kontakt-closing__panel::before {
  inline-size: 0.75rem;
  block-size: 0.75rem;
  border-radius: 50%;
  background: var(--color-spark-orange);
  box-shadow: 1.5rem 0 0 rgb(53 224 208 / 0.75);
  content: "";
}

.kontakt-closing__panel p {
  max-inline-size: 37.5rem;
}

@media (max-width: 61.25rem) {
  .kontakt-hero__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .kontakt-hero__content {
    order: 1;
  }

  .kontakt-hero__media {
    order: 2;
    min-block-size: 0;
    aspect-ratio: 16 / 9;
  }

  .kontakt-hero__media img {
    object-position: center;
  }
}

@media (max-width: 56.25rem) {
  .kontakt-channels__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kontakt-channel-card--form {
    grid-column: 1 / -1;
  }

  .kontakt-details__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .kontakt-details__intro {
    inline-size: min(100%, 36.25rem);
  }
}

@media (max-width: 51.25rem) {
  .kontakt-details__diagram {
    display: none;
  }
}

@media (max-width: 47.5rem) {
  .kontakt-scope__grid,
  .kontakt-boundary__grid,
  .kontakt-form__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .kontakt-scope__grid::before {
    inset-block: 2rem 2rem;
    inset-inline-start: 1.25rem;
    inline-size: 1px;
    block-size: auto;
  }

  .kontakt-field--half,
  .kontakt-field--full {
    grid-column: 1;
  }

  .kontakt-form__footer > button,
  .kontakt-closing__panel .button {
    inline-size: 100%;
  }
}

@media (max-width: 45rem) {
  .kontakt-hero {
    padding-block: var(--space-5) var(--space-7);
  }

  .kontakt-hero__content {
    padding: var(--space-5);
  }

  .kontakt-hero__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .kontakt-hero__actions > * {
    inline-size: 100%;
  }

  .kontakt-channels__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .kontakt-channel-card--form {
    grid-column: 1;
  }

  .kontakt-step {
    grid-template-columns: 2rem minmax(0, 1fr);
    gap: var(--space-3);
  }

  .kontakt-step__number {
    inline-size: 2rem;
    block-size: 2rem;
    font-size: 1rem;
  }

  .kontakt-details__panel,
  .kontakt-channel-card,
  .kontakt-scope-card,
  .kontakt-boundary-card,
  .kontakt-boundary__notice {
    padding: var(--space-4);
  }
}

@media (prefers-reduced-motion: reduce) {
  .kontakt-channel-card::before {
    transition: none;
  }
}


.home-page {
  background: var(--color-page);
}

.home-page .home-section {
  padding-block: clamp(4rem, 8vw, 6rem);
}

.home-page .home-hero {
  padding: var(--space-5) var(--page-padding) 0;
}

.home-page .home-hero__shell {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  max-inline-size: var(--container-wide);
  min-inline-size: 0;
  margin-inline: auto;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-corridor);
}

.home-page .home-hero__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  min-inline-size: 0;
  max-inline-size: 42.5rem;
  gap: var(--space-4);
  padding: clamp(2rem, 5vw, 4rem);
  background: rgb(8 20 33 / 0.96);
}

.home-page .home-hero__content > * { min-inline-size: 0; }
.home-page .home-hero__content h1,
.home-page .home-hero__content p,
.home-page .home-hero__content .breadcrumb { margin: 0; }
.home-page .home-hero__content .eyebrow { margin: 0; }
.home-page .home-hero__content .lead { max-inline-size: 42.5rem; }

.home-page .home-hero__media {
  position: absolute;
  z-index: 0;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
}

.home-page .home-hero__media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgb(8 20 33 / 0.52), rgb(8 20 33 / 0.08));
  content: "";
}

.home-page .home-hero__media img {
  inline-size: 100%;
  max-inline-size: none;
  block-size: 100%;
  object-fit: cover;
  object-position: 76% center;
}

.home-page .home-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  min-inline-size: 0;
}

.home-page .home-hero__actions > * { min-inline-size: 0; }
.home-page .home-hero__independence {
  max-inline-size: 38.75rem;
  padding-block-start: var(--space-4);
  border-block-start: 1px solid var(--color-border);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

.home-page .home-loop__intro,
.home-page .home-start__intro,
.home-page .home-build__intro,
.home-page .home-biomes__intro,
.home-page .home-bosses__intro,
.home-page .home-dlc__intro {
  max-inline-size: 43.75rem;
}

.home-page .home-loop__nodes {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--space-4);
  min-inline-size: 0;
  margin-block-start: var(--space-6);
}

.home-page .home-loop__node {
  position: relative;
  min-inline-size: 0;
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  background: var(--color-corridor);
}

.home-page .home-loop__node::before {
  position: absolute;
  inset-block-start: 2rem;
  inset-inline-end: -1rem;
  z-index: 1;
  inline-size: 1rem;
  block-size: 1px;
  background: var(--color-stone-line);
  content: "";
}

.home-page .home-loop__node:last-child::before { display: none; }
.home-page .home-loop__node--risk { border-color: var(--color-warning-crimson); }
.home-page .home-loop__node--decision { border-color: var(--color-spark-orange); }
.home-page .home-loop__number { display: block; color: var(--color-toxic-turquoise); font-family: var(--font-heading); font-size: 1.25rem; font-weight: var(--font-weight-bold); }
.home-page .home-loop__node--risk .home-loop__number { color: #ffb4bf; }
.home-page .home-loop__node--decision .home-loop__number { color: var(--color-spark-orange); }
.home-page .home-loop__node .eyebrow { margin-block: var(--space-2); }
.home-page .home-loop__node h3 { margin-block: 0 var(--space-3); }
.home-page .home-loop__node p { font-size: var(--font-size-sm); }

.home-page .home-start__cards,
.home-page .home-build__cards,
.home-page .home-bosses__cards,
.home-page .home-dlc__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  min-inline-size: 0;
  margin-block-start: var(--space-6);
}

.home-page .home-start__cards > *,
.home-page .home-build__cards > *,
.home-page .home-bosses__cards > *,
.home-page .home-dlc__cards > * { min-inline-size: 0; }

.home-page .home-direction-card,
.home-page .home-build-card,
.home-page .home-bosses__cards article,
.home-page .home-dlc__cards article {
  display: flex;
  flex-direction: column;
  min-inline-size: 0;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-corridor);
  transition: border-color var(--transition-base), background-color var(--transition-base);
}

.home-page .home-direction-card:hover,
.home-page .home-build-card:hover,
.home-page .home-bosses__cards article:hover,
.home-page .home-dlc__cards article:hover { border-color: var(--color-toxic-turquoise); }
.home-page .home-direction-card > *,
.home-page .home-build-card > *,
.home-page .home-bosses__cards article > *,
.home-page .home-dlc__cards article > * { min-inline-size: 0; margin: 0; }
.home-page .home-direction-card__number { color: var(--color-toxic-turquoise); font-family: var(--font-heading); font-size: 2rem; font-weight: var(--font-weight-bold); line-height: 1; }
.home-page .home-direction-card__links { display: flex; flex-direction: column; gap: var(--space-2); min-inline-size: 0; margin-block-start: auto; }
.home-page .home-build-card { position: relative; }
.home-page .home-build-card:not(:last-child)::after { position: absolute; inset-block-start: 2.3rem; inset-inline-end: -1.5rem; inline-size: 1.5rem; block-size: 1px; background: var(--color-toxic-turquoise); content: ""; }
.home-page .home-build-card .button,
.home-page .home-bosses__cards .button { align-self: flex-start; margin-block-start: auto; }

.home-page .home-combat__grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: var(--space-6);
  align-items: start;
}

.home-page .home-combat__content,
.home-page .home-combat__visual { min-inline-size: 0; }
.home-page .home-combat__content { max-inline-size: 47.5rem; }
.home-page .home-combat__tips { display: flex; flex-direction: column; gap: var(--space-6); min-inline-size: 0; }
.home-page .home-combat__tips article { min-inline-size: 0; max-inline-size: 37.5rem; padding-inline-start: var(--space-4); border-inline-start: 2px solid var(--color-toxic-turquoise); }
.home-page .home-combat__tips article h3 { margin-block-start: 0; }
.home-page .home-combat__visual { position: sticky; inset-block-start: var(--space-5); overflow: hidden; border: 1px solid var(--color-border); border-radius: var(--radius-md); }
.home-page .home-combat__visual img { inline-size: 100%; block-size: 31.25rem; object-fit: cover; object-position: 72% center; }

.home-page .home-biomes__panel { position: relative; overflow: hidden; min-inline-size: 0; margin-block-start: var(--space-6); border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-corridor); }
.home-page .home-biomes__panel > img { position: absolute; inset: 0; inline-size: 100%; max-inline-size: none; block-size: 100%; object-fit: cover; object-position: 75% center; opacity: 0.46; }
.home-page .home-biomes__nodes { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); min-inline-size: 0; padding: var(--space-6); }
.home-page .home-biomes__nodes > * { min-inline-size: 0; }
.home-page .home-biomes__nodes article { display: flex; flex-direction: column; gap: var(--space-3); min-inline-size: 0; padding: var(--space-5); border: 1px solid var(--color-border); background: rgb(8 20 33 / 0.95); }
.home-page .home-biomes__nodes article > * { margin: 0; min-inline-size: 0; }
.home-page .home-biomes__nodes span { color: var(--color-spark-orange); font-family: var(--font-heading); font-size: 1.5rem; font-weight: var(--font-weight-bold); }
.home-page .home-biomes__nodes h3 { font-size: 1.35rem; }
.home-page .home-biomes__nodes p { font-size: var(--font-size-sm); }
.home-page .home-biomes__nodes .button { align-self: flex-start; margin-block-start: auto; }

.home-page .home-bosses__cards article:first-child { border-color: var(--color-warning-crimson); }
.home-page .home-bosses__cards article:first-child .eyebrow { color: #ffb4bf; }

.home-page .home-guide { background: rgb(16 37 54 / 0.38); }
.home-page .home-guide__intro { max-inline-size: 47.5rem; margin-inline: auto; text-align: center; }
.home-page .home-guide__steps { display: flex; flex-direction: column; gap: var(--space-5); min-inline-size: 0; max-inline-size: 47.5rem; margin: var(--space-6) auto 0; padding: var(--space-6); border: 1px solid var(--color-border); background: var(--color-corridor); }
.home-page .home-guide__steps article { display: grid; grid-template-columns: 6rem minmax(0, 1fr); gap: var(--space-4); min-inline-size: 0; padding-block-end: var(--space-5); border-block-end: 1px solid var(--color-border); }
.home-page .home-guide__steps article:last-child { padding-block-end: 0; border-block-end: 0; }
.home-page .home-guide__steps article > * { min-inline-size: 0; }
.home-page .home-guide__number { color: var(--color-toxic-turquoise); font-family: var(--font-heading); font-size: 2rem; font-weight: var(--font-weight-bold); line-height: 1; }
.home-page .home-guide__steps h3 { margin-block-start: 0; }

.home-page .home-next__panel { display: flex; flex-direction: column; align-items: center; gap: var(--space-4); min-inline-size: 0; max-inline-size: 51.5rem; margin-inline: auto; padding: clamp(2rem, 5vw, 4rem); border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-corridor); text-align: center; }
.home-page .home-next__panel > * { min-inline-size: 0; margin: 0; }
.home-page .home-next__panel > p:not(.eyebrow):not(.home-next__independence) { max-inline-size: 37.5rem; }
.home-page .home-next__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-3); min-inline-size: 0; }
.home-page .home-next__actions > * { min-inline-size: 0; }
.home-page .home-next__independence { max-inline-size: 35rem; padding-block-start: var(--space-4); border-block-start: 1px solid var(--color-border); color: var(--color-text-muted); font-size: var(--font-size-sm); }

@media (max-width: 67.5rem) {
  .home-page .home-loop__nodes { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .home-page .home-loop__node::before { display: none; }
  .home-page .home-biomes__nodes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 58.75rem) {
  .home-page .home-start__cards,
  .home-page .home-build__cards,
  .home-page .home-bosses__cards,
  .home-page .home-dlc__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-page .home-start__cards > :nth-child(3),
  .home-page .home-build__cards > :nth-child(3),
  .home-page .home-bosses__cards > :nth-child(3),
  .home-page .home-dlc__cards > :nth-child(3) { grid-column: 1 / -1; }
  .home-page .home-build-card:not(:last-child)::after { display: none; }
  .home-page .home-combat__grid { grid-template-columns: minmax(0, 1fr); }
  .home-page .home-combat__visual { position: static; }
  .home-page .home-combat__visual img { block-size: 14rem; }
}

@media (max-width: 45rem) {
  .home-page .home-section { padding-block: clamp(2.5rem, 10vw, 3.5rem); }
  .home-page .home-hero { padding-inline: 0; padding-block-start: 0; }
  .home-page .home-hero__shell { border-inline: 0; border-radius: 0; }
  .home-page .home-hero__content { max-inline-size: none; padding: var(--space-5) var(--page-padding); }
  .home-page .home-hero__media { position: relative; block-size: auto; }
  .home-page .home-hero__media::after { background: rgb(8 20 33 / 0.18); }
  .home-page .home-hero__media img { block-size: auto; aspect-ratio: 2 / 1; object-position: center; }
  .home-page .home-hero__actions { flex-direction: column; align-items: stretch; }
  .home-page .home-hero__actions > * { inline-size: 100%; }
  .home-page .home-loop__nodes,
  .home-page .home-start__cards,
  .home-page .home-build__cards,
  .home-page .home-bosses__cards,
  .home-page .home-dlc__cards,
  .home-page .home-biomes__nodes { grid-template-columns: minmax(0, 1fr); }
  .home-page .home-start__cards > :nth-child(3),
  .home-page .home-build__cards > :nth-child(3),
  .home-page .home-bosses__cards > :nth-child(3),
  .home-page .home-dlc__cards > :nth-child(3) { grid-column: auto; }
  .home-page .home-loop__nodes { gap: var(--space-3); }
  .home-page .home-loop__node { padding-inline-start: 4.5rem; }
  .home-page .home-loop__number { position: absolute; inset-block-start: var(--space-5); inset-inline-start: var(--space-5); }
  .home-page .home-loop__node .eyebrow { margin-block-start: 0; }
  .home-page .home-biomes__panel > img { position: relative; block-size: 10rem; opacity: 1; object-position: center; }
  .home-page .home-biomes__nodes { padding: var(--space-4); }
  .home-page .home-guide__intro { text-align: left; }
  .home-page .home-guide__steps { padding: var(--space-4); }
  .home-page .home-guide__steps article { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); }
  .home-page .home-next__panel { align-items: stretch; text-align: left; }
  .home-page .home-next__panel .eyebrow,
  .home-page .home-next__panel h2,
  .home-page .home-next__panel > p:not(.home-next__independence) { text-align: center; }
  .home-page .home-next__actions { flex-direction: column; align-items: stretch; }
  .home-page .home-next__actions > * { inline-size: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .home-page .home-direction-card,
  .home-page .home-build-card,
  .home-page .home-bosses__cards article,
  .home-page .home-dlc__cards article { transition: none; }
}


.walka-page {
  overflow: hidden;
}

.walka-page .walka-section {
  padding-block: clamp(3.5rem, 7vw, 6rem);
}

.walka-page .eyebrow {
  margin-block-end: var(--space-3);
}

.walka-hero {
  padding: var(--space-5) var(--space-6) var(--space-8);
}

.walka-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  max-inline-size: var(--container-wide);
  margin-inline: auto;
  border: 1px solid var(--color-border);
  background: var(--color-corridor);
}

.walka-hero__copy,
.walka-hero__media,
.walka-loop__map > li,
.walka-field__cards > *,
.walka-styles__cards > *,
.walka-loadout__grid > *,
.walka-scale__modules > *,
.walka-routes__cards > * {
  min-inline-size: 0;
}

.walka-hero__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: var(--space-4);
  padding: clamp(2rem, 5vw, 4rem);
  background: linear-gradient(135deg, #102536 0%, #081421 100%);
}

.walka-hero__copy .breadcrumb,
.walka-hero__copy .eyebrow,
.walka-hero__copy h1,
.walka-hero__copy .lead,
.walka-hero__copy .walka-hero__actions,
.walka-hero__copy .walka-hero__rules {
  margin: 0;
}

.walka-hero__copy h1 {
  max-inline-size: 620px;
}

.walka-hero__copy .lead {
  max-inline-size: 620px;
  font-size: clamp(1.0625rem, 1.5vw, 1.125rem);
}

.walka-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.walka-hero__actions > * {
  min-inline-size: 0;
}

.walka-hero__rules {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-2);
  max-inline-size: 34rem;
  padding-inline-start: 1.3rem;
}

.walka-hero__media {
  position: relative;
  min-block-size: 31rem;
  overflow: hidden;
}

.walka-hero__media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgb(8 20 33 / .32), transparent 45%);
  content: "";
  pointer-events: none;
}

.walka-hero__media img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  object-position: 68% center;
}

.walka-loop {
  background: linear-gradient(180deg, rgb(16 37 54 / .56), transparent);
}

.walka-loop__intro {
  max-inline-size: 43.75rem;
}

.walka-loop__intro h2,
.walka-field__heading h2,
.walka-styles__intro h2,
.walka-reaction__content h2,
.walka-patterns__column h2,
.walka-loadout__copy h2,
.walka-scale__heading h2,
.walka-plan__content h2,
.walka-routes__heading h2 {
  margin-block-start: 0;
}

.walka-loop__map {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--space-3);
  margin: var(--space-6) 0;
  padding: 0;
  list-style: none;
}

.walka-loop__map::before {
  position: absolute;
  z-index: 0;
  inset-block-start: 1.55rem;
  inset-inline: 7%;
  block-size: 1px;
  background: var(--color-toxic-turquoise);
  content: "";
}

.walka-loop__map > li {
  position: relative;
  z-index: 1;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  background: var(--color-corridor);
}

.walka-loop__map h3,
.walka-loop__map p,
.walka-loop__map .walka-loop__number {
  margin: 0;
}

.walka-loop__map h3 {
  margin-block: var(--space-3) var(--space-2);
}

.walka-loop__number {
  display: grid;
  inline-size: 3rem;
  block-size: 3rem;
  place-items: center;
  border: 1px solid var(--color-toxic-turquoise);
  border-radius: 50%;
  background: var(--color-night);
  color: var(--color-toxic-turquoise);
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: var(--font-weight-bold);
}

.walka-loop__after {
  max-inline-size: 43.75rem;
}

.walka-loop__after blockquote {
  max-inline-size: 40rem;
}

.walka-field__heading {
  max-inline-size: 50rem;
}

.walka-field__cards,
.walka-styles__cards,
.walka-scale__modules {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block-start: var(--space-6);
}

.walka-field__card {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  min-block-size: 100%;
}

.walka-field__card > * {
  margin: 0;
}

.walka-field__card > span {
  color: var(--color-spark-orange);
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: var(--font-weight-bold);
}

.walka-field__card a,
.walka-styles__cards a,
.walka-scale__modules a {
  display: inline-flex;
  min-block-size: 2.75rem;
  align-items: center;
  gap: var(--space-2);
  margin-block-start: auto;
  font-weight: var(--font-weight-semibold);
}

.walka-styles__intro {
  max-inline-size: 42.5rem;
}

.walka-styles__image {
  display: block;
  max-inline-size: 100%;
  margin: var(--space-6) 0 0;
  border: 1px solid var(--color-border);
}

.walka-styles__image img {
  inline-size: 100%;
  max-inline-size: 100%;
  block-size: clamp(12rem, 24vw, 18rem);
  object-fit: cover;
  object-position: center;
}

.walka-styles__cards > article {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.walka-styles__cards h3,
.walka-styles__cards p {
  margin: 0;
}

.walka-reaction {
  background: rgb(16 37 54 / .42);
}

.walka-reaction__content,
.walka-plan__content {
  inline-size: min(100%, 50.5rem);
}

.walka-reaction__steps,
.walka-plan__steps {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-5);
  margin: var(--space-6) 0;
  padding: 0;
  list-style: none;
}

.walka-reaction__steps::before,
.walka-plan__steps::before {
  position: absolute;
  inset-block: 1.5rem;
  inset-inline-start: 1.5rem;
  inline-size: 1px;
  background: var(--color-stone-line);
  content: "";
}

.walka-reaction__steps li,
.walka-plan__steps li,
.walka-loadout__rules li {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: var(--space-4);
  min-inline-size: 0;
}

.walka-reaction__steps li > span,
.walka-plan__steps li > span,
.walka-loadout__rules li > span {
  position: relative;
  z-index: 1;
  display: grid;
  inline-size: 3rem;
  block-size: 3rem;
  place-items: center;
  border: 1px solid var(--color-toxic-turquoise);
  border-radius: 50%;
  background: var(--color-night);
  color: var(--color-alchemical-paper);
  font-family: var(--font-heading);
  font-size: 1.4rem;
  font-weight: var(--font-weight-bold);
}

.walka-reaction__steps h3,
.walka-reaction__steps p,
.walka-plan__steps h3,
.walka-plan__steps p,
.walka-loadout__rules h3,
.walka-loadout__rules p {
  margin: 0;
}

.walka-reaction__steps h3,
.walka-plan__steps h3,
.walka-loadout__rules h3 {
  margin-block-end: var(--space-2);
}

.walka-reaction__note {
  max-inline-size: 38.75rem;
  padding: var(--space-4) var(--space-5);
  border-inline-start: 3px solid var(--color-spark-orange);
  background: rgb(8 20 33 / .64);
}

.walka-patterns__column {
  inline-size: min(100%, 50rem);
}

.walka-patterns__column > article {
  padding-block: var(--space-5);
  border-block-end: 1px solid var(--color-border);
}

.walka-patterns__column > article h3 {
  margin-block-start: 0;
}

.walka-patterns__check {
  inline-size: min(100%, 30rem);
  margin-block-start: var(--space-6);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-corridor);
}

.walka-patterns__check h3 {
  margin-block-start: 0;
}

.walka-patterns__check ul {
  display: grid;
  gap: var(--space-2);
  margin-block-end: 0;
}

.walka-loadout {
  background: linear-gradient(90deg, transparent, rgb(16 37 54 / .58));
}

.walka-loadout__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  align-items: start;
  gap: var(--space-6);
}

.walka-loadout__copy {
  max-inline-size: 42.5rem;
}

.walka-loadout__rules {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-5);
  margin-block: var(--space-6);
  padding: 0;
  list-style: none;
}

.walka-loadout__rules li > span {
  border-radius: var(--radius-sm);
  border-color: var(--color-stone-line);
  color: var(--color-toxic-turquoise);
}

.walka-loadout__image {
  margin: 0;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  overflow: hidden;
}

.walka-loadout__image img {
  inline-size: 100%;
  max-inline-size: 100%;
  block-size: auto;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: 70% center;
}

.walka-scale__heading {
  max-inline-size: 47.5rem;
}

.walka-scale__modules {
  position: relative;
}

.walka-scale__modules::before {
  position: absolute;
  z-index: 0;
  inset-block-start: 2rem;
  inset-inline: 10%;
  block-size: 1px;
  background: var(--color-toxic-turquoise);
  content: "";
}

.walka-scale__modules > article {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  background: var(--color-corridor);
}

.walka-scale__modules h3,
.walka-scale__modules p {
  margin: 0;
}

.walka-plan__steps li:nth-child(3) > span {
  border-color: var(--color-spark-orange);
  color: var(--color-spark-orange);
}

.walka-plan__content > .button {
  max-inline-size: 21.25rem;
}

.walka-routes {
  background: rgb(16 37 54 / .38);
}

.walka-routes__heading {
  max-inline-size: 47.5rem;
}

.walka-routes__cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-4);
  margin-block-start: var(--space-6);
}

.walka-routes__card {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  min-block-size: 100%;
  color: var(--color-text);
  text-decoration: none;
}

.walka-routes__card:hover {
  border-color: var(--color-toxic-turquoise);
  color: var(--color-text);
}

.walka-routes__card > * {
  margin: 0;
}

.walka-routes__card > span {
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  letter-spacing: .08em;
  text-transform: uppercase;
}

.walka-routes__card .walka-routes__risk {
  color: #ffb4bf;
}

.walka-routes__card strong {
  display: inline-flex;
  min-block-size: 2.75rem;
  align-items: center;
  gap: var(--space-2);
  margin-block-start: auto;
  color: var(--color-toxic-turquoise);
}

.walka-routes__card i {
  font-style: normal;
}

.walka-routes__note {
  max-inline-size: 37.5rem;
  margin-block: var(--space-6) 0;
  color: var(--color-text-muted);
}

@media (max-width: 61.25rem) {
  .walka-field__cards,
  .walka-styles__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .walka-field__cards > :last-child,
  .walka-styles__cards > :last-child {
    grid-column: 1 / -1;
  }

  .walka-loop__map {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .walka-loop__map::before {
    display: none;
  }

  .walka-routes__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 56.25rem) {
  .walka-hero {
    padding-inline: 0;
    padding-block: var(--space-4) var(--space-7);
  }

  .walka-hero__inner,
  .walka-loadout__grid {
    grid-template-columns: 1fr;
  }

  .walka-hero__media {
    min-block-size: 0;
    aspect-ratio: 16 / 8;
  }

  .walka-hero__media::after {
    background: rgb(8 20 33 / .14);
  }

  .walka-hero__media img {
    object-position: center;
  }

  .walka-loadout__image {
    grid-row: 2;
  }

  .walka-loadout__copy {
    grid-row: 3;
    max-inline-size: none;
  }
}

@media (max-width: 50rem) {
  .walka-patterns__column,
  .walka-reaction__content,
  .walka-plan__content {
    inline-size: 100%;
  }

  .walka-scale__modules {
    grid-template-columns: 1fr;
  }

  .walka-scale__modules::before {
    inset-block: 3rem 3rem;
    inset-inline-start: 1.5rem;
    inline-size: 1px;
    block-size: auto;
  }
}

@media (max-width: 45rem) {
  .walka-page .walka-section {
    padding-block: 2.75rem;
  }

  .walka-hero__copy {
    padding: var(--space-5) var(--space-4);
  }

  .walka-hero__actions {
    flex-direction: column;
  }

  .walka-hero__actions > .button {
    inline-size: 100%;
  }

  .walka-loop__map,
  .walka-field__cards,
  .walka-styles__cards,
  .walka-routes__cards {
    grid-template-columns: 1fr;
  }

  .walka-field__cards > :last-child,
  .walka-styles__cards > :last-child {
    grid-column: auto;
  }

  .walka-loop__map {
    gap: 0;
    margin-block: var(--space-5);
  }

  .walka-loop__map > li {
    display: grid;
    grid-template-columns: 3rem minmax(0, 1fr);
    column-gap: var(--space-3);
    border-block-end: 0;
  }

  .walka-loop__map > li:last-child {
    border-block-end: 1px solid var(--color-border);
  }

  .walka-loop__map h3 {
    grid-column: 2;
    margin: 0 0 var(--space-2);
  }

  .walka-loop__map p {
    grid-column: 2;
  }

  .walka-loop__number {
    grid-row: span 2;
  }

  .walka-reaction__steps li,
  .walka-plan__steps li,
  .walka-loadout__rules li {
    grid-template-columns: 1fr;
    gap: var(--space-3);
  }

  .walka-reaction__steps::before,
  .walka-plan__steps::before {
    display: none;
  }

  .walka-reaction__steps li > span,
  .walka-plan__steps li > span,
  .walka-loadout__rules li > span {
    inline-size: 2.5rem;
    block-size: 2.5rem;
  }

  .walka-plan__content > .button {
    inline-size: 100%;
    max-inline-size: none;
  }
}

@media (prefers-reduced-motion: no-preference) {
  .walka-field__card,
  .walka-routes__card {
    transition: border-color var(--transition-base), background-color var(--transition-base);
  }

  .walka-field__card:hover,
  .walka-routes__card:hover {
    background: #143044;
  }
}


.bronie-page { overflow: clip; }
.bronie-page .section { position: relative; }
.bronie-hero { position: relative; background: var(--color-night); }
.bronie-hero__visual { position: absolute; inset: 0; background: linear-gradient(90deg, rgb(8 20 33 / .92) 0%, rgb(8 20 33 / .76) 44%, rgb(8 20 33 / .35) 100%), url('/src/media/arsenal-stone-corridor.webp') center right / cover no-repeat; }
.bronie-hero__inner { position: relative; display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); min-width: 0; padding-block: clamp(3rem, 8vw, 6rem); }
.bronie-hero__copy { grid-column: 1 / span 6; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-4); max-inline-size: 40.625rem; }
.bronie-hero__copy .breadcrumb, .bronie-hero__copy .eyebrow, .bronie-hero__copy h1, .bronie-hero__copy .lead { margin: 0; }
.bronie-hero__actions { display: flex; min-width: 0; flex-wrap: wrap; gap: var(--space-3); }
.bronie-hero__note { display: flex; max-inline-size: 37.5rem; flex-direction: column; gap: var(--space-2); padding: var(--space-3) var(--space-4); border-inline-start: 3px solid var(--color-toxic-turquoise); background: rgb(8 20 33 / .72); color: var(--color-ash); font-size: var(--font-size-sm); line-height: var(--line-height-small); }
.bronie-hero__note strong { color: var(--color-toxic-turquoise); font-size: var(--font-size-xs); letter-spacing: .09em; }
.bronie-hero__mobile-image { display: none; }
.bronie-loop__intro, .bronie-reading__intro, .bronie-catalog__intro, .bronie-builds__intro { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.bronie-loop__intro { max-inline-size: 42.5rem; }
.bronie-reading__intro, .bronie-builds__intro { max-inline-size: 42.5rem; }
.bronie-catalog__intro { max-inline-size: 45rem; }
.bronie-loop__intro .eyebrow, .bronie-loop__intro h2, .bronie-loop__intro .lead, .bronie-reading__intro .eyebrow, .bronie-reading__intro h2, .bronie-reading__intro .lead, .bronie-catalog__intro .eyebrow, .bronie-catalog__intro h2, .bronie-catalog__intro .lead, .bronie-builds__intro .eyebrow, .bronie-builds__intro h2, .bronie-builds__intro .lead { margin: 0; }
.bronie-loop__nodes { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); min-width: 0; gap: var(--space-5); margin-block-start: var(--space-6); }
.bronie-loop__node { position: relative; min-width: 0; padding: var(--space-5); border: 1px solid var(--color-border); background: rgb(16 37 54 / .52); }
.bronie-loop__node::before { position: absolute; inset: 1.5rem auto auto -1.5rem; inline-size: 1.5rem; block-size: 1px; background: var(--color-toxic-turquoise); content: ''; }
.bronie-loop__node:first-child::before { display: none; }
.bronie-loop__number { display: block; color: var(--color-toxic-turquoise); font-family: var(--font-heading); font-size: 2rem; font-weight: var(--font-weight-bold); line-height: 1; }
.bronie-loop__label, .bronie-reading__field { margin-block: var(--space-2); color: var(--color-ash); font-size: var(--font-size-xs); font-weight: var(--font-weight-bold); letter-spacing: .08em; line-height: 1.4; }
.bronie-loop__node h3, .bronie-reading__card h3 { margin-block: var(--space-3); }
.bronie-loop__node p:last-child, .bronie-reading__card p:last-child { margin-block-end: 0; }
.bronie-loop__node--risk .bronie-loop__label { color: #ffb4bf; }
.bronie-loop__node--risk .bronie-loop__number { color: var(--color-warning-crimson); }
.bronie-loop__node--goal .bronie-loop__number { color: var(--color-spark-orange); }
.bronie-reading__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); min-width: 0; gap: var(--space-5); margin-block-start: var(--space-6); }
.bronie-reading__card { min-width: 0; }
.bronie-catalog__form { display: grid; grid-template-columns: minmax(0, 5fr) minmax(11.25rem, 2fr) minmax(11.25rem, 2fr) minmax(11.25rem, 2fr) auto; min-width: 0; align-items: end; gap: var(--space-3); margin-block: var(--space-6) var(--space-3); }
.bronie-catalog__search-field, .bronie-catalog__filters, .bronie-catalog__filters > div { min-width: 0; }
.bronie-catalog__filters { display: contents; }
.bronie-catalog__filters-toggle { display: none; }
.bronie-catalog__reset { min-inline-size: max-content; }
.bronie-catalog__count { margin-block-end: var(--space-4); color: var(--color-ash); font-size: var(--font-size-sm); }
.bronie-catalog__results { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); min-width: 0; gap: var(--space-5); }
.bronie-result { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.bronie-result h3, .bronie-result p, .bronie-result__details { margin: 0; }
.bronie-result__meta { display: flex; min-width: 0; flex-wrap: wrap; gap: var(--space-2); color: var(--color-ash); font-size: var(--font-size-xs); font-weight: var(--font-weight-bold); letter-spacing: .04em; line-height: 1.4; }
.bronie-result__meta span:last-child { color: var(--color-toxic-turquoise); }
.bronie-result__details { display: grid; grid-template-columns: 1fr; inline-size: 100%; gap: var(--space-2); }
.bronie-result__details div { display: grid; grid-template-columns: minmax(0, 7rem) minmax(0, 1fr); gap: var(--space-2); }
.bronie-result__details dt { color: var(--color-ash); font-size: var(--font-size-sm); }
.bronie-result__details dd { min-width: 0; margin: 0; color: var(--color-stone); font-size: var(--font-size-sm); }
.bronie-result__link { margin-block-start: auto; font-weight: var(--font-weight-semibold); }
.bronie-catalog__empty { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--space-5); border: 1px solid var(--color-border); background: var(--color-corridor); }
.bronie-catalog__empty p { margin: 0; }
.bronie-builds__steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); min-width: 0; gap: var(--space-5); margin-block-start: var(--space-6); }
.bronie-builds__step { position: relative; min-width: 0; padding: var(--space-5); border-block-start: 2px solid var(--color-toxic-turquoise); background: rgb(16 37 54 / .52); }
.bronie-builds__step > span { display: block; color: var(--color-toxic-turquoise); font-family: var(--font-heading); font-size: 2rem; font-weight: var(--font-weight-bold); line-height: 1; }
.bronie-builds__step h3 { margin-block: var(--space-3); }
.bronie-builds__step p { margin: 0; }
.bronie-builds__step--trial { border-color: var(--color-warning-crimson); }
.bronie-builds__step--trial > span { color: var(--color-warning-crimson); }
.bronie-dlc__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); min-width: 0; gap: var(--space-5); align-items: start; }
.bronie-dlc__rule, .bronie-dlc__context { min-width: 0; }
.bronie-dlc__rule .eyebrow, .bronie-dlc__rule h2, .bronie-dlc__rule p, .bronie-dlc__context h3, .bronie-dlc__context p { margin: 0; }
.bronie-dlc__rule { display: flex; flex-direction: column; gap: var(--space-4); }
.bronie-dlc__context { display: flex; flex-direction: column; gap: var(--space-3); }
.bronie-dlc__context ul { margin: 0; }
.bronie-dlc__example { padding: var(--space-3); border: 1px solid var(--color-toxic-turquoise); color: var(--color-toxic-turquoise); font-size: var(--font-size-sm); font-weight: var(--font-weight-semibold); }
.bronie-explore__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); min-width: 0; gap: var(--space-6); align-items: start; }
.bronie-explore__content { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.bronie-explore__content .eyebrow, .bronie-explore__content h2, .bronie-explore__content .lead { margin: 0; }
.bronie-explore__nodes { display: grid; grid-template-columns: 1fr; inline-size: 100%; min-width: 0; gap: var(--space-3); margin-block-start: var(--space-3); }
.bronie-explore__nodes a { display: grid; grid-template-columns: 7rem minmax(0, 1fr); min-width: 0; gap: var(--space-2) var(--space-3); padding: var(--space-4); border: 1px solid var(--color-border); color: var(--color-stone); text-decoration: none; }
.bronie-explore__nodes a span { grid-row: 1 / span 2; color: var(--color-toxic-turquoise); font-size: var(--font-size-xs); font-weight: var(--font-weight-bold); letter-spacing: .08em; }
.bronie-explore__nodes a strong { color: var(--color-alchemical-paper); }
.bronie-explore__nodes a em { min-width: 0; color: var(--color-stone); font-size: var(--font-size-sm); font-style: normal; }
.bronie-explore__image { min-width: 0; margin: 0; border: 1px solid var(--color-border); border-radius: var(--radius-md); overflow: hidden; }
.bronie-explore__image img { inline-size: 100%; aspect-ratio: 4 / 3; object-position: center; }
.bronie-beginners__column { max-inline-size: 47.5rem; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.bronie-beginners__column .eyebrow, .bronie-beginners__column h2, .bronie-beginners__column .lead { margin: 0; }
.bronie-beginners__steps { display: grid; grid-template-columns: 1fr; inline-size: 100%; min-width: 0; gap: var(--space-5); margin: var(--space-5) 0 0; padding: 0; list-style: none; }
.bronie-beginners__steps li { position: relative; display: grid; grid-template-columns: 3rem minmax(0, 1fr); min-width: 0; gap: var(--space-3); padding-inline-start: var(--space-4); border-inline-start: 1px solid var(--color-stone-line); }
.bronie-beginners__steps li > span { display: flex; inline-size: 2.25rem; block-size: 2.25rem; align-items: center; justify-content: center; border: 1px solid var(--color-toxic-turquoise); color: var(--color-toxic-turquoise); font-family: var(--font-heading); font-size: 1.25rem; font-weight: var(--font-weight-bold); }
.bronie-beginners__steps li > div { min-width: 0; }
.bronie-beginners__steps h3 { margin-block-start: 0; }
.bronie-beginners__steps p:last-of-type { margin-block-end: 0; }
.bronie-beginners__lesson { display: inline-block; margin-block-start: var(--space-3) !important; color: #ffb4bf; font-size: var(--font-size-xs); font-weight: var(--font-weight-bold); letter-spacing: .08em; }
.bronie-beginners__links { display: flex; min-width: 0; flex-wrap: wrap; gap: var(--space-2) var(--space-4); margin-block-start: var(--space-3); }
.bronie-faq__content { max-inline-size: 51.25rem; display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.bronie-faq__content .eyebrow, .bronie-faq__content h2 { margin: 0; }
.bronie-faq__list { display: grid; grid-template-columns: 1fr; inline-size: 100%; min-width: 0; gap: var(--space-3); margin-block-start: var(--space-3); }
.bronie-faq__list details { min-width: 0; border: 1px solid var(--color-border); background: rgb(8 20 33 / .32); }
.bronie-faq__list summary { display: flex; min-block-size: 3.25rem; align-items: center; padding: var(--space-3) var(--space-4); color: var(--color-alchemical-paper); cursor: pointer; font-weight: var(--font-weight-semibold); }
.bronie-faq__list details p { max-inline-size: 43.75rem; margin: 0; padding: 0 var(--space-4) var(--space-4); }
.bronie-next__intro { max-inline-size: 40.625rem; display: flex; min-width: 0; flex-direction: column; align-items: center; gap: var(--space-3); margin-inline: auto; text-align: center; }
.bronie-next__intro .eyebrow, .bronie-next__intro h2, .bronie-next__intro .lead { margin: 0; }
.bronie-next__links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); min-width: 0; gap: var(--space-5); margin-block-start: var(--space-6); }
.bronie-next__links a { position: relative; display: flex; min-block-size: 7.5rem; min-width: 0; flex-direction: column; justify-content: center; gap: var(--space-2); padding: var(--space-5); border: 1px solid var(--color-border); background: var(--color-corridor); color: var(--color-stone); text-decoration: none; }
.bronie-next__links a::after, .bronie-explore__nodes a::after { position: absolute; inset: auto 0 0; inline-size: 0; block-size: 2px; background: var(--color-toxic-turquoise); content: ''; transition: inline-size var(--transition-base); }
.bronie-next__links span { color: var(--color-spark-orange); font-family: var(--font-heading); font-size: 1.5rem; font-weight: var(--font-weight-bold); line-height: 1; }
.bronie-next__links strong { color: var(--color-alchemical-paper); font-family: var(--font-heading); font-size: var(--font-size-card-title); line-height: 1.1; }
.bronie-next__links em { color: var(--color-ash); font-size: var(--font-size-sm); font-style: normal; }
.bronie-next__note { max-inline-size: 40.625rem; margin: var(--space-6) auto 0; padding-block-start: var(--space-4); border-block-start: 1px solid var(--color-border); color: var(--color-ash); font-size: var(--font-size-sm); text-align: center; }
.bronie-loop__node:hover, .bronie-loop__node:focus-within, .bronie-next__links a:hover, .bronie-next__links a:focus-visible, .bronie-explore__nodes a:hover, .bronie-explore__nodes a:focus-visible { border-color: var(--color-toxic-turquoise); }
.bronie-next__links a:hover::after, .bronie-next__links a:focus-visible::after, .bronie-explore__nodes a:hover::after, .bronie-explore__nodes a:focus-visible::after { inline-size: 100%; }
.bronie-explore__nodes a { position: relative; }
@media (max-width: 61.25rem) { .bronie-catalog__form { grid-template-columns: repeat(2, minmax(0, 1fr)); } .bronie-catalog__search-field { grid-column: 1 / -1; } .bronie-catalog__reset { justify-self: start; } .bronie-catalog__results { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 56.25rem) { .bronie-hero__visual { background: var(--color-night); } .bronie-hero__inner { grid-template-columns: 1fr; gap: var(--space-5); } .bronie-hero__copy { grid-column: 1; max-inline-size: 100%; } .bronie-hero__mobile-image { display: block; inline-size: 100%; margin: 0; border: 1px solid var(--color-border); border-radius: var(--radius-md); overflow: hidden; } .bronie-hero__mobile-image img { inline-size: 100%; aspect-ratio: 16 / 9; object-position: center; } .bronie-loop__nodes { grid-template-columns: repeat(2, minmax(0, 1fr)); } .bronie-loop__node:nth-child(3)::before { display: none; } .bronie-explore__grid { grid-template-columns: 1fr; } .bronie-explore__content, .bronie-explore__image { inline-size: 100%; } .bronie-explore__image { order: 2; } .bronie-beginners__column, .bronie-faq__content { max-inline-size: 100%; } }
@media (max-width: 52.5rem) { .bronie-reading__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .bronie-reading__card:last-child { grid-column: 1 / -1; } }
@media (max-width: 48.75rem) { .bronie-dlc__grid { grid-template-columns: 1fr; } }
@media (max-width: 47.5rem) { .bronie-builds__steps { grid-template-columns: 1fr; } }
@media (max-width: 45rem) { .bronie-loop__nodes, .bronie-reading__cards, .bronie-catalog__results, .bronie-next__links { grid-template-columns: 1fr; } .bronie-loop__node::before { display: none; } .bronie-reading__card:last-child { grid-column: auto; } .bronie-next__intro { align-items: flex-start; margin-inline: 0; text-align: start; } .bronie-next__note { margin-inline: 0; text-align: start; } }
@media (max-width: 44rem) { .bronie-catalog__form { grid-template-columns: 1fr; } .bronie-catalog__filters-toggle { display: inline-flex; inline-size: 100%; } .bronie-catalog__filters { display: none; grid-template-columns: 1fr; gap: var(--space-3); padding: var(--space-4); border: 1px solid var(--color-border); background: var(--color-corridor); } .bronie-catalog__filters.is-open { display: grid; } .bronie-catalog__reset { inline-size: 100%; } }
@media (max-width: 23.75rem) { .bronie-beginners__steps li { grid-template-columns: 1fr; padding-inline-start: var(--space-3); } .bronie-beginners__steps li > span { inline-size: 2.25rem; } .bronie-explore__nodes a { grid-template-columns: 1fr; } .bronie-explore__nodes a span { grid-row: auto; } }
@media (prefers-reduced-motion: reduce) { .bronie-next__links a::after, .bronie-explore__nodes a::after { transition: none; } }


.bossowie-page {
  overflow: hidden;
}

.bossowie-page .boss-section {
  padding-block: clamp(3rem, 7vw, 6rem);
}

.bossowie-page .container {
  max-inline-size: var(--container);
}

.boss-hero {
  padding: var(--space-6) var(--page-padding) clamp(3rem, 6vw, 5rem);
}

.boss-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: var(--space-5);
  max-inline-size: var(--container-wide);
  margin-inline: auto;
  align-items: stretch;
}

.boss-hero__content {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: clamp(1.5rem, 4vw, 3rem);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-night);
}

.boss-hero__content .breadcrumb,
.boss-hero__content .eyebrow,
.boss-hero__content h1,
.boss-hero__content p {
  margin: 0;
}

.boss-hero__content h1 {
  font-size: clamp(2.25rem, 4vw, 2.75rem);
}

.boss-hero__content .lead {
  max-inline-size: 42.5rem;
}

.boss-hero__actions {
  display: flex;
  min-inline-size: 0;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.boss-hero__actions > * {
  min-inline-size: 0;
}

.boss-hero__note {
  max-inline-size: 32.5rem;
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

.boss-hero__media {
  min-inline-size: 0;
  min-block-size: 100%;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-corridor);
}

.boss-hero__media img {
  inline-size: 100%;
  block-size: 100%;
  min-block-size: 28rem;
  object-fit: cover;
  object-position: right center;
}

.boss-loop {
  border-block: 1px solid var(--color-border);
  background: linear-gradient(180deg, rgb(16 37 54 / .56), transparent);
}

.boss-loop__intro,
.boss-preparation__intro,
.boss-catalog__intro,
.boss-dlc__intro,
.boss-confidence__intro,
.boss-debrief__intro,
.boss-faq__intro,
.boss-next__intro {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.boss-loop__intro { max-inline-size: 45rem; }
.boss-preparation__intro { max-inline-size: 43.125rem; }
.boss-catalog__intro { max-inline-size: 45rem; }
.boss-dlc__intro { max-inline-size: 43.75rem; }
.boss-confidence__intro { max-inline-size: 43.75rem; }
.boss-debrief__intro { max-inline-size: 43.75rem; }
.boss-faq__intro { max-inline-size: 43.75rem; }
.boss-next__intro { max-inline-size: 38.75rem; }

.bossowie-page .boss-loop__intro > *,
.bossowie-page .boss-preparation__intro > *,
.bossowie-page .boss-catalog__intro > *,
.bossowie-page .boss-dlc__intro > *,
.bossowie-page .boss-confidence__intro > *,
.bossowie-page .boss-debrief__intro > *,
.bossowie-page .boss-faq__intro > *,
.bossowie-page .boss-next__intro > * {
  margin: 0;
}

.boss-loop__map {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--space-3);
  margin: var(--space-6) 0 0;
  padding: 0;
  list-style: none;
}

.boss-loop__node {
  position: relative;
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  background: rgb(8 20 33 / .72);
}

.boss-loop__node::after {
  position: absolute;
  z-index: 0;
  inset-block-start: 1.45rem;
  inset-inline-end: calc(var(--space-3) * -1 - 1px);
  inline-size: var(--space-3);
  block-size: 1px;
  background: var(--color-toxic-turquoise);
  content: "";
}

.boss-loop__node:last-child::after { display: none; }
.boss-loop__number { color: var(--color-toxic-turquoise); font-family: var(--font-heading); font-size: 1.5rem; font-weight: var(--font-weight-bold); }
.boss-loop__node--risk .boss-loop__number { color: #ffb4bf; }
.boss-loop__node--risk { border-color: var(--color-warning-crimson); }
.boss-loop__node--decision .boss-loop__number { color: var(--color-spark-orange); }
.boss-loop__copy { min-inline-size: 0; }
.boss-loop__copy h3 { margin: 0 0 var(--space-2); font-size: 1.35rem; }
.boss-loop__copy p { margin: 0; font-size: var(--font-size-sm); }

.boss-preparation { background: rgb(16 37 54 / .35); }
.boss-preparation__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block-start: var(--space-6);
}

.boss-preparation__card {
  position: relative;
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  background: var(--color-corridor);
}

.boss-preparation__card::before {
  position: absolute;
  inset-block-start: -1px;
  inset-inline-start: var(--space-5);
  inline-size: 3rem;
  block-size: 2px;
  background: var(--color-toxic-turquoise);
  content: "";
}

.boss-preparation__card--goal::before { background: var(--color-spark-orange); }
.boss-preparation__mark { color: var(--color-text-muted); font-family: var(--font-heading); font-size: 1.25rem; font-weight: var(--font-weight-bold); }
.boss-preparation__card h3,
.boss-preparation__card p { margin: 0; }
.boss-preparation__card h3 { font-size: var(--font-size-card-title); }

.boss-catalog__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block-start: var(--space-6);
}

.boss-card {
  position: relative;
  display: grid;
  min-inline-size: 0;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-corridor);
}

.boss-card::after {
  position: absolute;
  inset-block-end: 0;
  inset-inline-start: 0;
  inline-size: 0;
  block-size: 2px;
  background: var(--color-toxic-turquoise);
  content: "";
  transition: inline-size var(--transition-base);
}

.boss-card:hover::after,
.boss-card:focus-within::after { inline-size: 100%; }
.boss-card > img { inline-size: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.boss-card__body { display: flex; min-inline-size: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--space-5); }
.boss-card__body > * { margin: 0; }
.boss-card__body h3 { font-size: clamp(1.7rem, 3vw, 2rem); }
.boss-card__link,
.boss-dlc__module > a,
.boss-route__story > a,
.boss-next__card > a,
.boss-confidence__links a { display: inline-flex; min-block-size: 2.75rem; align-items: center; font-size: var(--font-size-sm); font-weight: var(--font-weight-bold); letter-spacing: .04em; text-decoration: none; }

.boss-dlc { border-block: 1px solid var(--color-border); }
.boss-dlc__grid,
.boss-confidence__grid,
.boss-next__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block-start: var(--space-6);
}

.boss-dlc__module,
.boss-confidence__module,
.boss-next__card {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  background: var(--color-corridor);
}

.boss-dlc__module > *,
.boss-confidence__module > *,
.boss-next__card > * { margin: 0; }
.boss-dlc__module h3,
.boss-confidence__module h3,
.boss-next__card h3 { font-size: var(--font-size-card-title); }
.boss-dlc__module:nth-child(2) { border-color: var(--color-toxic-turquoise); }
.boss-dlc__module:nth-child(3) { border-inline-start-color: var(--color-spark-orange); border-inline-start-width: 3px; }

.boss-route { background: linear-gradient(90deg, rgb(16 37 54 / .48), transparent); }
.boss-route__heading { display: flex; min-inline-size: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); max-inline-size: 46rem; }
.boss-route__heading > * { margin: 0; }
.boss-route__layout { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); margin-block-start: var(--space-6); }
.boss-route__story { display: flex; min-inline-size: 0; grid-column: span 4; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding-inline-start: var(--space-4); border-inline-start: 2px solid var(--color-toxic-turquoise); }
.boss-route__story > * { margin: 0; }
.boss-route__story h3 { font-size: var(--font-size-card-title); }
.boss-route__aside { display: flex; min-inline-size: 0; grid-column: span 4; flex-direction: column; align-items: flex-start; gap: var(--space-3); padding: var(--space-5); border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-corridor); }
.boss-route__aside > * { margin: 0; }
.boss-route__aside h3 { font-size: var(--font-size-card-title); }

.boss-confidence__module { border-block-start-width: 3px; }
.boss-confidence__module:nth-child(1) { border-block-start-color: var(--color-toxic-turquoise); }
.boss-confidence__module:nth-child(2) { border-block-start-color: var(--color-stone-line); }
.boss-confidence__module:nth-child(3) { border-block-start-color: var(--color-spark-orange); }
.boss-confidence__links { display: flex; min-inline-size: 0; flex-direction: column; align-items: flex-start; gap: var(--space-2); }

.boss-debrief { border-block: 1px solid var(--color-border); background: rgb(16 37 54 / .28); }
.boss-debrief__steps { display: flex; min-inline-size: 0; max-inline-size: 51rem; flex-direction: column; gap: var(--space-5); margin: var(--space-6) 0 0; padding: 0; list-style: none; }
.boss-debrief__steps > li { display: grid; min-inline-size: 0; grid-template-columns: minmax(4rem, 2fr) minmax(0, 6fr); gap: var(--space-4); padding-block-end: var(--space-5); border-block-end: 1px solid var(--color-border); }
.boss-debrief__steps > li:last-child { padding-block-end: 0; border-block-end: 0; }
.boss-debrief__number { color: var(--color-toxic-turquoise); font-family: var(--font-heading); font-size: 2.25rem; font-weight: var(--font-weight-extrabold); line-height: 1; }
.boss-debrief__steps li:nth-child(1) .boss-debrief__number { color: #ffb4bf; }
.boss-debrief__steps li:nth-child(3) .boss-debrief__number { color: var(--color-spark-orange); }
.boss-debrief__steps li > div { display: flex; min-inline-size: 0; flex-direction: column; align-items: flex-start; gap: var(--space-3); }
.boss-debrief__steps h3,
.boss-debrief__steps p { margin: 0; }
.boss-debrief__steps h3 { font-size: var(--font-size-card-title); }

.boss-faq__list { display: flex; min-inline-size: 0; max-inline-size: 51.25rem; flex-direction: column; gap: var(--space-3); margin: var(--space-6) auto 0; }
.boss-faq__item { border: 1px solid var(--color-border); background: var(--color-corridor); }
.boss-faq__item h3 { margin: 0; font-size: 1rem; }
.boss-faq__item button { display: flex; inline-size: 100%; min-block-size: 3.25rem; justify-content: space-between; padding: var(--space-4); border: 0; border-radius: 0; background: transparent; color: var(--color-alchemical-paper); font-family: var(--font-body); font-size: 1rem; font-weight: var(--font-weight-semibold); line-height: 1.45; text-align: start; }
.boss-faq__item button:hover { background: rgb(53 224 208 / .08); color: var(--color-alchemical-paper); }
.boss-faq__item button::after { flex: 0 0 auto; margin-inline-start: var(--space-4); color: var(--color-spark-orange); content: "+"; font-size: 1.5rem; line-height: 1; }
.boss-faq__item button[aria-expanded="true"]::after { content: "−"; }
.boss-faq__answer { padding: 0 var(--space-4) var(--space-4); }
.boss-faq__answer p { max-inline-size: 43.75rem; margin: 0; }

.boss-next { background: linear-gradient(180deg, transparent, rgb(16 37 54 / .48)); }
.boss-next__card { min-block-size: 100%; }
.boss-next__card .eyebrow { color: var(--color-spark-orange); }
.boss-next__cta { margin-block-start: var(--space-6); }

@media (max-width: 65.625rem) {
  .boss-loop__map { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .boss-loop__node::after { display: none; }
  .boss-preparation__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 58.125rem) {
  .boss-dlc__grid,
  .boss-confidence__grid,
  .boss-next__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .boss-dlc__module:nth-child(3),
  .boss-confidence__module:nth-child(3),
  .boss-next__card:nth-child(3) { grid-column: 1 / -1; }
}

@media (max-width: 56.25rem) {
  .boss-hero__inner { grid-template-columns: minmax(0, 1fr); }
  .boss-hero__media { order: 2; }
  .boss-hero__media img { min-block-size: 0; aspect-ratio: 16 / 9; object-position: center; }
  .boss-catalog__grid { grid-template-columns: minmax(0, 1fr); }
  .boss-route__layout { grid-template-columns: minmax(0, 1fr); }
  .boss-route__story,
  .boss-route__aside { grid-column: 1; }
}

@media (max-width: 45rem) {
  .bossowie-page .boss-section { padding-block: clamp(2.5rem, 10vw, 3.5rem); }
  .boss-hero { padding-inline: var(--page-padding); }
  .boss-hero__content { padding: var(--space-5); }
  .boss-hero__content h1 { font-size: clamp(1.875rem, 8vw, 2.75rem); }
  .boss-hero__actions { inline-size: 100%; flex-direction: column; }
  .boss-hero__actions > * { inline-size: 100%; }
  .boss-loop__map,
  .boss-preparation__grid,
  .boss-dlc__grid,
  .boss-confidence__grid,
  .boss-next__grid { grid-template-columns: minmax(0, 1fr); }
  .boss-dlc__module:nth-child(3),
  .boss-confidence__module:nth-child(3),
  .boss-next__card:nth-child(3) { grid-column: 1; }
  .boss-loop__node { flex-direction: row; }
  .boss-loop__copy { flex: 1 1 auto; min-inline-size: 0; }
  .boss-debrief__steps > li { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
  .boss-faq__list { margin-inline: 0; }
  .boss-next__cta { inline-size: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .boss-card::after { transition: none; }
}


.gra-page {
  overflow: clip;
}

.gra-page .gra-section {
  padding-block: clamp(3.5rem, 7vw, 6rem);
}

.gra-page .gra-hero {
  padding: var(--space-6) var(--page-padding) 0;
}

.gra-page .gra-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 6fr) minmax(0, 6fr);
  position: relative;
  max-inline-size: var(--container-wide);
  min-block-size: 40rem;
  margin-inline: auto;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-corridor);
}

.gra-page .gra-hero__copy {
  display: flex;
  grid-column: 1;
  grid-row: 1;
  z-index: 1;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: clamp(2rem, 5vw, 4rem);
  background: linear-gradient(90deg, rgb(8 20 33 / 0.98) 0%, rgb(8 20 33 / 0.94) 72%, rgb(8 20 33 / 0.72) 100%);
}

.gra-page .gra-hero__copy .breadcrumb,
.gra-page .gra-hero__copy .eyebrow,
.gra-page .gra-hero__copy h1,
.gra-page .gra-hero__copy p {
  margin: 0;
}

.gra-page .gra-hero__copy h1 {
  max-inline-size: 42rem;
}

.gra-page .gra-hero__copy .lead {
  max-inline-size: 42.5rem;
}

.gra-page .gra-hero__note {
  max-inline-size: 38rem;
  color: var(--color-ash);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

.gra-page .gra-hero__actions {
  display: flex;
  inline-size: 100%;
  min-inline-size: 0;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.gra-page .gra-hero__actions > * {
  min-inline-size: 0;
}

.gra-page .gra-hero__microcopy {
  max-inline-size: 35rem;
  color: var(--color-ash);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

.gra-page .gra-hero__media {
  grid-column: 1 / -1;
  grid-row: 1;
  inline-size: 100%;
  block-size: 100%;
  min-inline-size: 0;
  margin: 0;
}

.gra-page .gra-hero__media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgb(8 20 33 / 0.35), transparent 68%);
  content: "";
  pointer-events: none;
}

.gra-page .gra-hero__media img {
  inline-size: 100%;
  max-inline-size: none;
  block-size: 100%;
  object-position: right center;
}

.gra-page .gra-roguevania {
  position: relative;
}

.gra-page .gra-roguevania__intro,
.gra-page .gra-loop__heading,
.gra-page .gra-exploration__heading,
.gra-page .gra-progression__heading,
.gra-page .gra-dlc__heading,
.gra-page .gra-plan__heading,
.gra-page .gra-next__heading {
  min-inline-size: 0;
}

.gra-page .gra-roguevania__intro {
  max-inline-size: 51.5rem;
  margin-inline: auto;
  margin-inline-start: max(var(--page-padding), calc((100% - var(--container)) / 2));
}

.gra-page .gra-roguevania__intro .eyebrow,
.gra-page .gra-roguevania__intro h2,
.gra-page .gra-roguevania__intro p,
.gra-page .gra-loop__heading .eyebrow,
.gra-page .gra-loop__heading h2,
.gra-page .gra-loop__heading p,
.gra-page .gra-exploration__heading .eyebrow,
.gra-page .gra-exploration__heading h2,
.gra-page .gra-exploration__heading p,
.gra-page .gra-progression__heading .eyebrow,
.gra-page .gra-progression__heading h2,
.gra-page .gra-progression__heading p,
.gra-page .gra-dlc__heading .eyebrow,
.gra-page .gra-dlc__heading h2,
.gra-page .gra-dlc__heading p,
.gra-page .gra-plan__heading .eyebrow,
.gra-page .gra-plan__heading h2,
.gra-page .gra-plan__heading p,
.gra-page .gra-next__heading .eyebrow,
.gra-page .gra-next__heading h2,
.gra-page .gra-next__heading p {
  margin: 0;
}

.gra-page .gra-roguevania__intro,
.gra-page .gra-loop__heading,
.gra-page .gra-exploration__heading,
.gra-page .gra-progression__heading,
.gra-page .gra-dlc__heading,
.gra-page .gra-plan__heading,
.gra-page .gra-next__heading {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.gra-page .gra-roguevania__intro .lead {
  max-inline-size: 45rem;
}

.gra-page .gra-roguevania__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  position: relative;
  gap: var(--space-5);
  margin-block-start: var(--space-7);
}

.gra-page .gra-roguevania__cards::before {
  position: absolute;
  z-index: 0;
  inset-block-start: 2.5rem;
  inset-inline: 8.5%;
  block-size: 1px;
  background: var(--color-toxic-turquoise);
  content: "";
  opacity: 0.42;
}

.gra-page .gra-concept-card {
  display: flex;
  position: relative;
  z-index: 1;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-inline-start: 3px solid var(--color-toxic-turquoise);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
  transition: border-color var(--transition-base), background-color var(--transition-base);
}

.gra-page .gra-concept-card--risk {
  border-inline-start-color: var(--color-warning-crimson);
}

.gra-page .gra-concept-card > * {
  min-inline-size: 0;
  margin: 0;
}

.gra-page .gra-concept-card__label,
.gra-page .gra-path-card__label,
.gra-page .gra-progression-card__label,
.gra-page .gra-next-card__type {
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-transform: uppercase;
}

.gra-page .gra-concept-card--risk .gra-concept-card__label {
  color: #ffb4bf;
}

.gra-page .gra-concept-card h3 {
  font-size: clamp(1.35rem, 2.4vw, 1.5rem);
}

.gra-page .gra-concept-card p:last-child {
  font-size: 0.95rem;
}

.gra-page .gra-concept-card:hover {
  border-color: var(--color-toxic-turquoise);
  background: #133044;
}

.gra-page .gra-loop {
  border-block: 1px solid var(--color-border);
  background: linear-gradient(180deg, rgb(16 37 54 / 0.62), rgb(8 20 33 / 0));
}

.gra-page .gra-loop__heading {
  max-inline-size: 46.25rem;
  margin-inline-start: max(var(--page-padding), calc((100% - var(--container)) / 2));
}

.gra-page .gra-loop__heading .lead {
  max-inline-size: 46.25rem;
}

.gra-page .gra-loop__list {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--space-4);
  margin-block-start: var(--space-7);
  padding: 0;
  list-style: none;
}

.gra-page .gra-loop__item {
  display: flex;
  position: relative;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-night);
}

.gra-page .gra-loop__item::after {
  position: absolute;
  inset-block-start: 2rem;
  inset-inline-start: calc(100% + 1px);
  inline-size: var(--space-4);
  block-size: 1px;
  background: var(--color-toxic-turquoise);
  content: "";
  opacity: 0.6;
}

.gra-page .gra-loop__item:last-child::after {
  display: none;
}

.gra-page .gra-loop__item--danger {
  border-color: rgb(228 75 95 / 0.7);
}

.gra-page .gra-loop__item--unlock {
  border-color: rgb(255 138 61 / 0.7);
}

.gra-page .gra-loop__number {
  display: inline-flex;
  min-inline-size: 2.5rem;
  min-block-size: 2.5rem;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-toxic-turquoise);
  color: var(--color-toxic-turquoise);
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: var(--font-weight-bold);
  line-height: 1;
}

.gra-page .gra-loop__item--danger .gra-loop__number {
  border-color: var(--color-warning-crimson);
  color: #ffb4bf;
}

.gra-page .gra-loop__item--unlock .gra-loop__number {
  border-color: var(--color-spark-orange);
  color: var(--color-spark-orange);
}

.gra-page .gra-loop__content {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.gra-page .gra-loop__content > * {
  min-inline-size: 0;
  margin: 0;
}

.gra-page .gra-loop__content h3 {
  font-size: 1.4rem;
}

.gra-page .gra-loop__content p {
  font-size: 0.94rem;
}

.gra-page .gra-loop__tag {
  color: var(--color-ash);
  font-size: var(--font-size-xs) !important;
  font-weight: var(--font-weight-semibold);
  line-height: 1.4;
}

.gra-page .gra-combat__grid,
.gra-page .gra-bosses__grid {
  display: grid;
  grid-template-columns: minmax(0, 8fr) minmax(0, 4fr);
  align-items: start;
  gap: var(--space-6);
}

.gra-page .gra-combat__copy,
.gra-page .gra-bosses__copy {
  display: flex;
  grid-column: 1;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  max-inline-size: 43.75rem;
}

.gra-page .gra-combat__copy > *,
.gra-page .gra-bosses__copy > * {
  min-inline-size: 0;
  margin: 0;
}

.gra-page .gra-combat__copy .lead,
.gra-page .gra-bosses__copy .lead {
  max-inline-size: 43.75rem;
}

.gra-page .gra-combat__copy h3,
.gra-page .gra-bosses__copy h3 {
  margin-block-start: var(--space-2);
}

.gra-page .gra-combat__checklist,
.gra-page .gra-bosses__list {
  display: flex;
  inline-size: 100%;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-2);
  margin: 0;
  padding-inline-start: 1.5rem;
}

.gra-page .gra-combat__aside,
.gra-page .gra-bosses__cta {
  display: flex;
  grid-column: 2;
  min-inline-size: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-4);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-corridor);
  box-shadow: var(--shadow-floating);
}

.gra-page .gra-combat__aside > *,
.gra-page .gra-bosses__cta > * {
  min-inline-size: 0;
  margin: 0;
}

.gra-page .gra-combat__aside h3,
.gra-page .gra-bosses__cta h3 {
  font-size: var(--font-size-card-title);
}

.gra-page .gra-combat__aside a:not(.button) {
  display: flex;
  min-block-size: 2.75rem;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-3);
  border-block-end: 1px solid var(--color-border);
  font-weight: var(--font-weight-semibold);
}

.gra-page .gra-combat__aside a:not(.button) span {
  flex: 0 0 auto;
}

.gra-page .gra-exploration {
  background: rgb(16 37 54 / 0.34);
}

.gra-page .gra-exploration__heading {
  max-inline-size: 43.125rem;
  margin-inline-start: max(var(--page-padding), calc((100% - var(--container)) / 2));
}

.gra-page .gra-exploration__heading .lead {
  max-inline-size: 43.125rem;
}

.gra-page .gra-exploration__paths {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(3rem, 2fr) minmax(0, 5fr);
  align-items: stretch;
  gap: var(--space-4);
  margin-block-start: var(--space-7);
}

.gra-page .gra-path-card {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
}

.gra-page .gra-path-card > * {
  min-inline-size: 0;
  margin: 0;
}

.gra-page .gra-path-card--explore {
  border-block-start: 3px solid var(--color-toxic-turquoise);
}

.gra-page .gra-path-card--goal {
  border-block-start: 3px solid var(--color-spark-orange);
}

.gra-page .gra-path-card--goal .gra-path-card__label {
  color: var(--color-spark-orange);
}

.gra-page .gra-exploration__branch {
  display: flex;
  min-inline-size: 0;
  align-items: center;
  justify-content: center;
}

.gra-page .gra-exploration__branch span {
  position: relative;
  inline-size: 100%;
  block-size: 1px;
  background: var(--color-toxic-turquoise);
  opacity: 0.65;
}

.gra-page .gra-exploration__branch span::before,
.gra-page .gra-exploration__branch span::after {
  position: absolute;
  inset-inline-start: 50%;
  inline-size: 1px;
  block-size: 2.5rem;
  background: var(--color-toxic-turquoise);
  content: "";
}

.gra-page .gra-exploration__branch span::before {
  inset-block-end: 0;
  transform: rotate(-38deg);
  transform-origin: bottom;
}

.gra-page .gra-exploration__branch span::after {
  inset-block-start: 0;
  transform: rotate(38deg);
  transform-origin: top;
}

.gra-page .gra-exploration__summary {
  display: flex;
  max-inline-size: 47.5rem;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  margin-block-start: var(--space-6);
  margin-inline-start: max(var(--page-padding), calc((100% - var(--container)) / 2));
  padding: var(--space-5);
  border: 1px solid var(--color-spark-orange);
  border-radius: var(--radius-sm);
  background: rgb(8 20 33 / 0.7);
}

.gra-page .gra-exploration__summary > * {
  min-inline-size: 0;
  margin: 0;
}

.gra-page .gra-progression__heading {
  max-inline-size: 45rem;
  margin-inline-start: max(var(--page-padding), calc((100% - var(--container)) / 2));
}

.gra-page .gra-progression__heading .lead {
  max-inline-size: 45rem;
}

.gra-page .gra-progression__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block-start: var(--space-7);
}

.gra-page .gra-progression-card {
  display: flex;
  grid-column: span 3;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
}

.gra-page .gra-progression-card--main {
  grid-column: span 6;
  border-block-start: 3px solid var(--color-spark-orange);
}

.gra-page .gra-progression-card > * {
  min-inline-size: 0;
  margin: 0;
}

.gra-page .gra-progression-card ul {
  display: flex;
  inline-size: 100%;
  flex-direction: column;
  gap: var(--space-2);
  padding-inline-start: 1.5rem;
}

.gra-page .gra-bosses {
  border-block: 1px solid var(--color-border);
  background: linear-gradient(90deg, rgb(228 75 95 / 0.06), transparent 52%);
}

.gra-page .gra-bosses__cta {
  border-color: rgb(255 138 61 / 0.7);
}

.gra-page .gra-bosses__cta .button {
  inline-size: 100%;
}

.gra-page .gra-bosses__microcopy {
  color: var(--color-ash);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

.gra-page .gra-dlc__heading {
  max-inline-size: 43.75rem;
  margin-inline-start: max(var(--page-padding), calc((100% - var(--container)) / 2));
}

.gra-page .gra-dlc__heading .lead {
  max-inline-size: 43.75rem;
}

.gra-page .gra-dlc__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block-start: var(--space-7);
}

.gra-page .gra-dlc-card {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
}

.gra-page .gra-dlc-card > * {
  min-inline-size: 0;
  margin: 0;
}

.gra-page .gra-dlc-card h3 {
  font-size: clamp(1.4rem, 2.4vw, 1.5rem);
}

.gra-page .gra-dlc-card__node {
  inline-size: 0.75rem;
  block-size: 0.75rem;
  border: 2px solid var(--color-toxic-turquoise);
  border-radius: 50%;
}

.gra-page .gra-plan__heading {
  max-inline-size: 43.75rem;
  margin-inline-start: max(var(--page-padding), calc((100% - var(--container)) / 2));
}

.gra-page .gra-plan__heading .lead {
  max-inline-size: 43.75rem;
}

.gra-page .gra-plan__list {
  display: flex;
  max-inline-size: 51.5rem;
  min-inline-size: 0;
  flex-direction: column;
  gap: var(--space-5);
  margin-block-start: var(--space-7);
  margin-inline-start: max(var(--page-padding), calc((100% - var(--container)) / 2));
  padding: 0;
  list-style: none;
}

.gra-page .gra-plan__item {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 6fr);
  position: relative;
  gap: var(--space-5);
  min-inline-size: 0;
}

.gra-page .gra-plan__item:not(:last-child)::after {
  position: absolute;
  inset-block-start: 3rem;
  inset-inline-start: 1.25rem;
  inline-size: 1px;
  block-size: calc(100% + var(--space-5));
  background: var(--color-stone-line);
  content: "";
}

.gra-page .gra-plan__label {
  display: flex;
  grid-column: 1;
  min-inline-size: 0;
  align-items: flex-start;
  gap: var(--space-3);
  color: var(--color-ash);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-small);
}

.gra-page .gra-plan__label span {
  display: inline-flex;
  z-index: 1;
  flex: 0 0 2.5rem;
  min-block-size: 2.5rem;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-toxic-turquoise);
  background: var(--color-night);
  color: var(--color-toxic-turquoise);
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: var(--font-weight-bold);
}

.gra-page .gra-plan__item--danger .gra-plan__label span {
  border-color: var(--color-warning-crimson);
  color: #ffb4bf;
}

.gra-page .gra-plan__content {
  display: flex;
  grid-column: 2;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  max-inline-size: 38.75rem;
}

.gra-page .gra-plan__content > * {
  min-inline-size: 0;
  margin: 0;
}

.gra-page .gra-plan__content h3 {
  font-size: var(--font-size-card-title);
}

.gra-page .gra-next {
  background: var(--color-corridor);
}

.gra-page .gra-next__heading {
  max-inline-size: 42.5rem;
  margin-inline-start: max(var(--page-padding), calc((100% - var(--container)) / 2));
}

.gra-page .gra-next__heading .lead {
  max-inline-size: 42.5rem;
}

.gra-page .gra-next__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block-start: var(--space-7);
}

.gra-page .gra-next-card {
  display: flex;
  grid-column: span 3;
  min-inline-size: 0;
  min-block-size: 17rem;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-night);
  color: var(--color-text);
  text-decoration: none;
  transition: border-color var(--transition-base), background-color var(--transition-base), transform var(--transition-base);
}

.gra-page .gra-next-card--wide {
  grid-column: span 6;
  min-block-size: 0;
  border-color: rgb(255 138 61 / 0.7);
}

.gra-page .gra-next-card > * {
  min-inline-size: 0;
  margin: 0;
}

.gra-page .gra-next-card h3 {
  color: var(--color-alchemical-paper);
  font-size: var(--font-size-card-title);
}

.gra-page .gra-next-card p {
  color: var(--color-stone);
}

.gra-page .gra-next-card__route {
  display: flex;
  inline-size: 100%;
  min-block-size: 2.75rem;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  margin-block-start: auto;
  padding-block-start: var(--space-3);
  border-block-start: 1px solid var(--color-border);
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
}

.gra-page .gra-next-card__route span {
  flex: 0 0 auto;
  color: var(--color-spark-orange);
}

.gra-page .gra-next-card:hover {
  border-color: var(--color-toxic-turquoise);
  background: #133044;
  color: var(--color-text);
  transform: translateY(-2px);
}

@media (max-width: 60rem) {
  .gra-page .gra-hero__inner {
    grid-template-columns: minmax(0, 1fr);
    min-block-size: 0;
  }

  .gra-page .gra-hero__copy {
    grid-column: 1;
    grid-row: 1;
    background: var(--color-night);
  }

  .gra-page .gra-hero__media {
    grid-column: 1;
    grid-row: 2;
    block-size: auto;
    aspect-ratio: 16 / 9;
  }

  .gra-page .gra-hero__media::after {
    display: none;
  }

  .gra-page .gra-hero__media img {
    block-size: 100%;
    object-position: center;
  }

  .gra-page .gra-roguevania__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .gra-page .gra-roguevania__cards::before {
    display: none;
  }

  .gra-page .gra-loop__list {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }

  .gra-page .gra-loop__item {
    display: grid;
    grid-template-columns: 3rem minmax(0, 1fr);
    gap: var(--space-4);
  }

  .gra-page .gra-loop__item::after {
    inset-block-start: calc(100% + 1px);
    inset-inline-start: 1.25rem;
    inline-size: 1px;
    block-size: var(--space-4);
  }

  .gra-page .gra-loop__number {
    grid-column: 1;
  }

  .gra-page .gra-loop__content {
    grid-column: 2;
  }

  .gra-page .gra-combat__grid,
  .gra-page .gra-bosses__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .gra-page .gra-combat__copy,
  .gra-page .gra-bosses__copy,
  .gra-page .gra-combat__aside,
  .gra-page .gra-bosses__cta {
    grid-column: 1;
  }

  .gra-page .gra-combat__aside,
  .gra-page .gra-bosses__cta {
    max-inline-size: none;
  }

  .gra-page .gra-exploration__paths {
    grid-template-columns: minmax(0, 1fr);
  }

  .gra-page .gra-exploration__branch {
    block-size: 2rem;
  }

  .gra-page .gra-exploration__branch span {
    inline-size: 1px;
    block-size: 100%;
  }

  .gra-page .gra-exploration__branch span::before,
  .gra-page .gra-exploration__branch span::after {
    display: none;
  }

  .gra-page .gra-progression__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .gra-page .gra-progression-card--main {
    grid-column: 1 / -1;
  }

  .gra-page .gra-progression-card:not(.gra-progression-card--main) {
    grid-column: span 3;
  }

  .gra-page .gra-next__grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .gra-page .gra-next-card {
    grid-column: span 3;
  }

  .gra-page .gra-next-card--wide {
    grid-column: span 6;
  }
}

@media (max-width: 45rem) {
  .gra-page .gra-section {
    padding-block: clamp(2.5rem, 10vw, 3.5rem);
  }

  .gra-page .gra-hero {
    padding-inline: 0;
    padding-block-start: 0;
  }

  .gra-page .gra-hero__inner {
    border-inline: 0;
    border-radius: 0;
  }

  .gra-page .gra-hero__copy {
    gap: var(--space-3);
    padding: var(--space-5) var(--page-padding);
  }

  .gra-page .gra-hero__actions {
    flex-direction: column;
  }

  .gra-page .gra-hero__actions .button {
    inline-size: 100%;
  }

  .gra-page .gra-roguevania__intro,
  .gra-page .gra-loop__heading,
  .gra-page .gra-exploration__heading,
  .gra-page .gra-progression__heading,
  .gra-page .gra-dlc__heading,
  .gra-page .gra-plan__heading,
  .gra-page .gra-next__heading,
  .gra-page .gra-exploration__summary,
  .gra-page .gra-plan__list {
    margin-inline: auto;
  }

  .gra-page .gra-roguevania__cards,
  .gra-page .gra-dlc__cards {
    grid-template-columns: minmax(0, 1fr);
  }

  .gra-page .gra-concept-card,
  .gra-page .gra-dlc-card,
  .gra-page .gra-path-card {
    padding: var(--space-5);
  }

  .gra-page .gra-loop__list {
    margin-block-start: var(--space-6);
  }

  .gra-page .gra-loop__item {
    grid-template-columns: 2.75rem minmax(0, 1fr);
    padding: var(--space-4);
  }

  .gra-page .gra-loop__number {
    min-inline-size: 2.25rem;
    min-block-size: 2.25rem;
  }

  .gra-page .gra-loop__item::after {
    inset-inline-start: 1.125rem;
  }

  .gra-page .gra-exploration__paths,
  .gra-page .gra-progression__grid,
  .gra-page .gra-next__grid {
    margin-block-start: var(--space-6);
  }

  .gra-page .gra-progression__grid,
  .gra-page .gra-next__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .gra-page .gra-progression-card,
  .gra-page .gra-progression-card:not(.gra-progression-card--main),
  .gra-page .gra-next-card,
  .gra-page .gra-next-card--wide {
    grid-column: 1;
  }

  .gra-page .gra-next-card {
    min-block-size: 0;
  }

  .gra-page .gra-plan__list {
    gap: var(--space-5);
  }

  .gra-page .gra-plan__item {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-3);
    padding-inline-start: var(--space-5);
  }

  .gra-page .gra-plan__item:not(:last-child)::after {
    inset-block-start: 2.5rem;
    inset-inline-start: 0.75rem;
    block-size: calc(100% + var(--space-5));
  }

  .gra-page .gra-plan__label,
  .gra-page .gra-plan__content {
    grid-column: 1;
    max-inline-size: none;
  }

  .gra-page .gra-plan__label {
    align-items: center;
  }

  .gra-page .gra-plan__label span {
    position: absolute;
    inset-inline-start: 0;
    min-inline-size: 1.5rem;
    min-block-size: 1.5rem;
    border-width: 1px;
    font-size: 0.8rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .gra-page .gra-next-card:hover {
    transform: none;
  }
}


.biomy-page {
  background: var(--color-night);
}

.biomy-page .section {
  position: relative;
}

.biomy-hero {
  padding: var(--space-6) 0 var(--space-8);
  background: linear-gradient(180deg, rgb(16 37 54 / .62), transparent 70%);
}

.biomy-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: stretch;
  gap: var(--space-5);
}

.biomy-hero__content,
.biomy-hero__media {
  min-inline-size: 0;
  inline-size: 100%;
}

.biomy-hero__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: clamp(1.5rem, 4vw, 3rem);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: linear-gradient(145deg, rgb(8 20 33 / .98), rgb(16 37 54 / .93));
}

.biomy-hero__content .breadcrumb,
.biomy-hero__copy h1,
.biomy-hero__copy p,
.biomy-decision p,
.biomy-loop__intro h2,
.biomy-loop__intro p,
.biomy-map__copy h2,
.biomy-map__copy p,
.biomy-map__scope h3,
.biomy-map__scope p,
.biomy-filters__intro h2,
.biomy-filters__intro p,
.biomy-reading__intro h2,
.biomy-reading__intro p,
.biomy-dlc__intro h2,
.biomy-dlc__intro p,
.biomy-checklist__content h2,
.biomy-checklist__content p,
.biomy-related__intro h2,
.biomy-related__intro p,
.biomy-faq__content h2,
.biomy-next__content h2,
.biomy-next__content p {
  margin: 0;
}

.biomy-hero__copy {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  min-inline-size: 0;
  max-inline-size: 40rem;
}

.biomy-hero__copy .lead {
  font-size: 1.125rem;
}

.biomy-hero__copy .eyebrow {
  margin: 0;
}

.biomy-hero__independence {
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  line-height: var(--line-height-small);
}

.biomy-hero__actions {
  gap: var(--space-3);
}

.biomy-decision {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  max-inline-size: 40rem;
  padding-inline-start: var(--space-4);
  border-inline-start: 3px solid var(--color-spark-orange);
}

.biomy-decision__label {
  color: var(--color-spark-orange);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: .1em;
  text-transform: uppercase;
}

.biomy-hero__media {
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-corridor);
  aspect-ratio: 16 / 9;
}

.biomy-hero__media img {
  inline-size: 100%;
  block-size: 100%;
  max-inline-size: none;
  object-fit: cover;
  object-position: 70% center;
}

.biomy-loop__intro {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-3);
  max-inline-size: 43.75rem;
  margin-inline: auto;
  text-align: center;
}

.biomy-loop__intro .eyebrow,
.biomy-filters__intro .eyebrow,
.biomy-reading__intro .eyebrow,
.biomy-dlc__intro .eyebrow,
.biomy-related__intro .eyebrow,
.biomy-faq__content .eyebrow,
.biomy-next__content .eyebrow,
.biomy-checklist__content .eyebrow,
.biomy-map__copy .eyebrow {
  margin: 0;
}

.biomy-loop__steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--space-3);
  margin: var(--space-7) 0 0;
  padding: 0;
  list-style: none;
}

.biomy-loop__step {
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: var(--space-3);
  min-inline-size: 0;
}

.biomy-loop__step:not(:last-child)::after {
  position: absolute;
  z-index: 0;
  inset-block-start: 1.35rem;
  inset-inline-start: calc(50% + 1.35rem);
  inline-size: calc(100% - 1.5rem);
  block-size: 1px;
  background: var(--color-toxic-turquoise);
  content: "";
}

.biomy-loop__node {
  position: relative;
  z-index: 1;
  display: grid;
  inline-size: 2.75rem;
  block-size: 2.75rem;
  place-items: center;
  border: 1px solid var(--color-toxic-turquoise);
  border-radius: 50%;
  background: var(--color-night);
  color: var(--color-toxic-turquoise);
  font-weight: var(--font-weight-bold);
}

.biomy-loop__body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  min-inline-size: 0;
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: rgb(16 37 54 / .64);
}

.biomy-loop__body h3,
.biomy-loop__body p,
.biomy-loop__body ul {
  margin: 0;
}

.biomy-loop__body h3 {
  font-size: 1.4rem;
}

.biomy-loop__body ul {
  padding-inline-start: var(--space-4);
  font-size: var(--font-size-sm);
}

.biomy-loop__risk {
  color: #ffb4bf;
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: .04em;
  text-transform: uppercase;
}

.biomy-loop__step--die .biomy-loop__node {
  border-color: var(--color-warning-crimson);
  color: #ffb4bf;
}

.biomy-loop__step--unlock .biomy-loop__node {
  border-color: var(--color-spark-orange);
  color: var(--color-spark-orange);
}

.biomy-map {
  overflow: hidden;
  background: linear-gradient(180deg, transparent, rgb(16 37 54 / .38), transparent);
}

.biomy-map__heading {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr);
  gap: var(--space-6);
  align-items: end;
}

.biomy-map__copy,
.biomy-map__scope {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  min-inline-size: 0;
}

.biomy-map__copy {
  max-inline-size: 47.5rem;
}

.biomy-map__scope {
  padding: var(--space-5);
  border-inline-start: 2px solid var(--color-border);
}

.biomy-map__scope h3 {
  font-size: 1.35rem;
}

.biomy-map__legend {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3) var(--space-4);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
}

.biomy-map__legend span {
  display: inline-flex;
  min-inline-size: 0;
  align-items: center;
  gap: var(--space-2);
}

.biomy-map__legend i {
  display: inline-block;
  flex: 0 0 auto;
}

.biomy-map__legend-node,
.biomy-map__legend-choice {
  inline-size: .75rem;
  block-size: .75rem;
  border: 1px solid var(--color-toxic-turquoise);
  border-radius: 50%;
}

.biomy-map__legend-choice {
  border-color: var(--color-spark-orange);
  background: var(--color-spark-orange);
}

.biomy-map__legend-path {
  inline-size: 1.5rem;
  block-size: 1px;
  background: var(--color-toxic-turquoise);
}

.biomy-map__stage {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-inline-size: 0;
  margin-block-start: var(--space-6);
  padding: var(--space-6);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-corridor);
}

.biomy-map__image {
  position: absolute;
  z-index: -1;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
  max-inline-size: none;
  opacity: .36;
  object-fit: cover;
}

.biomy-map__nodes {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-5);
}

.biomy-map__node {
  display: flex;
  min-inline-size: 0;
  min-block-size: 12.5rem;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: rgb(8 20 33 / .87);
  transition: border-color var(--transition-base), background-color var(--transition-base);
}

.biomy-map__node:hover {
  border-color: var(--color-toxic-turquoise);
  background: rgb(16 37 54 / .94);
}

.biomy-map__node h3,
.biomy-map__node p {
  margin: 0;
}

.biomy-map__node h3 {
  font-size: 1.45rem;
}

.biomy-map__node-label {
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: .08em;
  text-transform: uppercase;
}

.biomy-map__node--dlc .biomy-map__node-label {
  color: var(--color-spark-orange);
}

.biomy-filters__intro,
.biomy-reading__intro,
.biomy-dlc__intro,
.biomy-related__intro {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  max-inline-size: 42.5rem;
}

.biomy-filters__grid,
.biomy-dlc__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-5);
  margin-block-start: var(--space-6);
}

.biomy-filter-card,
.biomy-dlc__card {
  display: flex;
  min-inline-size: 0;
  min-block-size: 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-corridor);
}

.biomy-filter-card h3,
.biomy-filter-card p,
.biomy-dlc__card h3,
.biomy-dlc__card p {
  margin: 0;
}

.biomy-filter-card h3,
.biomy-dlc__card h3 {
  font-size: 1.45rem;
}

.biomy-filter-card__tag,
.biomy-dlc__tag {
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: .1em;
  text-transform: uppercase;
}

.biomy-filter-card a,
.biomy-dlc__card > a {
  margin-block-start: auto;
}

.biomy-filter-card__links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-2);
  margin-block-start: auto;
}

.biomy-reading {
  background: rgb(16 37 54 / .36);
}

.biomy-reading__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
  margin: var(--space-6) 0 0;
  padding: 0;
  list-style: none;
}

.biomy-reading__item {
  display: grid;
  grid-template-columns: 4rem minmax(0, 1fr);
  gap: var(--space-4);
  min-inline-size: 0;
  padding: var(--space-5);
  border-block-start: 1px solid var(--color-border);
}

.biomy-reading__item > div {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.biomy-reading__item h3,
.biomy-reading__item p,
.biomy-reading__item ul {
  margin: 0;
}

.biomy-reading__item h3 {
  font-size: 1.5rem;
}

.biomy-reading__item ul {
  padding-inline-start: var(--space-4);
}

.biomy-reading__number {
  color: var(--color-toxic-turquoise);
  font-family: var(--font-heading);
  font-size: 3rem;
  font-weight: var(--font-weight-extrabold);
  line-height: 1;
}

.biomy-reading__number--risk {
  color: var(--color-warning-crimson);
}

.biomy-dlc__card {
  justify-content: flex-start;
}

.biomy-checklist__layout {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(12rem, 1fr);
  gap: var(--space-6);
  align-items: stretch;
}

.biomy-checklist__content {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
}

.biomy-checklist__panel {
  display: flex;
  inline-size: 100%;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
  margin-block-start: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-corridor);
}

.biomy-checklist__list {
  display: flex;
  inline-size: 100%;
  flex-direction: column;
  gap: var(--space-3);
  margin: 0;
  padding: 0;
  list-style: none;
}

.biomy-checklist__list li,
.biomy-checklist__list label {
  min-inline-size: 0;
}

.biomy-checklist__list label {
  display: grid;
  grid-template-columns: 2.75rem minmax(0, 1fr);
  gap: var(--space-3);
  align-items: start;
  margin: 0;
  color: var(--color-text);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-regular);
}

.biomy-checklist__list input {
  inline-size: 1.25rem;
  min-inline-size: 1.25rem;
  block-size: 1.25rem;
  min-block-size: 1.25rem;
  margin: .35rem 0 0;
  accent-color: var(--color-toxic-turquoise);
}

.biomy-checklist__list input:checked + span {
  color: var(--color-text-muted);
  text-decoration: line-through;
  text-decoration-color: var(--color-toxic-turquoise);
}

.biomy-checklist__track {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
  border-inline-start: 1px solid var(--color-border);
}

.biomy-checklist__track span {
  display: block;
  inline-size: .85rem;
  block-size: .85rem;
  border: 1px solid var(--color-toxic-turquoise);
  border-radius: 50%;
  background: var(--color-night);
}

.biomy-checklist__track span:nth-child(3) {
  border-color: var(--color-spark-orange);
  background: var(--color-spark-orange);
}

.biomy-related__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-4);
  margin-block-start: var(--space-6);
}

.biomy-related__card {
  display: flex;
  min-inline-size: 0;
  min-block-size: 100%;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-corridor);
  color: var(--color-text);
  text-decoration: none;
  transition: border-color var(--transition-base), background-color var(--transition-base);
}

.biomy-related__card:hover {
  border-color: var(--color-toxic-turquoise);
  background: #143044;
  color: var(--color-alchemical-paper);
}

.biomy-related__card strong {
  color: var(--color-alchemical-paper);
  font-family: var(--font-heading);
  font-size: 1.5rem;
  line-height: 1.15;
}

.biomy-related__tag {
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: .1em;
  text-transform: uppercase;
}

.biomy-related__card em {
  margin-block-start: auto;
  color: var(--color-toxic-turquoise);
  font-size: var(--font-size-sm);
  font-style: normal;
  font-weight: var(--font-weight-bold);
}

.biomy-related__card--boss .biomy-related__tag {
  color: #ffb4bf;
}

.biomy-related__card--primary {
  border-color: var(--color-spark-orange);
}

.biomy-related__card--primary em {
  color: var(--color-spark-orange);
}

.biomy-faq__layout {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(14rem, 1fr);
  gap: var(--space-6);
  align-items: start;
}

.biomy-faq__content {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.biomy-faq__items {
  display: flex;
  inline-size: 100%;
  flex-direction: column;
  gap: var(--space-3);
}

.biomy-faq details {
  min-inline-size: 0;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-corridor);
}

.biomy-faq summary {
  display: flex;
  min-block-size: 2.75rem;
  align-items: center;
  padding: var(--space-3) var(--space-4);
  color: var(--color-alchemical-paper);
  cursor: pointer;
  font-family: var(--font-heading);
  font-size: 1.35rem;
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
}

.biomy-faq details[open] {
  border-color: var(--color-toxic-turquoise);
}

.biomy-faq details > div {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding: 0 var(--space-4) var(--space-4);
}

.biomy-faq details > div p {
  margin: 0;
  max-inline-size: 45rem;
}

.biomy-faq__aside {
  display: flex;
  min-inline-size: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-5);
  border-inline-start: 2px solid var(--color-border);
}

.biomy-faq__aside .eyebrow,
.biomy-faq__aside h3,
.biomy-faq__aside p {
  margin: 0;
}

.biomy-faq__aside h3 {
  font-size: 1.45rem;
}

.biomy-next {
  padding-block-end: var(--space-9);
}

.biomy-next__content {
  display: flex;
  max-inline-size: 47.5rem;
  margin-inline: auto;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  padding: clamp(1.5rem, 4vw, 3rem);
  border-block: 1px solid var(--color-border);
  text-align: center;
}

.biomy-next__actions {
  justify-content: center;
}

.biomy-next__note {
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
}

@media (max-width: 67.5rem) {
  .biomy-loop__steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .biomy-loop__step:nth-child(3)::after,
  .biomy-loop__step:nth-child(5)::after {
    display: none;
  }

  .biomy-map__nodes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .biomy-related__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 61.25rem) {
  .biomy-hero__inner {
    grid-template-columns: minmax(0, 1fr);
  }

  .biomy-hero__media {
    max-inline-size: 100%;
  }

  .biomy-hero__media img {
    object-position: center;
  }

  .biomy-checklist__layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .biomy-checklist__track {
    display: none;
  }
}

@media (max-width: 56.25rem) {
  .biomy-filters__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .biomy-filters__grid > :nth-child(3) {
    grid-column: 1 / -1;
  }

  .biomy-dlc__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .biomy-faq__layout,
  .biomy-map__heading {
    grid-template-columns: minmax(0, 1fr);
  }

  .biomy-faq__aside {
    border-inline-start: 0;
    border-block-start: 2px solid var(--color-border);
  }
}

@media (max-width: 45rem) {
  .biomy-hero {
    padding-block: var(--space-5) var(--space-7);
  }

  .biomy-hero__inner {
    gap: var(--space-4);
  }

  .biomy-hero__content {
    padding: var(--space-4);
  }

  .biomy-loop__intro {
    align-items: flex-start;
    margin-inline: 0;
    text-align: start;
  }

  .biomy-loop__steps {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }

  .biomy-loop__step {
    grid-template-columns: 2.75rem minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
    gap: var(--space-3);
  }

  .biomy-loop__step:not(:last-child)::after {
    inset-block-start: 2.75rem;
    inset-inline-start: 1.35rem;
    inline-size: 1px;
    block-size: calc(100% + var(--space-4));
  }

  .biomy-loop__body {
    grid-column: 2;
  }

  .biomy-map__stage {
    padding: var(--space-4);
  }

  .biomy-map__image {
    display: none;
  }

  .biomy-map__nodes {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-3);
    padding-inline-start: var(--space-4);
    border-inline-start: 1px solid var(--color-toxic-turquoise);
  }

  .biomy-map__node {
    min-block-size: auto;
  }

  .biomy-filters__grid,
  .biomy-reading__grid,
  .biomy-related__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .biomy-filters__grid > :nth-child(3) {
    grid-column: auto;
  }

  .biomy-reading__item {
    padding: var(--space-4) 0;
  }

  .biomy-faq summary {
    padding: var(--space-3);
    font-size: 1.25rem;
  }

  .biomy-faq details > div {
    padding: 0 var(--space-3) var(--space-3);
  }
}

@media (max-width: 26.25rem) {
  .biomy-reading__item,
  .biomy-checklist__list label {
    grid-template-columns: minmax(0, 1fr);
  }

  .biomy-reading__number {
    font-size: 2.25rem;
  }

  .biomy-checklist__list input {
    margin: 0;
  }

  .biomy-hero__actions,
  .biomy-next__actions {
    inline-size: 100%;
  }

  .biomy-hero__actions .button,
  .biomy-next__actions .button {
    inline-size: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .biomy-map__node,
  .biomy-related__card {
    transition: none;
  }
}


.thank-you {
  display: grid;
  min-block-size: clamp(30rem, 70vh, 44rem);
  place-items: center;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgb(8 20 33 / 0.96), rgb(16 37 54 / 0.82)),
    var(--color-page);
}

.thank-you__section {
  inline-size: 100%;
  padding-block: clamp(3rem, 9vw, 6rem);
}

.thank-you__panel {
  position: relative;
  display: flex;
  max-inline-size: 52rem;
  flex-direction: column;
  gap: var(--space-5);
  margin-inline: auto;
  padding: clamp(2rem, 5vw, 3rem);
  border-color: var(--color-border-active);
  text-align: center;
}

.thank-you__panel::before {
  position: absolute;
  inset-block-start: 0;
  inset-inline: 20%;
  block-size: 3px;
  background: var(--color-spark-orange);
  content: "";
}

.thank-you__eyebrow {
  justify-content: center;
  margin: 0;
}

.thank-you__eyebrow span {
  color: var(--color-spark-orange);
  font-size: 0.8em;
}

.thank-you__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.thank-you__content h1,
.thank-you__content p {
  margin: 0;
}

.thank-you__lead,
.thank-you__next-step {
  max-inline-size: 43rem;
  margin-inline: auto;
  text-align: center;
}

.thank-you__next-step {
  color: var(--color-text-muted);
}

.thank-you__actions {
  justify-content: center;
}

.thank-you__actions .button {
  min-inline-size: 12rem;
}

@media (max-width: 45rem) {
  .thank-you {
    min-block-size: 0;
  }

  .thank-you__section {
    padding-block: var(--space-7);
  }

  .thank-you__panel {
    gap: var(--space-4);
  }

  .thank-you__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .thank-you__actions .button {
    inline-size: 100%;
  }
}