@layer reset, base, scene, components, utilities;

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

  html {
    scroll-behavior: smooth;
    scroll-padding-top: 6rem;
  }

  body,
  h1,
  h2,
  h3,
  p {
    margin: 0;
  }

  button,
  a {
    font: inherit;
  }

  button {
    border: 0;
  }

  a {
    color: inherit;
    text-decoration: none;
  }

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

@layer base {
  :root {
    --page: #030509;
    --page-rgb: 3 5 9;
    --panel: #080c12;
    --panel-rgb: 8 12 18;
    --raised: #0e141d;
    --ink: #f5f8f6;
    --muted: #96a39d;
    --faint: #59655f;
    --line: rgb(255 255 255 / 0.105);
    --line-strong: rgb(255 255 255 / 0.22);
    --active: #baff38;
    --active-rgb: 186 255 56;
    --active-2: #6edbff;
    --active-2-rgb: 110 219 255;
    --shadow: 0 30px 90px rgb(0 0 0 / 0.48);
    --max: 98rem;
    --gutter: clamp(1.1rem, 4.2vw, 4.75rem);
    --display: "Arial Narrow", "Aptos Display", "Helvetica Neue", sans-serif;
    --body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  }

  body[data-sector="arcade"] {
    --active: #d2ff38;
    --active-rgb: 210 255 56;
    --active-2: #ff3fbf;
    --active-2-rgb: 255 63 191;
  }

  body[data-sector="care"] {
    --active: #ffb347;
    --active-rgb: 255 179 71;
    --active-2: #55e0c0;
    --active-2-rgb: 85 224 192;
  }

  body[data-sector="cosmos"] {
    --active: #65d5ff;
    --active-rgb: 101 213 255;
    --active-2: #9b69ff;
    --active-2-rgb: 155 105 255;
  }

  body[data-sector="protocol"] {
    --active: #48eca9;
    --active-rgb: 72 236 169;
    --active-2: #c8ff6a;
    --active-2-rgb: 200 255 106;
  }

  body[data-sector="chain"] {
    --active: #e6ad54;
    --active-rgb: 230 173 84;
    --active-2: #ff6f45;
    --active-2-rgb: 255 111 69;
  }

  html[data-theme="light"] {
    --page: #e9eeeb;
    --page-rgb: 233 238 235;
    --panel: #f5f8f6;
    --panel-rgb: 245 248 246;
    --raised: #ffffff;
    --ink: #101612;
    --muted: #4f5e56;
    --faint: #6d7b74;
    --line: rgb(16 22 18 / 0.13);
    --line-strong: rgb(16 22 18 / 0.25);
    --shadow: 0 30px 90px rgb(32 60 47 / 0.14);
  }

  html {
    min-width: 20rem;
    overflow-x: clip;
    color: var(--ink);
    background: var(--page);
    font-family: var(--body);
    font-synthesis: none;
    text-rendering: optimizeLegibility;
  }

  body {
    min-height: 100vh;
    min-height: 100svh;
    overflow-x: clip;
    background: var(--page);
    transition: background-color 500ms ease, color 300ms ease;
  }

  main {
    position: relative;
    z-index: 2;
    opacity: 1 !important;
  }

  ::selection {
    color: #080c08;
    background: var(--active);
  }

  :focus-visible {
    outline: 2px solid var(--active);
    outline-offset: 4px;
  }

  .skip-link {
    position: fixed;
    z-index: 1000;
    top: 0.75rem;
    left: 0.75rem;
    padding: 0.75rem 1rem;
    color: #081006;
    background: var(--active);
    transform: translateY(-180%);
  }

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

  .section {
    position: relative;
    width: min(100%, var(--max));
    margin-inline: auto;
    padding: clamp(6rem, 11vw, 11rem) var(--gutter);
  }

  .section-heading {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(17rem, 0.52fr);
    gap: 3rem;
    align-items: end;
    margin-bottom: clamp(2.4rem, 5vw, 4.8rem);
  }

  .section-heading h2,
  .manifesto h2 {
    max-width: 15ch;
    font-family: var(--display);
    font-size: clamp(3rem, 6.4vw, 6.8rem);
    font-weight: 800;
    line-height: 0.86;
    letter-spacing: -0.07em;
    text-wrap: balance;
  }

  .section-heading > p,
  .manifesto__copy > p {
    color: var(--muted);
    font-size: clamp(0.95rem, 1.3vw, 1.08rem);
    line-height: 1.85;
  }

  .section-index {
    margin-bottom: 1.25rem;
    color: var(--active);
    font-family: ui-monospace, "SFMono-Regular", Consolas, monospace;
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.22em;
    transition: color 350ms ease;
  }
}

@layer scene {
  #starfield {
    position: fixed;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
  }

  .cosmic-scene {
    position: fixed;
    z-index: 0;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
  }

  .cosmic-scene > div {
    position: absolute;
    inset: 0;
  }

  .cosmic-scene__nebula {
    inset: -25% !important;
    background:
      radial-gradient(ellipse at 79% 22%, rgb(var(--active-2-rgb) / 0.13), transparent 27%),
      radial-gradient(ellipse at 17% 56%, rgb(var(--active-rgb) / 0.085), transparent 30%),
      radial-gradient(ellipse at 65% 84%, rgb(var(--active-rgb) / 0.05), transparent 26%);
    filter: blur(3.5rem);
    transform: rotate(-8deg) scale(1.08);
    transition: background 700ms ease;
    animation: nebula-breathe 12s ease-in-out infinite alternate;
  }

  .cosmic-scene__horizon {
    top: 58% !important;
    right: -15% !important;
    bottom: auto !important;
    left: -15% !important;
    height: 35rem;
    border-top: 1px solid rgb(var(--active-rgb) / 0.12);
    border-radius: 50% 50% 0 0;
    background: radial-gradient(ellipse at 50% 0%, rgb(var(--active-rgb) / 0.07), transparent 65%);
    transform: perspective(800px) rotateX(68deg);
    transform-origin: top;
  }

  .cosmic-scene__grid {
    top: 63% !important;
    right: -30% !important;
    bottom: -20% !important;
    left: -30% !important;
    opacity: 0.22;
    background-image:
      linear-gradient(rgb(var(--active-rgb) / 0.14) 1px, transparent 1px),
      linear-gradient(90deg, rgb(var(--active-rgb) / 0.14) 1px, transparent 1px);
    background-size: 5rem 5rem;
    mask-image: linear-gradient(to bottom, transparent, black 22%, transparent 88%);
    transform: perspective(500px) rotateX(67deg);
    transform-origin: top;
    transition: background-image 600ms ease;
  }

  .cosmic-scene__vignette {
    background:
      linear-gradient(90deg, rgb(var(--page-rgb) / 0.62), transparent 18%, transparent 82%, rgb(var(--page-rgb) / 0.62)),
      linear-gradient(180deg, rgb(var(--page-rgb) / 0.42), transparent 16%, transparent 74%, rgb(var(--page-rgb) / 0.92));
  }

  .cosmic-scene__grain {
    opacity: 0.08;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E");
    mix-blend-mode: soft-light;
  }

  html[data-theme="light"] .cosmic-scene__grain {
    opacity: 0.035;
    mix-blend-mode: multiply;
  }

  .cursor-aura {
    position: fixed;
    z-index: 80;
    top: 0;
    left: 0;
    width: 18rem;
    aspect-ratio: 1;
    border: 1px solid rgb(var(--active-rgb) / 0.09);
    border-radius: 50%;
    background: radial-gradient(circle, rgb(var(--active-rgb) / 0.08), transparent 63%);
    opacity: 0;
    transform: translate3d(-50%, -50%, 0);
    pointer-events: none;
    transition: opacity 250ms ease, width 250ms ease, border-color 350ms ease;
  }

  @media (pointer: fine) {
    body.has-pointer .cursor-aura {
      opacity: 1;
    }

    body.pointer-over-link .cursor-aura {
      width: 25rem;
      border-color: rgb(var(--active-rgb) / 0.22);
    }
  }

  .scroll-progress {
    position: fixed;
    z-index: 55;
    top: 0;
    right: 0;
    width: 2px;
    height: 100vh;
    background: var(--line);
  }

  .scroll-progress i {
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(var(--active), var(--active-2));
    box-shadow: 0 0 12px var(--active);
    transform: scaleY(0);
    transform-origin: top;
    transition: background 350ms ease;
  }

  .boot {
    display: grid;
    grid-template-rows: 1fr auto auto auto 1fr;
    place-items: center;
    color: #eff8f2;
    overflow: hidden;
    transition: opacity 500ms ease, visibility 500ms ease;
  }

  .boot::before,
  .boot::after {
    position: absolute;
    content: "";
    pointer-events: none;
  }

  .boot::before {
    inset: 0;
    background:
      linear-gradient(90deg, transparent calc(50% - 1px), rgb(186 255 56 / 0.15) 50%, transparent calc(50% + 1px)),
      repeating-linear-gradient(0deg, transparent 0 4px, rgb(255 255 255 / 0.018) 5px);
  }

  .boot::after {
    top: 50%;
    left: 50%;
    width: min(92vw, 78rem);
    height: 1px;
    background: linear-gradient(90deg, transparent, #baff38, transparent);
    box-shadow: 0 0 30px #baff38;
    transform: translate(-50%, -50%) scaleX(0);
    animation: boot-flash 900ms 250ms cubic-bezier(0.7, 0, 0.2, 1) forwards;
  }

  .boot[hidden] {
    display: none;
  }

  .boot.is-exiting {
    opacity: 0;
    visibility: hidden;
  }

  .boot__reticle {
    position: relative;
    grid-row: 1;
    align-self: end;
    width: 3.5rem;
    aspect-ratio: 1;
    margin-bottom: 2.2rem;
    border: 1px solid rgb(186 255 56 / 0.55);
    border-radius: 50%;
    animation: boot-reticle 1.2s ease both;
  }

  .boot__reticle::before,
  .boot__reticle::after {
    position: absolute;
    content: "";
    background: #baff38;
  }

  .boot__reticle::before {
    top: 50%;
    left: -1rem;
    width: calc(100% + 2rem);
    height: 1px;
  }

  .boot__reticle::after {
    top: -1rem;
    left: 50%;
    width: 1px;
    height: calc(100% + 2rem);
  }

  .boot__reticle i {
    position: absolute;
    inset: 0.4rem;
    border: 1px dashed rgb(255 255 255 / 0.32);
    border-radius: 50%;
    animation: spin 3s linear infinite;
  }

  .boot__code,
  .boot__status {
    font-family: ui-monospace, monospace;
    font-size: 0.58rem;
    letter-spacing: 0.24em;
  }

  .boot__code {
    grid-row: 2;
    margin-bottom: 0.75rem;
    color: #baff38;
  }

  .boot__word {
    position: relative;
    z-index: 2;
    display: flex;
    grid-row: 3;
    gap: 0.18em;
    align-items: baseline;
    font-family: var(--display);
    font-size: clamp(2.8rem, 9vw, 8rem);
    font-weight: 800;
    line-height: 0.85;
    letter-spacing: -0.075em;
    clip-path: inset(0 100% 0 0);
    animation: boot-word 760ms 260ms cubic-bezier(0.16, 1, 0.3, 1) forwards;
  }

  .boot__word b {
    color: #baff38;
    font-size: 0.32em;
  }

  .boot__word span:last-child {
    color: transparent;
    -webkit-text-stroke: 1px rgb(245 248 246 / 0.72);
  }

  .boot__track {
    grid-row: 4;
    width: min(72vw, 36rem);
    height: 1px;
    margin-top: 2rem;
    overflow: hidden;
    background: rgb(255 255 255 / 0.12);
  }

  .boot__track i {
    display: block;
    width: 100%;
    height: 100%;
    background: #baff38;
    box-shadow: 0 0 12px #baff38;
    transform: scaleX(0);
    transform-origin: left;
    animation: boot-load 1s 200ms ease forwards;
  }

  .boot__status {
    grid-row: 5;
    align-self: start;
    margin-top: 0.9rem;
    color: rgb(255 255 255 / 0.48);
  }
}

@layer components {
  .topbar {
    position: fixed;
    z-index: 50;
    top: 0;
    right: 0;
    left: 0;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    height: 5.25rem;
    padding-inline: var(--gutter);
    border-bottom: 1px solid var(--line);
    background: rgb(var(--page-rgb) / 0.72);
    backdrop-filter: blur(20px) saturate(135%);
  }

  .brand {
    display: inline-flex;
    gap: 0.75rem;
    align-items: center;
    justify-self: start;
  }

  .brand__mark {
    position: relative;
    display: grid;
    place-items: center;
    width: 2.15rem;
    aspect-ratio: 1;
    border: 1px solid var(--line-strong);
    border-radius: 50%;
  }

  .brand__mark::before,
  .brand__mark::after,
  .brand__mark i {
    position: absolute;
    content: "";
    border-radius: 50%;
  }

  .brand__mark::before {
    width: 68%;
    height: 68%;
    border: 1px solid var(--active);
    clip-path: polygon(0 0, 100% 0, 100% 46%, 0 46%);
    animation: spin 8s linear infinite;
  }

  .brand__mark::after {
    width: 0.35rem;
    height: 0.35rem;
    background: var(--active);
    box-shadow: 0 0 14px var(--active);
  }

  .brand__mark i {
    width: 125%;
    height: 55%;
    border: 1px solid rgb(var(--active-2-rgb) / 0.65);
    transform: rotate(-34deg);
    transition: border-color 350ms ease;
  }

  .brand__name {
    font-family: var(--display);
    font-size: 0.77rem;
    font-weight: 800;
    letter-spacing: 0.13em;
  }

  .brand__name span {
    color: var(--active);
  }

  .topbar__system {
    display: flex;
    gap: 1.8rem;
    color: var(--faint);
    font-family: ui-monospace, monospace;
    font-size: 0.53rem;
    font-weight: 700;
    letter-spacing: 0.15em;
  }

  .topbar__system span:first-child {
    color: var(--muted);
  }

  .topbar__system i {
    display: inline-block;
    width: 0.38rem;
    aspect-ratio: 1;
    margin-right: 0.4rem;
    border-radius: 50%;
    background: var(--active);
    box-shadow: 0 0 10px var(--active);
  }

  .topbar__nav {
    display: none;
  }

  .topbar__tools {
    display: flex;
    gap: 0.5rem;
    justify-self: end;
  }

  .icon-button,
  .language-button {
    display: grid;
    place-items: center;
    min-width: 2.75rem;
    min-height: 2.75rem;
    color: var(--ink);
    border: 1px solid var(--line);
    border-radius: 50%;
    background: rgb(var(--panel-rgb) / 0.18);
    cursor: pointer;
    transition: color 160ms ease, border-color 160ms ease, transform 160ms ease, background 160ms ease;
  }

  .icon-button:hover,
  .language-button:hover {
    color: var(--active);
    border-color: var(--active);
    background: rgb(var(--active-rgb) / 0.06);
    transform: translateY(-2px);
  }

  .icon-button svg {
    width: 1.15rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-width: 1.6;
  }

  html[data-theme="dark"] .theme-icon--moon,
  html[data-theme="light"] .theme-icon--sun {
    display: none;
  }

  .language-button {
    grid-auto-flow: column;
    gap: 0.2rem;
    width: auto;
    padding-inline: 0.78rem;
    border-radius: 2rem;
    font-size: 0.67rem;
  }

  .language-button span {
    font-size: 0.8rem;
  }

  .language-button b {
    font-size: 0.62rem;
    letter-spacing: 0.06em;
  }

  .hero {
    position: relative;
    display: grid;
    grid-template-rows: auto 1fr auto;
    width: min(100%, var(--max));
    min-height: 100vh;
    min-height: 100svh;
    margin-inline: auto;
    padding: 7.2rem var(--gutter) 2.3rem;
    overflow: clip;
  }

  .hero__frame {
    position: absolute;
    z-index: -1;
    inset: 7.2rem var(--gutter) 2.3rem;
    border: 1px solid rgb(255 255 255 / 0.045);
    pointer-events: none;
  }

  .hero__frame i {
    position: absolute;
    width: 3.5rem;
    height: 3.5rem;
    border-color: rgb(var(--active-rgb) / 0.44);
    transition: border-color 350ms ease;
  }

  .hero__frame i:nth-child(1) { top: -1px; left: -1px; border-top: 1px solid; border-left: 1px solid; }
  .hero__frame i:nth-child(2) { top: -1px; right: -1px; border-top: 1px solid; border-right: 1px solid; }
  .hero__frame i:nth-child(3) { right: -1px; bottom: -1px; border-right: 1px solid; border-bottom: 1px solid; }
  .hero__frame i:nth-child(4) { bottom: -1px; left: -1px; border-bottom: 1px solid; border-left: 1px solid; }

  .hero__eyebrow {
    display: flex;
    z-index: 2;
    gap: 0.68rem;
    align-items: center;
    padding-inline: 1.2rem;
    color: var(--muted);
    font-family: ui-monospace, monospace;
    font-size: 0.61rem;
    font-weight: 700;
    letter-spacing: 0.17em;
  }

  .signal {
    width: 0.46rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: var(--active);
    box-shadow: 0 0 16px var(--active);
    animation: signal-pulse 2s ease-out infinite;
  }

  .hero__coordinate {
    margin-left: auto;
    color: var(--faint);
  }

  .hero__copy {
    z-index: 5;
    align-self: center;
    width: min(58rem, 69%);
    padding: clamp(2.5rem, 7vh, 5.2rem) 1.2rem;
  }

  .hero__kicker {
    margin-bottom: 1.2rem;
    color: var(--active);
    font-family: ui-monospace, monospace;
    font-size: clamp(0.61rem, 0.9vw, 0.75rem);
    font-weight: 800;
    letter-spacing: 0.25em;
  }

  .hero__title {
    position: relative;
    width: fit-content;
    font-family: var(--display);
    font-size: clamp(5rem, 10.7vw, 10.5rem);
    font-weight: 800;
    line-height: 0.68;
    letter-spacing: -0.078em;
    text-transform: uppercase;
  }

  .hero__title-line {
    display: block;
  }

  .hero__title-line--solid {
    color: var(--ink);
    text-shadow: 0 0 70px rgb(var(--active-rgb) / 0.09);
  }

  .hero__title-line--outline {
    color: transparent;
    -webkit-text-stroke: 1px color-mix(in srgb, var(--ink) 72%, transparent);
    transform: translateX(0.17em);
  }

  .hero__title b {
    position: absolute;
    top: 39%;
    right: -0.75em;
    color: var(--active);
    font-family: ui-monospace, monospace;
    font-size: 0.11em;
    letter-spacing: 0.08em;
    writing-mode: vertical-rl;
  }

  .hero__lede {
    max-width: 41rem;
    margin-top: 2.55rem;
    color: var(--muted);
    font-size: clamp(0.98rem, 1.65vw, 1.23rem);
    line-height: 1.78;
    text-wrap: balance;
  }

  .hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 2.2rem;
  }

  .button {
    position: relative;
    display: inline-flex;
    gap: 0.8rem;
    align-items: center;
    justify-content: center;
    min-height: 3.35rem;
    padding: 0.95rem 1.35rem;
    overflow: hidden;
    color: var(--ink);
    border: 1px solid var(--line-strong);
    background: rgb(var(--page-rgb) / 0.38);
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    backdrop-filter: blur(10px);
    cursor: pointer;
    transition: color 180ms ease, background 180ms ease, border-color 180ms ease, transform 180ms ease;
  }

  .button svg {
    width: 1.2rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
  }

  .button--primary {
    color: #071005;
    border-color: var(--active);
    background: var(--active);
    box-shadow: 0 0 45px rgb(var(--active-rgb) / 0.12);
  }

  .button--primary:hover {
    background: color-mix(in srgb, var(--active) 78%, white);
    transform: translateY(-4px);
  }

  .button--ghost:hover {
    color: var(--active);
    border-color: var(--active);
    transform: translateY(-4px);
  }

  .button__flare {
    position: absolute;
    top: -100%;
    left: -30%;
    width: 18%;
    height: 300%;
    background: rgb(255 255 255 / 0.72);
    filter: blur(10px);
    opacity: 0;
    transform: rotate(25deg);
  }

  .button--warp:hover .button__flare {
    opacity: 0.55;
    animation: button-flare 900ms ease;
  }

  .hero__portal {
    position: absolute;
    z-index: 1;
    top: 50%;
    right: clamp(-7rem, -2vw, -1rem);
    width: clamp(31rem, 52vw, 51rem);
    aspect-ratio: 1;
    transform: translateY(-48%);
    pointer-events: none;
  }

  .portal {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    filter: drop-shadow(0 0 80px rgb(var(--active-rgb) / 0.11));
  }

  .portal::before,
  .portal::after {
    position: absolute;
    content: "";
    border-radius: 50%;
  }

  .portal::before {
    width: 92%;
    height: 92%;
    border: 1px dashed rgb(var(--active-rgb) / 0.15);
    animation: spin 60s linear infinite;
  }

  .portal::after {
    width: 74%;
    height: 74%;
    background: radial-gradient(circle, transparent 38%, rgb(var(--active-rgb) / 0.035) 39% 41%, transparent 42%);
  }

  .portal__shock,
  .portal__ring,
  .portal__lens,
  .portal__crosshair {
    position: absolute;
    border-radius: 50%;
  }

  .portal__shock {
    border: 1px solid rgb(var(--active-rgb) / 0.18);
    animation: portal-shock 3.4s ease-out infinite;
  }

  .portal__shock--one { width: 46%; height: 46%; }
  .portal__shock--two { width: 46%; height: 46%; animation-delay: 1.7s; }

  .portal__ring {
    border: 1px solid var(--line-strong);
  }

  .portal__ring--outer {
    width: 82%;
    height: 82%;
    border-style: dashed;
    border-color: rgb(var(--active-rgb) / 0.32);
    animation: spin 28s linear infinite;
  }

  .portal__ring--outer::before,
  .portal__ring--outer::after {
    position: absolute;
    inset: 5%;
    content: "";
    border: 1px solid rgb(var(--active-2-rgb) / 0.18);
    border-radius: 50%;
  }

  .portal__ring--outer::after {
    inset: -5%;
    border-style: dotted;
  }

  .portal__ring--outer i {
    position: absolute;
    top: 50%;
    left: -0.26rem;
    width: 0.5rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: var(--active);
    box-shadow: 0 0 18px var(--active);
    transform-origin: calc(41vw + 0.26rem) 0;
  }

  .portal__ring--outer i:nth-child(2) { top: 12%; left: 18%; background: var(--active-2); box-shadow: 0 0 18px var(--active-2); }
  .portal__ring--outer i:nth-child(3) { top: 25%; right: 5%; left: auto; }
  .portal__ring--outer i:nth-child(4) { top: auto; right: 19%; bottom: 10%; left: auto; background: var(--active-2); }
  .portal__ring--outer i:nth-child(5) { top: auto; bottom: 8%; left: 22%; }

  .portal__ring--mid {
    width: 58%;
    height: 58%;
    border-color: rgb(var(--active-2-rgb) / 0.36);
    box-shadow: inset 0 0 35px rgb(var(--active-2-rgb) / 0.035);
    animation: spin 19s linear infinite reverse;
  }

  .portal__ring--mid::before {
    position: absolute;
    inset: 8%;
    content: "";
    border: 1px dashed rgb(var(--active-rgb) / 0.24);
    border-radius: inherit;
  }

  .portal__ring--mid i {
    position: absolute;
    top: 50%;
    left: -0.2rem;
    width: 0.38rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: var(--active-2);
    box-shadow: 0 0 16px var(--active-2);
  }

  .portal__ring--mid i:nth-child(2) { top: 15%; right: 10%; left: auto; background: var(--active); }
  .portal__ring--mid i:nth-child(3) { top: auto; right: 22%; bottom: 3%; left: auto; }

  .portal__ring--inner {
    width: 38%;
    height: 38%;
    border-color: rgb(255 255 255 / 0.3);
    box-shadow:
      0 0 38px rgb(var(--active-rgb) / 0.13),
      inset 0 0 38px rgb(var(--active-rgb) / 0.13);
    animation: portal-breathe 3.6s ease-in-out infinite;
  }

  .portal__lens {
    width: 27%;
    height: 27%;
    border: 1px solid rgb(255 255 255 / 0.45);
    background:
      radial-gradient(circle at 38% 32%, rgb(255 255 255 / 0.95) 0 1.2%, transparent 1.7%),
      radial-gradient(circle at 36% 31%, color-mix(in srgb, var(--active) 80%, white), var(--active) 8%, color-mix(in srgb, var(--active) 38%, #07100a) 31%, #020405 70%);
    box-shadow:
      inset -2rem -1.6rem 3.2rem rgb(0 0 0 / 0.75),
      0 0 5rem rgb(var(--active-rgb) / 0.25),
      0 0 10rem rgb(var(--active-rgb) / 0.12);
    transition: background 500ms ease, box-shadow 500ms ease;
  }

  .portal__lens::before {
    position: absolute;
    top: 16%;
    left: 20%;
    width: 40%;
    height: 16%;
    content: "";
    border-radius: 50%;
    background: rgb(255 255 255 / 0.34);
    filter: blur(7px);
    transform: rotate(-35deg);
  }

  .portal__lens i {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 145%;
    height: 38%;
    border: 1px solid rgb(var(--active-rgb) / 0.6);
    border-radius: 50%;
    box-shadow: 0 0 30px rgb(var(--active-rgb) / 0.14);
    transform: translate(-50%, -50%) rotate(-12deg);
  }

  .portal__crosshair {
    width: 34%;
    height: 34%;
    border: 1px solid transparent;
  }

  .portal__crosshair::before,
  .portal__crosshair::after {
    position: absolute;
    top: 50%;
    left: 50%;
    content: "";
    background: rgb(255 255 255 / 0.25);
  }

  .portal__crosshair::before { width: 128%; height: 1px; transform: translate(-50%, -50%); }
  .portal__crosshair::after { width: 1px; height: 128%; transform: translate(-50%, -50%); }

  .portal__label {
    position: absolute;
    color: var(--faint);
    font-family: ui-monospace, monospace;
    font-size: 0.56rem;
    letter-spacing: 0.16em;
  }

  .portal__label::before {
    display: inline-block;
    width: 2.5rem;
    height: 1px;
    margin-right: 0.55rem;
    content: "";
    vertical-align: middle;
    background: var(--line-strong);
  }

  .portal__label--a { top: 18%; right: 4%; }
  .portal__label--b { right: 4%; bottom: 19%; }

  body.is-warping .portal {
    animation: warp-core 1.15s cubic-bezier(0.4, 0, 0.2, 1);
  }

  body.is-warping .portal__shock {
    animation-duration: 460ms;
  }

  body.is-warping .hero__copy {
    animation: warp-copy 1.05s ease;
  }

  .hero__sector-rail {
    position: absolute;
    z-index: 4;
    top: 50%;
    right: var(--gutter);
    display: grid;
    gap: 0.82rem;
    color: var(--faint);
    font-family: ui-monospace, monospace;
    font-size: 0.52rem;
    letter-spacing: 0.13em;
    transform: translateY(-50%);
  }

  .hero__sector-rail span {
    display: grid;
    grid-template-columns: 1.4rem auto;
    gap: 0.55rem;
    align-items: center;
    opacity: 0.55;
  }

  .hero__sector-rail span::after {
    grid-column: 1 / -1;
    width: 100%;
    height: 1px;
    content: "";
    background: var(--line);
  }

  .hero__sector-rail .is-active {
    color: var(--active);
    opacity: 1;
  }

  .hero__sector-rail b {
    font-size: 0.5rem;
    font-weight: 500;
  }

  .hero__telemetry {
    display: flex;
    z-index: 4;
    gap: clamp(1rem, 3.8vw, 4.2rem);
    align-items: flex-end;
    align-self: end;
    width: fit-content;
    margin-left: 1.2rem;
    padding: 1rem 1.1rem 0;
    border-top: 1px solid var(--line);
  }

  .hero__telemetry div:not(.telemetry-wave) {
    display: grid;
    grid-template-columns: auto auto;
    gap: 0.2rem 0.7rem;
    align-items: baseline;
  }

  .hero__telemetry small {
    grid-column: 1 / -1;
    color: var(--faint);
    font-family: ui-monospace, monospace;
    font-size: 0.47rem;
    letter-spacing: 0.15em;
  }

  .hero__telemetry strong {
    font-family: var(--display);
    font-size: clamp(1.4rem, 2.4vw, 2.3rem);
    line-height: 1;
  }

  .hero__telemetry span {
    color: var(--faint);
    font-size: 0.61rem;
    letter-spacing: 0.08em;
  }

  .telemetry-wave {
    display: flex;
    gap: 0.23rem;
    align-items: flex-end;
    height: 2rem;
    padding-bottom: 0.15rem;
  }

  .telemetry-wave i {
    width: 2px;
    height: var(--wave, 30%);
    background: var(--active);
    animation: equalize 1.2s ease-in-out infinite alternate;
  }

  .telemetry-wave i:nth-child(2) { --wave: 78%; animation-delay: -0.2s; }
  .telemetry-wave i:nth-child(3) { --wave: 45%; animation-delay: -0.8s; }
  .telemetry-wave i:nth-child(4) { --wave: 100%; animation-delay: -0.4s; }
  .telemetry-wave i:nth-child(5) { --wave: 58%; animation-delay: -0.9s; }
  .telemetry-wave i:nth-child(6) { --wave: 85%; animation-delay: -0.5s; }
  .telemetry-wave i:nth-child(7) { --wave: 34%; animation-delay: -0.1s; }

  .hero__scroll {
    position: absolute;
    z-index: 5;
    right: calc(var(--gutter) + 1.4rem);
    bottom: 2.35rem;
    display: flex;
    gap: 0.75rem;
    align-items: center;
    color: var(--faint);
    font-family: ui-monospace, monospace;
    font-size: 0.54rem;
    letter-spacing: 0.15em;
    writing-mode: vertical-rl;
  }

  .hero__scroll > i {
    display: block;
    width: 1px;
    height: 2.8rem;
    overflow: hidden;
    background: var(--line-strong);
  }

  .hero__scroll > i::after {
    display: block;
    width: 1px;
    height: 50%;
    content: "";
    background: var(--active);
    animation: scroll-line 1.8s ease-in-out infinite;
  }

  .worlds {
    border-top: 1px solid var(--line);
  }

  .worlds::before {
    position: absolute;
    z-index: -1;
    top: 6rem;
    right: -18rem;
    width: 45rem;
    aspect-ratio: 1;
    content: "";
    border: 1px solid rgb(var(--active-rgb) / 0.08);
    border-radius: 50%;
    box-shadow: 0 0 0 5rem rgb(var(--active-rgb) / 0.018), 0 0 0 10rem rgb(var(--active-rgb) / 0.012);
    transition: border-color 500ms ease, box-shadow 500ms ease;
  }

  .sector-console {
    position: relative;
    display: grid;
    grid-template-columns: minmax(20rem, 0.63fr) minmax(0, 1.37fr);
    min-height: 45rem;
    overflow: hidden;
    border: 1px solid var(--line-strong);
    background: rgb(var(--panel-rgb) / 0.72);
    box-shadow: var(--shadow);
    backdrop-filter: blur(18px);
  }

  .sector-console::before {
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    width: 18%;
    height: 2px;
    content: "";
    background: var(--active);
    box-shadow: 0 0 18px var(--active);
    transition: background 350ms ease;
  }

  .world-selector {
    position: relative;
    z-index: 2;
    display: grid;
    align-content: stretch;
    border-right: 1px solid var(--line);
  }

  .world-chip {
    --chip: var(--active);
    position: relative;
    display: grid;
    grid-template-columns: 2rem 2.8rem 1fr auto;
    gap: 0.85rem;
    align-items: center;
    min-height: 7rem;
    padding: 1.15rem 1.4rem;
    overflow: hidden;
    color: var(--muted);
    text-align: left;
    border-bottom: 1px solid var(--line);
    background: transparent;
    cursor: pointer;
    transition: color 220ms ease, background 220ms ease, padding-left 220ms ease;
  }

  .world-chip:nth-child(2) { --chip: #d2ff38; }
  .world-chip:nth-child(3) { --chip: #ffb347; }
  .world-chip:nth-child(4) { --chip: #65d5ff; }
  .world-chip:nth-child(5) { --chip: #48eca9; }
  .world-chip:nth-child(6) { --chip: #e6ad54; border-bottom: 0; }

  .world-chip::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 3px;
    content: "";
    background: var(--chip);
    box-shadow: 0 0 18px var(--chip);
    transform: scaleY(0);
    transition: transform 220ms ease;
  }

  .world-chip:hover,
  .world-chip.is-active {
    color: var(--ink);
    background:
      linear-gradient(90deg, color-mix(in srgb, var(--chip) 9%, transparent), transparent 78%);
    padding-left: 1.75rem;
  }

  .world-chip.is-active::before {
    transform: scaleY(1);
  }

  .world-chip__index {
    color: var(--faint);
    font-family: ui-monospace, monospace;
    font-size: 0.55rem;
  }

  .world-chip__glyph {
    display: grid;
    place-items: center;
    width: 2.7rem;
    aspect-ratio: 1;
    color: var(--chip);
    border: 1px solid color-mix(in srgb, var(--chip) 42%, var(--line));
    border-radius: 50%;
    font-family: ui-monospace, monospace;
    font-size: 1rem;
  }

  .world-chip > span:nth-child(3) {
    display: grid;
    gap: 0.35rem;
  }

  .world-chip b {
    font-family: var(--display);
    font-size: 0.82rem;
    letter-spacing: 0.14em;
  }

  .world-chip small {
    color: var(--faint);
    font-size: 0.61rem;
    letter-spacing: 0.06em;
  }

  .world-chip > i {
    width: 0.38rem;
    aspect-ratio: 1;
    border-radius: 50%;
    background: var(--chip);
    box-shadow: 0 0 10px var(--chip);
    opacity: 0;
    transition: opacity 220ms ease;
  }

  .world-chip.is-active > i {
    opacity: 1;
  }

  .sector-display {
    position: relative;
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    overflow: hidden;
    background:
      radial-gradient(circle at 50% 38%, rgb(var(--active-rgb) / 0.095), transparent 26%),
      linear-gradient(145deg, rgb(var(--active-2-rgb) / 0.035), transparent 45%);
    transition: background 500ms ease;
  }

  .sector-display::before,
  .sector-display::after {
    position: absolute;
    content: "";
    pointer-events: none;
  }

  .sector-display::before {
    inset: 0;
    opacity: 0.18;
    background-image:
      linear-gradient(rgb(var(--active-rgb) / 0.12) 1px, transparent 1px),
      linear-gradient(90deg, rgb(var(--active-rgb) / 0.12) 1px, transparent 1px);
    background-size: 3rem 3rem;
    mask-image: radial-gradient(circle at 50% 36%, black, transparent 60%);
  }

  .sector-display::after {
    top: 1.5rem;
    right: 1.5rem;
    width: 5rem;
    height: 5rem;
    border-top: 1px solid var(--line-strong);
    border-right: 1px solid var(--line-strong);
  }

  .sector-display__visual {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 28rem;
  }

  .sector-display__halo,
  .sector-display__orbit,
  .sector-display__glyph {
    position: absolute;
    border-radius: 50%;
  }

  .sector-display__halo {
    width: min(26rem, 62%);
    aspect-ratio: 1;
    background: radial-gradient(circle, rgb(var(--active-rgb) / 0.2), rgb(var(--active-rgb) / 0.035) 30%, transparent 65%);
    filter: blur(0.3rem);
    animation: sector-halo 3.4s ease-in-out infinite alternate;
  }

  .sector-display__orbit {
    border: 1px solid rgb(var(--active-rgb) / 0.38);
  }

  .sector-display__orbit::before {
    position: absolute;
    top: 50%;
    left: -0.28rem;
    width: 0.52rem;
    aspect-ratio: 1;
    content: "";
    border-radius: 50%;
    background: var(--active);
    box-shadow: 0 0 15px var(--active);
  }

  .sector-display__orbit--a {
    width: min(24rem, 58%);
    height: min(10rem, 29%);
    transform: rotate(-18deg);
    animation: sector-orbit-a 12s linear infinite;
  }

  .sector-display__orbit--b {
    width: min(20rem, 48%);
    height: min(15rem, 40%);
    border-color: rgb(var(--active-2-rgb) / 0.34);
    transform: rotate(62deg);
    animation: sector-orbit-b 17s linear infinite reverse;
  }

  .sector-display__orbit--b::before {
    background: var(--active-2);
    box-shadow: 0 0 15px var(--active-2);
  }

  .sector-display__glyph {
    display: grid;
    place-items: center;
    width: min(10rem, 24%);
    aspect-ratio: 1;
    color: #071007;
    border: 1px solid rgb(255 255 255 / 0.48);
    background:
      radial-gradient(circle at 36% 28%, rgb(255 255 255 / 0.78), transparent 4%),
      radial-gradient(circle at 38% 31%, color-mix(in srgb, var(--active) 75%, white), var(--active) 38%, #07100a 100%);
    box-shadow: inset -1rem -1rem 2.2rem rgb(0 0 0 / 0.62), 0 0 4rem rgb(var(--active-rgb) / 0.29);
    font-family: var(--display);
    font-size: clamp(2.5rem, 5vw, 5rem);
    font-weight: 800;
    transition: color 350ms ease, background 500ms ease, box-shadow 500ms ease;
  }

  .sector-display__scan {
    position: absolute;
    top: -20%;
    left: 0;
    width: 100%;
    height: 18%;
    background: linear-gradient(transparent, rgb(var(--active-rgb) / 0.07), transparent);
    animation: sector-scan 5.4s linear infinite;
  }

  .sector-display__copy {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.9rem 2rem;
    padding: 2rem 2.2rem 2.2rem;
    border-top: 1px solid var(--line);
    background: rgb(var(--page-rgb) / 0.3);
    backdrop-filter: blur(12px);
  }

  .sector-display__code {
    grid-column: 1 / -1;
    color: var(--active);
    font-family: ui-monospace, monospace;
    font-size: 0.58rem;
    font-weight: 800;
    letter-spacing: 0.18em;
  }

  .sector-display h3 {
    font-family: var(--display);
    font-size: clamp(2.6rem, 5vw, 5rem);
    line-height: 0.9;
    letter-spacing: -0.06em;
  }

  #sector-description {
    grid-column: 1;
    max-width: 50ch;
    color: var(--muted);
    font-size: 0.9rem;
    line-height: 1.75;
  }

  .sector-display__stats {
    display: flex;
    grid-row: 2 / span 2;
    grid-column: 2;
    gap: 2rem;
    align-items: end;
  }

  .sector-display__stats span {
    display: grid;
    gap: 0.35rem;
  }

  .sector-display__stats small {
    color: var(--faint);
    font-family: ui-monospace, monospace;
    font-size: 0.5rem;
    letter-spacing: 0.12em;
  }

  .sector-display__stats b {
    font-family: var(--display);
    font-size: 1.25rem;
    letter-spacing: -0.02em;
  }

  .sector-display__enter {
    display: inline-flex;
    grid-column: 1 / -1;
    gap: 0.8rem;
    align-items: center;
    justify-self: start;
    margin-top: 0.65rem;
    padding: 0.75rem 0;
    color: var(--ink);
    border-bottom: 1px solid var(--active);
    background: transparent;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    cursor: pointer;
  }

  .sector-display__enter i {
    color: var(--active);
    font-size: 1.15rem;
    font-style: normal;
    transition: transform 160ms ease;
  }

  .sector-display__enter:hover i {
    transform: translate(0.3rem, 0.3rem);
  }

  .projects {
    width: 100%;
    max-width: none;
    padding-right: max(var(--gutter), calc((100vw - var(--max)) / 2 + var(--gutter)));
    padding-left: max(var(--gutter), calc((100vw - var(--max)) / 2 + var(--gutter)));
    overflow: hidden;
    border-top: 1px solid var(--line);
  }

  .projects__backdrop {
    position: absolute;
    z-index: -1;
    top: 3.5rem;
    left: -0.04em;
    color: transparent;
    -webkit-text-stroke: 1px rgb(255 255 255 / 0.035);
    font-family: var(--display);
    font-size: clamp(7rem, 19vw, 20rem);
    font-weight: 800;
    line-height: 0.8;
    letter-spacing: -0.08em;
    white-space: nowrap;
    pointer-events: none;
  }

  .project-group + .project-group {
    margin-top: clamp(5rem, 9vw, 9rem);
  }

  .project-group__heading {
    display: flex;
    gap: 1.2rem;
    align-items: center;
    margin-bottom: 1.25rem;
    color: var(--faint);
    font-family: ui-monospace, monospace;
    font-size: 0.58rem;
    font-weight: 700;
    letter-spacing: 0.18em;
  }

  .project-group__heading i {
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, var(--line-strong), transparent);
  }

  .project-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 1rem;
  }

  .project-card {
    --world: var(--active);
    --world-rgb: var(--active-rgb);
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 28rem;
    overflow: hidden;
    border: 1px solid var(--line);
    background: color-mix(in srgb, var(--world) 2%, var(--panel));
    box-shadow: 0 0 0 rgb(0 0 0 / 0);
    isolation: isolate;
    transform: perspective(1000px) rotateX(var(--tilt-x, 0deg)) rotateY(var(--tilt-y, 0deg)) translateY(var(--lift, 0));
    transform-style: preserve-3d;
    transition: border-color 200ms ease, box-shadow 200ms ease, transform 180ms ease;
  }

  .project-card[data-world="arcade"] { --world: #d2ff38; --world-rgb: 210 255 56; }
  .project-card[data-world="care"] { --world: #ffb347; --world-rgb: 255 179 71; }
  .project-card[data-world="cosmos"] { --world: #65d5ff; --world-rgb: 101 213 255; }
  .project-card[data-world="protocol"] { --world: #48eca9; --world-rgb: 72 236 169; }
  .project-card[data-world="chain"] { --world: #e6ad54; --world-rgb: 230 173 84; }

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

  .project-card:hover,
  .project-card:focus-within {
    --lift: -8px;
    border-color: color-mix(in srgb, var(--world) 75%, var(--line));
    box-shadow: 0 30px 70px rgb(0 0 0 / 0.34), 0 0 45px rgb(var(--world-rgb) / 0.07);
  }

  .project-grid--featured .project-card:nth-child(6n + 1),
  .project-grid--featured .project-card:nth-child(6n + 4) {
    grid-column: span 7;
  }

  .project-grid--featured .project-card:nth-child(6n + 2),
  .project-grid--featured .project-card:nth-child(6n + 3) {
    grid-column: span 5;
  }

  .project-grid--featured .project-card:nth-child(6n + 5),
  .project-grid--featured .project-card:nth-child(6n + 6) {
    grid-column: span 6;
  }

  .project-grid--featured[data-count="1"] .project-card {
    grid-column: 1 / -1;
  }

  .project-grid--featured .project-card {
    min-height: clamp(33rem, 45vw, 43rem);
  }

  .project-grid--archive .project-card {
    grid-column: span 4;
  }

  .project-card::before {
    position: absolute;
    z-index: 5;
    top: 0;
    bottom: 0;
    left: -40%;
    width: 28%;
    content: "";
    background: linear-gradient(90deg, transparent, rgb(255 255 255 / 0.08), transparent);
    filter: blur(3px);
    transform: skewX(-18deg);
    transition: left 750ms cubic-bezier(0.2, 0.8, 0.2, 1);
    pointer-events: none;
  }

  .project-card:hover::before {
    left: 120%;
  }

  .project-card::after {
    position: absolute;
    z-index: 3;
    inset: 0;
    content: "";
    background: radial-gradient(circle at var(--shine-x, 50%) var(--shine-y, 50%), rgb(var(--world-rgb) / 0.11), transparent 30%);
    opacity: 0;
    transition: opacity 180ms ease;
    pointer-events: none;
  }

  .project-card:hover::after {
    opacity: 1;
  }

  .project-card__media {
    position: relative;
    flex: 1 1 19rem;
    min-height: 18rem;
    overflow: hidden;
    border-bottom: 1px solid var(--line);
    background:
      radial-gradient(circle at 68% 31%, rgb(var(--world-rgb) / 0.31), transparent 20%),
      linear-gradient(135deg, rgb(var(--world-rgb) / 0.1), #030508 62%);
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 1.2rem), calc(100% - 1.2rem) 100%, 0 100%);
  }

  .project-grid--archive .project-card__media {
    flex-basis: 14rem;
    min-height: 14rem;
  }

  .project-card__media::before {
    position: absolute;
    z-index: 1;
    inset: 0;
    content: "";
    background:
      linear-gradient(180deg, transparent 42%, rgb(2 4 7 / 0.82)),
      repeating-linear-gradient(90deg, transparent 0 47px, rgb(255 255 255 / 0.034) 48px),
      repeating-linear-gradient(0deg, transparent 0 47px, rgb(255 255 255 / 0.034) 48px);
    pointer-events: none;
  }

  .project-card__media::after {
    position: absolute;
    z-index: 1;
    top: -35%;
    right: 0;
    left: 0;
    height: 28%;
    content: "";
    background: linear-gradient(transparent, rgb(var(--world-rgb) / 0.13), transparent);
    mix-blend-mode: screen;
    animation: card-scan 5.7s linear infinite;
  }

  .project-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(0.68) contrast(1.14) brightness(0.76);
    transform: scale(1.01);
    transition: filter 480ms ease, transform 900ms cubic-bezier(0.16, 1, 0.3, 1);
  }

  .project-card:hover .project-card__media img {
    filter: saturate(1.08) contrast(1.08) brightness(0.92);
    transform: scale(1.055);
  }

  .project-card__media-glitch {
    position: absolute;
    z-index: 2;
    inset: 0;
    opacity: 0;
    background: linear-gradient(90deg, rgb(255 0 128 / 0.13), transparent 38%, rgb(0 220 255 / 0.12));
    mix-blend-mode: screen;
    pointer-events: none;
  }

  .project-card:hover .project-card__media-glitch {
    animation: card-glitch 650ms steps(2, end);
  }

  .project-card__sigil {
    position: absolute;
    top: 50%;
    left: 50%;
    display: grid;
    place-items: center;
    width: 8.5rem;
    aspect-ratio: 1;
    color: var(--world);
    border: 1px solid rgb(var(--world-rgb) / 0.58);
    border-radius: 50%;
    font-family: var(--display);
    font-size: 2.8rem;
    font-weight: 800;
    letter-spacing: -0.08em;
    transform: translate(-50%, -50%);
  }

  .project-card__sigil::before,
  .project-card__sigil::after {
    position: absolute;
    content: "";
    border-radius: inherit;
  }

  .project-card__sigil::before {
    inset: -1.8rem;
    border: 1px dashed rgb(var(--world-rgb) / 0.34);
    animation: spin 21s linear infinite;
  }

  .project-card__sigil::after {
    inset: 0.9rem;
    border: 1px solid rgb(var(--world-rgb) / 0.18);
    box-shadow: 0 0 45px rgb(var(--world-rgb) / 0.13);
  }

  .project-card__number {
    position: absolute;
    z-index: 2;
    right: 1rem;
    bottom: -0.18em;
    color: transparent;
    -webkit-text-stroke: 1px rgb(255 255 255 / 0.18);
    font-family: var(--display);
    font-size: clamp(4rem, 8vw, 8rem);
    font-weight: 800;
    line-height: 0.75;
    letter-spacing: -0.08em;
  }

  .project-card__code,
  .project-card__media .status {
    position: absolute;
    z-index: 4;
    top: 1rem;
    font-family: ui-monospace, monospace;
    font-size: 0.56rem;
    font-weight: 800;
    letter-spacing: 0.13em;
  }

  .project-card__code {
    left: 1rem;
    color: rgb(255 255 255 / 0.67);
  }

  .project-card__media .status {
    right: 1rem;
    display: inline-flex;
    gap: 0.45rem;
    align-items: center;
    padding: 0.45rem 0.6rem;
    color: #eef7f0;
    border: 1px solid rgb(255 255 255 / 0.2);
    background: rgb(2 5 7 / 0.67);
    backdrop-filter: blur(8px);
  }

  .status::before {
    width: 0.38rem;
    aspect-ratio: 1;
    content: "";
    border-radius: 50%;
    background: var(--world);
    box-shadow: 0 0 10px var(--world);
  }

  .project-card__body {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    padding: 1.55rem;
    background: linear-gradient(135deg, rgb(var(--world-rgb) / 0.025), transparent);
    transform: translateZ(18px);
  }

  .project-card__world {
    margin-bottom: 0.65rem;
    color: var(--world);
    font-family: ui-monospace, monospace;
    font-size: 0.56rem;
    font-weight: 800;
    letter-spacing: 0.17em;
    text-transform: uppercase;
  }

  .project-card h3 {
    margin: 0;
    font-family: var(--display);
    font-size: clamp(1.65rem, 3vw, 3rem);
    line-height: 0.92;
    letter-spacing: -0.05em;
  }

  .project-grid--archive .project-card h3 {
    font-size: clamp(1.45rem, 2.1vw, 2rem);
  }

  .project-card__description {
    grid-column: 1 / -1;
    max-width: 55ch;
    color: var(--muted);
    font-size: 0.83rem;
    line-height: 1.72;
  }

  .project-card__tags {
    display: flex;
    grid-column: 1 / -1;
    flex-wrap: wrap;
    gap: 0.4rem;
  }

  .project-card__tags span {
    padding: 0.35rem 0.48rem;
    color: var(--faint);
    border: 1px solid var(--line);
    font-family: ui-monospace, monospace;
    font-size: 0.51rem;
    letter-spacing: 0.07em;
  }

  .project-card__arrow {
    display: grid;
    place-items: center;
    width: 2.75rem;
    aspect-ratio: 1;
    color: var(--ink);
    border: 1px solid var(--line-strong);
    border-radius: 50%;
    transition: color 180ms ease, border-color 180ms ease, transform 180ms ease, background 180ms ease;
  }

  .project-card:hover .project-card__arrow,
  .project-card:focus-within .project-card__arrow {
    color: #071007;
    border-color: var(--world);
    background: var(--world);
    transform: rotate(45deg);
  }

  .project-card__link {
    position: absolute;
    z-index: 8;
    inset: 0;
  }

  .manifesto {
    padding-top: clamp(6rem, 12vw, 12rem);
  }

  .manifesto__coordinates {
    display: flex;
    gap: 2rem;
    justify-content: flex-end;
    margin-bottom: 1rem;
    color: var(--faint);
    font-family: ui-monospace, monospace;
    font-size: 0.53rem;
    letter-spacing: 0.14em;
  }

  .manifesto__panel {
    position: relative;
    display: grid;
    grid-template-columns: minmax(22rem, 0.9fr) minmax(0, 1.1fr);
    min-height: 41rem;
    overflow: hidden;
    border: 1px solid var(--line-strong);
    background: rgb(var(--panel-rgb) / 0.74);
    box-shadow: var(--shadow);
    backdrop-filter: blur(18px);
  }

  .manifesto__void {
    position: relative;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-right: 1px solid var(--line);
    background:
      radial-gradient(circle at 50% 50%, rgb(var(--active-rgb) / 0.12), transparent 35%),
      repeating-radial-gradient(circle at 50% 50%, transparent 0 2.9rem, rgb(var(--active-rgb) / 0.055) 3rem);
  }

  .manifesto__void::before,
  .manifesto__void::after {
    position: absolute;
    content: "";
    background: var(--line);
  }

  .manifesto__void::before { top: 50%; right: 0; left: 0; height: 1px; }
  .manifesto__void::after { top: 0; bottom: 0; left: 50%; width: 1px; }

  .manifesto__planet {
    position: relative;
    z-index: 2;
    width: min(18rem, 44%);
    aspect-ratio: 1;
    border: 1px solid rgb(255 255 255 / 0.4);
    border-radius: 50%;
    background:
      radial-gradient(circle at 34% 28%, rgb(255 255 255 / 0.9) 0 1.5%, transparent 2%),
      radial-gradient(circle at 36% 31%, color-mix(in srgb, var(--active) 75%, white), var(--active) 16%, #07100a 68%);
    box-shadow:
      inset -2.5rem -2rem 4rem rgb(0 0 0 / 0.75),
      0 0 6rem rgb(var(--active-rgb) / 0.24);
  }

  .manifesto__planet::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 170%;
    height: 38%;
    content: "";
    border: 1px solid rgb(var(--active-rgb) / 0.54);
    border-radius: 50%;
    transform: translate(-50%, -50%) rotate(-17deg);
  }

  .manifesto__signal-line {
    position: absolute;
    z-index: 1;
    top: 49%;
    left: 50%;
    width: 45%;
    height: 1px;
    background: linear-gradient(90deg, var(--active), transparent);
    transform: rotate(-34deg);
    transform-origin: left;
  }

  .manifesto__void b {
    position: absolute;
    z-index: 3;
    right: 1.5rem;
    bottom: 1.5rem;
    color: transparent;
    -webkit-text-stroke: 1px rgb(255 255 255 / 0.22);
    font-family: var(--display);
    font-size: clamp(3rem, 6vw, 6rem);
    line-height: 0.74;
    letter-spacing: -0.07em;
    text-align: right;
  }

  .manifesto__copy {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(2.5rem, 6vw, 6rem);
    background:
      linear-gradient(135deg, rgb(var(--active-2-rgb) / 0.04), transparent 45%);
  }

  .manifesto__copy h2 {
    margin-bottom: 2rem;
  }

  .manifesto__copy > p {
    max-width: 42rem;
  }

  .manifesto__link {
    display: inline-flex;
    gap: 1rem;
    align-items: center;
    align-self: flex-start;
    margin-top: 2.2rem;
    padding: 0.85rem 0;
    border-bottom: 1px solid var(--active);
    font-size: 0.73rem;
    font-weight: 800;
    letter-spacing: 0.08em;
  }

  .manifesto__link i {
    color: var(--active);
    font-size: 1.25rem;
    font-style: normal;
    transition: transform 180ms ease;
  }

  .manifesto__link:hover i {
    transform: translate(0.3rem, -0.3rem);
  }

  .footer {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: 2rem;
    align-items: end;
    width: min(100%, var(--max));
    margin-inline: auto;
    padding: 3rem var(--gutter) max(3rem, env(safe-area-inset-bottom));
    color: var(--faint);
    border-top: 1px solid var(--line);
    font-size: 0.66rem;
    letter-spacing: 0.07em;
  }

  .footer > div:first-child {
    display: flex;
    gap: 0.85rem;
    align-items: center;
    color: var(--muted);
    line-height: 1.7;
  }

  .brand__mark--small {
    width: 2.35rem;
    flex: 0 0 auto;
  }

  .footer__links {
    display: flex;
    gap: 1.2rem;
  }

  .footer__links a:hover {
    color: var(--active);
  }

  .footer__copyright {
    grid-column: 1 / -1;
    justify-self: end;
    margin-top: 1.25rem;
  }

  .noscript-list {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid var(--line);
  }

  .noscript-list p {
    flex-basis: 100%;
  }

  .noscript-list a {
    color: var(--active);
    text-decoration: underline;
  }
}

@layer utilities {
  .reveal {
    opacity: 0;
    transform: translateY(28px);
    transition:
      opacity 750ms ease,
      transform 750ms cubic-bezier(0.16, 1, 0.3, 1);
  }

  .reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
  }

  @keyframes spin {
    to { transform: rotate(360deg); }
  }

  @keyframes signal-pulse {
    0% { box-shadow: 0 0 0 0 rgb(var(--active-rgb) / 0.55); }
    75%, 100% { box-shadow: 0 0 0 0.7rem transparent; }
  }

  @keyframes nebula-breathe {
    from { transform: rotate(-8deg) scale(1.04) translate3d(-1%, 0, 0); }
    to { transform: rotate(-4deg) scale(1.13) translate3d(1.5%, -1%, 0); }
  }

  @keyframes boot-reticle {
    from { opacity: 0; transform: scale(0.35) rotate(-90deg); }
    to { opacity: 1; transform: scale(1) rotate(0); }
  }

  @keyframes boot-word {
    to { clip-path: inset(0 0 0 0); }
  }

  @keyframes boot-load {
    0% { transform: scaleX(0); }
    45% { transform: scaleX(0.24); }
    72% { transform: scaleX(0.68); }
    100% { transform: scaleX(1); }
  }

  @keyframes boot-flash {
    0% { opacity: 0; transform: translate(-50%, -50%) scaleX(0); }
    45% { opacity: 1; }
    100% { opacity: 0; transform: translate(-50%, -50%) scaleX(1); }
  }

  @keyframes portal-shock {
    0% { opacity: 0.5; transform: scale(0.85); }
    75%, 100% { opacity: 0; transform: scale(2.1); }
  }

  @keyframes portal-breathe {
    50% { transform: scale(1.055); box-shadow: 0 0 55px rgb(var(--active-rgb) / 0.22), inset 0 0 45px rgb(var(--active-rgb) / 0.17); }
  }

  @keyframes warp-core {
    0%, 100% { transform: scale(1); filter: brightness(1); }
    38% { transform: scale(0.74); filter: brightness(1.8); }
    62% { transform: scale(1.16); filter: brightness(2.3); }
  }

  @keyframes warp-copy {
    0%, 100% { transform: translateX(0); opacity: 1; }
    45% { transform: translateX(-2rem); opacity: 0.48; }
  }

  @keyframes scroll-line {
    from { transform: translateY(-110%); }
    to { transform: translateY(205%); }
  }

  @keyframes equalize {
    to { transform: scaleY(0.22); opacity: 0.4; }
  }

  @keyframes button-flare {
    from { left: -30%; }
    to { left: 125%; }
  }

  @keyframes sector-halo {
    to { transform: scale(1.1); opacity: 0.65; }
  }

  @keyframes sector-orbit-a {
    to { transform: rotate(342deg); }
  }

  @keyframes sector-orbit-b {
    to { transform: rotate(422deg); }
  }

  @keyframes sector-scan {
    from { transform: translateY(-100%); }
    to { transform: translateY(680%); }
  }

  @keyframes card-scan {
    from { transform: translateY(-100%); }
    to { transform: translateY(650%); }
  }

  @keyframes card-glitch {
    0%, 100% { opacity: 0; transform: translateX(0); clip-path: inset(0); }
    18% { opacity: 1; transform: translateX(-7px); clip-path: inset(12% 0 58% 0); }
    36% { opacity: 0.7; transform: translateX(8px); clip-path: inset(62% 0 8% 0); }
    60% { opacity: 0.5; transform: translateX(-3px); clip-path: inset(42% 0 32% 0); }
  }

  @media (max-width: 72rem) {
    .topbar {
      grid-template-columns: 1fr auto;
    }

    .topbar__system {
      display: none;
    }

    .hero__copy {
      width: 78%;
    }

    .hero__portal {
      right: -12rem;
      opacity: 0.72;
    }

    .hero__sector-rail {
      display: none;
    }

    .sector-console {
      grid-template-columns: 18rem minmax(0, 1fr);
    }

    .world-chip {
      grid-template-columns: 1.8rem 2.6rem 1fr;
      padding-inline: 1rem;
    }

    .world-chip > i {
      display: none;
    }

    .sector-display__copy {
      grid-template-columns: 1fr;
    }

    .sector-display__stats {
      grid-row: auto;
      grid-column: 1;
    }

    .project-grid--archive .project-card {
      grid-column: span 6;
    }

    .manifesto__panel {
      grid-template-columns: 0.85fr 1.15fr;
    }
  }

  @media (max-width: 52rem) {
    html {
      scroll-padding-top: 4.8rem;
    }

    .topbar {
      height: calc(4.45rem + env(safe-area-inset-top));
      padding-top: env(safe-area-inset-top);
    }

    .brand__name {
      font-size: 0.64rem;
      letter-spacing: 0.08em;
    }

    .brand__mark {
      width: 1.85rem;
    }

    .language-button {
      min-width: 2.75rem;
      padding-inline: 0.58rem;
    }

    .scroll-progress {
      display: none;
    }

    .hero {
      display: flex;
      flex-direction: column;
      min-height: 100svh;
      padding-top: calc(5.8rem + env(safe-area-inset-top));
      padding-bottom: 1.45rem;
    }

    .hero__frame {
      inset: calc(5.6rem + env(safe-area-inset-top)) var(--gutter) 1.45rem;
    }

    .hero__eyebrow {
      padding-inline: 0;
    }

    .hero__coordinate {
      display: none;
    }

    .hero__copy {
      display: flex;
      flex: 1;
      flex-direction: column;
      justify-content: center;
      width: 100%;
      padding: 3rem 0 2.2rem;
    }

    .hero__kicker {
      margin-bottom: 1rem;
      font-size: 0.56rem;
    }

    .hero__title {
      font-size: clamp(4.6rem, 23vw, 7rem);
      line-height: 0.7;
    }

    .hero__title-line--outline {
      transform: translateX(0);
    }

    .hero__title b {
      top: 40%;
      right: -1.7rem;
    }

    .hero__lede {
      max-width: 26rem;
      margin-top: 2rem;
      font-size: 0.95rem;
      line-height: 1.7;
    }

    .hero__actions {
      display: grid;
      grid-template-columns: 1fr;
      width: 100%;
      margin-top: 1.75rem;
    }

    .hero__portal {
      z-index: -1;
      top: 39%;
      right: -11rem;
      width: 30rem;
      opacity: 0.5;
    }

    .portal__label {
      display: none;
    }

    .hero__telemetry {
      align-self: stretch;
      justify-content: space-between;
      gap: 0.4rem;
      margin-left: 0;
      padding-inline: 0;
    }

    .hero__telemetry div:not(.telemetry-wave) {
      grid-template-columns: 1fr;
      gap: 0.28rem;
    }

    .hero__telemetry small {
      display: none;
    }

    .hero__telemetry span {
      font-size: 0.54rem;
    }

    .telemetry-wave {
      display: none;
    }

    .hero__scroll {
      display: none;
    }

    .section {
      padding-block: 6rem;
    }

    .section-heading {
      grid-template-columns: 1fr;
      gap: 1.3rem;
    }

    .section-heading h2,
    .manifesto h2 {
      font-size: clamp(3rem, 14vw, 4.7rem);
    }

    .section-heading > p {
      max-width: 31rem;
    }

    .sector-console {
      display: block;
      min-height: auto;
      overflow: visible;
      border: 0;
      background: transparent;
      box-shadow: none;
      backdrop-filter: none;
    }

    .sector-console::before {
      display: none;
    }

    .world-selector {
      display: flex;
      gap: 0.6rem;
      padding-bottom: 1rem;
      overflow-x: auto;
      border-right: 0;
      scroll-snap-type: x mandatory;
      scrollbar-width: none;
    }

    .world-selector::-webkit-scrollbar {
      display: none;
    }

    .world-chip {
      grid-template-columns: 1.8rem 2.5rem 1fr;
      flex: 0 0 min(78vw, 18rem);
      min-height: 5.5rem;
      padding: 0.9rem;
      border: 1px solid var(--line);
      scroll-snap-align: start;
    }

    .world-chip:nth-child(6) {
      border-bottom: 1px solid var(--line);
    }

    .world-chip:hover,
    .world-chip.is-active {
      padding-left: 1.15rem;
    }

    .world-chip__glyph {
      width: 2.45rem;
    }

    .sector-display {
      min-height: 38rem;
      margin-top: 0.8rem;
      border: 1px solid var(--line-strong);
    }

    .sector-display__visual {
      min-height: 23rem;
    }

    .sector-display__halo {
      width: 68%;
    }

    .sector-display__orbit--a {
      width: 71%;
      height: 28%;
    }

    .sector-display__orbit--b {
      width: 58%;
      height: 45%;
    }

    .sector-display__glyph {
      width: 32%;
    }

    .sector-display__copy {
      padding: 1.4rem;
    }

    .sector-display h3 {
      font-size: clamp(2.6rem, 13vw, 4.2rem);
    }

    .projects {
      padding-right: var(--gutter);
      padding-left: var(--gutter);
    }

    .project-grid {
      grid-template-columns: 1fr;
    }

    .project-grid--featured .project-card:nth-child(n),
    .project-grid--archive .project-card {
      grid-column: 1;
    }

    .project-grid--featured .project-card {
      min-height: 31rem;
    }

    .project-grid--archive .project-card {
      min-height: 27rem;
    }

    .project-card__media {
      flex-basis: 16rem;
      min-height: 16rem;
    }

    .project-grid--archive .project-card__media {
      flex-basis: 14rem;
      min-height: 14rem;
    }

    .project-card__body {
      padding: 1.2rem;
    }

    .project-card h3,
    .project-grid--archive .project-card h3 {
      font-size: 1.8rem;
    }

    .manifesto__coordinates {
      justify-content: flex-start;
      overflow: hidden;
      white-space: nowrap;
    }

    .manifesto__coordinates span:not(:first-child) {
      display: none;
    }

    .manifesto__panel {
      grid-template-columns: 1fr;
      min-height: auto;
    }

    .manifesto__void {
      min-height: 25rem;
      border-right: 0;
      border-bottom: 1px solid var(--line);
    }

    .manifesto__copy {
      padding: 2.2rem 1.4rem 2.8rem;
    }

    .footer {
      grid-template-columns: 1fr;
      align-items: start;
    }

    .footer__links {
      flex-wrap: wrap;
    }

    .footer__copyright {
      grid-column: 1;
      justify-self: start;
      margin-top: 0;
    }

    .footer__note {
      line-height: 1.7;
    }
  }

  @media (max-width: 25rem) {
    .brand__name {
      display: none;
    }

    .hero__title {
      font-size: clamp(4.1rem, 24vw, 5.4rem);
    }

    .hero__lede {
      font-size: 0.9rem;
    }

    .sector-display__stats {
      gap: 1.3rem;
    }
  }

  @media (hover: none) {
    .project-card:hover {
      --lift: 0;
      transform: none;
    }

    .cursor-aura {
      display: none;
    }
  }

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

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

    .reveal {
      opacity: 1;
      transform: none;
    }

    .boot {
      display: none;
    }

    .cosmic-scene__nebula {
      transform: none;
    }

    .project-card {
      transform: none;
    }
  }

  @media (forced-colors: active) {
    .project-card,
    .world-chip,
    .button,
    .sector-console,
    .manifesto__panel {
      border: 1px solid CanvasText;
    }

    .project-card__link {
      forced-color-adjust: none;
    }
  }
}
