:root {
  --dark:        #07090f;
  --dark-2:      #0b0e19;
  --dark-3:      #10131f;
  --light:       #f1f2f6;
  --light-2:     #e9eaef;

  --ink:         #f0f2ff;
  --ink-soft:    rgba(240,242,255,.62);
  --ink-muted:   rgba(240,242,255,.34);
  --rule-d:      rgba(255,255,255,.085);
  --rule-d2:     rgba(255,255,255,.15);
  --surf-d:      rgba(255,255,255,.042);
  --surf-d2:     rgba(255,255,255,.078);

  --slate:       #0a0c18;
  --slate-soft:  rgba(10,12,24,.56);
  --slate-muted: rgba(10,12,24,.34);
  --rule-l:      rgba(0,0,0,.078);
  --rule-l2:     rgba(0,0,0,.13);
  --surf-l:      rgba(0,0,0,.032);
  --surf-l2:     rgba(0,0,0,.06);

  --orange: #ff7a1a; --pink: #ff4f8b; --violet: #6852ff; --blue: #24c3ff;
  --grad: linear-gradient(118deg,var(--orange) 0%,var(--pink) 30%,var(--violet) 64%,var(--blue) 100%);

  --f-body:    "Inter", sans-serif;
  --f-display: "Space Grotesk", sans-serif;
  --max:       1180px;
  --sp:        104px;
}


*,*::before,*::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body { margin: 0; font-family: var(--f-body); background: var(--dark); }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
p { margin: 0; }
h1,h2,h3 { margin: 0; }
a:focus-visible { outline: 2px solid rgba(36,195,255,.5); outline-offset: 3px; border-radius: 3px; }


.zone-dark        { background: var(--dark);  color: var(--ink);   position: relative; z-index: 1; }
.zone-light       { background: var(--light); color: var(--slate); position: relative; z-index: 1; }
.zone-dark-lower  { background: var(--dark);  color: var(--ink);   position: relative; z-index: 1; }


.zone-dark:not(.zone-dark-lower)::after {
  content: ""; position: absolute; inset: 0;
  pointer-events: none; z-index: 0;
  background-image:
    linear-gradient(var(--rule-d) 1px, transparent 1px),
    linear-gradient(90deg, var(--rule-d) 1px, transparent 1px);
  background-size: 88px 88px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.2) 0%, transparent 54%);
}

.zone-inner {
  position: relative; z-index: 1;
  width: min(calc(100% - 48px), var(--max));
  margin-inline: auto;
  display: grid; gap: var(--sp);
  padding-top: 50px;
}
.zone-dark:not(.zone-dark-lower) .zone-inner { padding-top: 0; }


.site-header {
  position: fixed;
  top: max(14px, env(safe-area-inset-top));
  left: 50%;
  transform: translateX(-50%);
  z-index: 10000;
  width: min(calc(100% - 48px), var(--max));
  margin: 0;
  display: grid; grid-template-columns: auto 1fr auto;
  align-items: center; gap: 24px;
  padding: 9px 12px 9px 16px;
  --header-angle: 0deg;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 999px;
  background: rgba(7,9,15,.88);
  backdrop-filter: blur(40px) saturate(1.2);
  -webkit-backdrop-filter: blur(40px) saturate(1.2);
}
.site-header::before {
  content: "";
  position: absolute; inset: -1px;
  border-radius: inherit;
  padding: 1px;
  pointer-events: none;
  background:
    conic-gradient(from var(--header-angle),
      rgba(255,122,26,.10),
      rgba(255,79,139,.46),
      rgba(104,82,255,.58),
      rgba(36,195,255,.46),
      rgba(255,122,26,.10));
  opacity: .38;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
}
.site-header::after {
  content: "";
  position: absolute; inset: 1px;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255,255,255,.07), transparent 48%);
  opacity: .42;
}

.brand {
  display: inline-flex; align-items: center; gap: 9px;
  font-family: var(--f-display); font-size: .97rem; font-weight: 700;
  letter-spacing: -.04em; white-space: nowrap; color: var(--ink);
}
.brand img { width: 30px; height: 30px; }

.nav {
  display: flex; justify-content: center; gap: 4px;
  font-size: .84rem; font-weight: 600;
}
.nav a {
  padding: 5px 11px; border-radius: 999px;
  color: var(--ink-muted);
  transition: color 120ms ease, background 120ms ease;
}
.nav a:hover { color: var(--ink); background: var(--surf-d); }

.header-cta {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex; align-items: center; min-height: 34px;
  padding: 0 15px; border-radius: 999px;
  background: rgba(240,242,255,.96); color: var(--dark);
  font-size: .82rem; font-weight: 800;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 0 0 1px rgba(255,255,255,.08) inset, 0 4px 18px rgba(0,0,0,.16);
  transition: color 150ms ease, background 150ms ease, border-color 150ms ease, box-shadow 190ms ease;
}
.header-cta::before {
  content: "";
  position: absolute; inset: -40% -55%;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(105deg,
    transparent 25%,
    rgba(255,255,255,.55) 43%,
    rgba(36,195,255,.24) 50%,
    transparent 66%);
  opacity: 0;
  transform: translateX(-34%) skewX(-12deg);
  transition: opacity 140ms ease, transform 620ms cubic-bezier(.16,1,.3,1);
}
.header-cta::after {
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  padding: 1px;
  pointer-events: none;
  background: linear-gradient(112deg, rgba(255,255,255,.55), rgba(36,195,255,.62), rgba(104,82,255,.52), rgba(255,122,26,.44));
  opacity: .16;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  transition: opacity 160ms ease;
}
.header-cta:hover {
  color: var(--dark);
  background: rgba(250,251,255,.99);
  border-color: rgba(255,255,255,.26);
  box-shadow: 0 0 0 1px rgba(255,255,255,.18) inset, 0 0 0 4px rgba(36,195,255,.08), 0 0 28px rgba(104,82,255,.12);
}
.header-cta:hover::before { opacity: 1; transform: translateX(34%) skewX(-12deg); }
.header-cta:hover::after { opacity: .78; }


.hero {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 80px;
  
  overflow: visible;
}


.hero-bg {
  position: absolute; inset: 0; z-index: 0;
  
  background-image: url('assets/hero-bg.jpg');
  background-size: cover;
  background-position: center top;
    background: linear-gradient(
    90deg,
    rgba(7,9,15,0),
    rgba(255,255,255,.045) 18%,
    rgba(255,255,255,.045) 82%,
    rgba(7,9,15,0)
  );
  -webkit-mask-image: linear-gradient(
    90deg,
    transparent    0%,
    rgba(0,0,0,.5) 5%,
    #000           16%,
    #000           84%,
    rgba(0,0,0,.5) 95%,
    transparent   100%
  );
  mask-image: linear-gradient(
    90deg,
    transparent    0%,
    rgba(0,0,0,.5) 5%,
    #000           16%,
    #000           84%,
    rgba(0,0,0,.5) 95%,
    transparent   100%
  );
  display: none;
}


.hero-body {
  position: relative; z-index: 1;
  width: 100%;
  display: flex;
  justify-content: center;
  overflow: hidden;
  isolation: isolate;
  padding: 30px 0 56px;
  margin-top: -10px;

}
.hero-body::before,
.hero-body::after {
  content: "";
  position: absolute; top: 0; bottom: 0;
  z-index: 2; width: 40px; pointer-events: none;
}
.hero-body::before { left: 0; background: linear-gradient(90deg, var(--dark), transparent); }
.hero-body::after  { right: 0; background: linear-gradient(270deg, var(--dark), transparent); }

.hero-copy {
  max-width: 620px;
  text-align: center;
  padding: 0 24px;
}

.eyebrow {
  display: inline-flex; align-items: center; gap: 10px; justify-content: center;
  font-size: .67rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase;
  color: var(--ink-muted);
}
.eyebrow span { display: block; width: 24px; height: 1.5px; background: var(--grad); border-radius: 999px; }

.hero h1 {
  font-family: var(--f-display);
  font-size: clamp(2rem, 3.8vw, 3.5rem);
  font-weight: 700; line-height: 1.06; letter-spacing: -.056em;
  color: var(--ink); margin-top: 18px;
}
.s-heading {
  font-family: var(--f-display);
  font-size: clamp(1.35rem, 2vw, 2rem);
  font-weight: 700; line-height: 1.14; letter-spacing: -.042em;
}
.hero-copy > p {
  margin-top: 18px; font-size: clamp(.92rem, 1.1vw, .95rem);
  line-height: 1.05; color: var(--ink-soft);
  max-width: 480px; margin-inline: auto;
}
.hero-actions {
  display: flex; flex-wrap: wrap; gap: 9px; margin-top: 24px;
  justify-content: center;
}
.btn {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 42px; padding: 0 20px; border-radius: 999px;
  font-size: .86rem; font-weight: 800;
  border: 1px solid transparent;
  transition: color 150ms ease, background 150ms ease, border-color 150ms ease, box-shadow 190ms ease;
}
.btn::before {
  content: "";
  position: absolute; inset: -42% -55%;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(105deg,
    transparent 26%,
    rgba(255,255,255,.52) 43%,
    rgba(36,195,255,.22) 51%,
    transparent 67%);
  opacity: 0;
  transform: translateX(-34%) skewX(-12deg);
  transition: opacity 140ms ease, transform 650ms cubic-bezier(.16,1,.3,1);
}
.btn::after {
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  padding: 1px;
  pointer-events: none;
  background: linear-gradient(112deg, rgba(255,255,255,.36), rgba(36,195,255,.60), rgba(104,82,255,.56), rgba(255,122,26,.42));
  opacity: .18;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  transition: opacity 160ms ease;
}
.btn:hover::before { opacity: 1; transform: translateX(34%) skewX(-12deg); }
.btn:hover::after { opacity: .82; }
.btn-primary {
  background: rgba(240,242,255,.96); color: var(--dark);
  border-color: rgba(255,255,255,.16);
  box-shadow: 0 0 0 1px rgba(255,255,255,.08) inset, 0 4px 18px rgba(0,0,0,.16);
}
.btn-primary:hover {
  background: rgba(250,251,255,.99); color: var(--dark);
  border-color: rgba(255,255,255,.26);
}
.btn-ghost {
  border-color: var(--rule-d); color: var(--ink);
  background: rgba(255,255,255,.018);
}
.btn-ghost::before {
  background: linear-gradient(105deg,
    transparent 28%,
    rgba(36,195,255,.22) 44%,
    rgba(255,79,139,.16) 54%,
    transparent 68%);
}
.btn-ghost:hover {
  border-color: rgba(255,255,255,.16);
  background: rgba(255,255,255,.055);
}

.hero-meta {
  display: grid; grid-template-columns: repeat(3, minmax(0,1fr));
  max-width: 380px; margin: 26px auto 0;
  border: 1px solid var(--rule-d); border-radius: 12px;
  overflow: hidden; background: var(--rule-d); gap: 1px;
}
.hero-meta div { padding: 11px 13px; background: var(--surf-d); text-align: left; }
.hero-meta strong { display: block; font-family: var(--f-display); font-size: .96rem; color: var(--ink); }
.hero-meta span { display: block; margin-top: 2px; font-size: .71rem; color: var(--ink-muted); }


.hero-visual {
  position: relative; z-index: 2;
  margin-top: 48px;
  margin-bottom: -72px;
  display: flex;
  justify-content: center;
  display: none;
}
.hero-visual img {
  width: clamp(120px, 16vw, 200px);
  height: auto;
  filter: drop-shadow(0 0 48px rgba(104,82,255,.28)) drop-shadow(0 0 18px rgba(255,122,26,.18));
}


.statement {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(
      to bottom,
      rgba(7,9,15,.82) 0%,
      rgba(7,9,15,.58) 46%,
      rgba(7,9,15,.88) 100%
    ),
    url("assets/6344433_3227270.jpg");

  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 40px 0 60px;
}

.statement::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 120px;
  z-index: 1;
  pointer-events: none;

  background: linear-gradient(
    to bottom,
    #07090f 0%,
    rgba(7,9,15,.92) 24%,
    rgba(7,9,15,.54) 58%,
    rgba(7,9,15,0) 100%
  );
}

.statement-wrap {
  position: relative;
  z-index: 2;
  width: min(calc(100% - 48px), var(--max));
  margin-inline: auto;
  padding: 122px 0 84px;
}


.statement-inner {
  max-width: 700px;
  margin-inline: auto;
  text-align: center;
  position: relative; z-index: 2;
}
.statement-inner p {
  font-family: var(--f-display);
  font-size: clamp(1.05rem, 2vw, 1.9rem);
  line-height: 1.26; letter-spacing: -.036em; color: var(--ink-soft);
}


.token-orbit {
  position: absolute;
  inset: 40px 0 34px;
  z-index: 1;
  pointer-events: none;
  overflow: visible;
}


.tok {
  position: absolute;
  display: inline-flex; align-items: center; justify-content: center;
  width: 50px; height: 50px;
  border-radius: 50%;
  overflow: hidden;
}
.tok img { width: 47px; height: 47px; object-fit: contain; display: block; }


@keyframes orbit-left-a {
  0%,100% { transform: translate3d(0,0,0); }
  50%      { transform: translate3d(-3px,-7px,0); }
}
@keyframes orbit-left-b {
  0%,100% { transform: translate3d(2px,-3px,0); }
  50%      { transform: translate3d(-2px,6px,0); }
}

@keyframes orbit-right-a {
  0%,100% { transform: translate3d(3px,-2px,0); }
  50%      { transform: translate3d(-5px,5px,0); }
}
@keyframes orbit-right-b {
  0%,100% { transform: translate3d(-2px,1px,0); }
  50%      { transform: translate3d(4px,-6px,0); }
}

.tok-icp    { top: 10%; left: 4%;  animation: orbit-left-a  6.2s ease-in-out infinite 0s; }
.tok-nns    { top: 76%; right: 15%; animation: orbit-right-b 6.0s ease-in-out infinite 1.5s; }
.tok-ckbtc  { top: 61%; left: 2%;  animation: orbit-left-b  7.1s ease-in-out infinite .8s; }
.tok-ckusdt { top: 72%; left: 18%; animation: orbit-left-a  5.8s ease-in-out infinite 1.9s; } 

.tok-cketh  { top: 12%; right: 7%;  animation: orbit-right-a 6.4s ease-in-out infinite 1.2s; }
.tok-chat   { top: 34%; right: 20%; animation: orbit-right-b 7.3s ease-in-out infinite 2.1s; }
.tok-ckusdc { top: 63%; right: 5%;  animation: orbit-right-a 5.6s ease-in-out infinite .3s; }
.tok-ckeurc { top: 35%; left: 13%; animation: orbit-left-b  6.7s ease-in-out infinite .4s;}
@media (max-width: 860px) {
  .tok-ckbtc, .tok-ckeurc, .tok-chat, .tok-nns { display: none; }
}
@media (max-width: 640px) {
  .token-orbit { display: none; }
  .statement-wrap { padding: 96px 0 54px; }
}

.section-kicker {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: .65rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase;
  margin-bottom: 20px;
}
.zone-dark .section-kicker,
.zone-dark-lower .section-kicker { color: var(--ink-muted); }
.zone-light .section-kicker { color: var(--slate-muted); }
.section-kicker span { background: var(--grad); -webkit-background-clip: text; background-clip: text; color: transparent; }


.system-section { display: grid; gap: 32px; }


.wallet-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
.wallet-top .s-heading { color: var(--slate); }
.wallet-top > p {
  font-size: .95rem; line-height: 1.74; color: var(--slate-soft);
  padding-top: 6px; 
}


.data-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 1px;
  background: var(--rule-l);
}
.data-strip article {
  padding: 28px 26px;
  background: var(--light);
  position: relative; overflow: hidden;
  min-height: 180px;
  display: grid; align-content: space-between;

}
.data-strip article::before {
  content: "";
  position: absolute; left: 0; top: 0; bottom: 0; width: 2px;
  background: var(--grad);
}
.data-strip span {
  display: block; font-size: .63rem; font-weight: 800;
  letter-spacing: .13em; text-transform: uppercase; color: var(--slate-muted);
}
.data-strip strong {
  display: block; font-family: var(--f-display);
  font-size: 1.45rem; line-height: 1.06; letter-spacing: -.044em; color: var(--slate);
  margin-top: 20px;
}
.data-strip p { font-size: .85rem; line-height: 1.66; color: var(--slate-soft); margin-top: 8px; }


.neuron-section {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  grid-template-rows: auto auto;
  gap: 1px;
  background: var(--rule-l);
}

.neuron-panel { padding: clamp(28px, 4vw, 52px); background: var(--light); }
.neuron-panel .s-heading { color: var(--slate); }
.neuron-panel > p {
  margin-top: 13px; font-size: .94rem; line-height: 1.72;
  color: var(--slate-soft); max-width: 400px;
}

.neuron-specs {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 1px; margin-top: 26px;
  background: var(--rule-l); border: 1px solid var(--rule-l);
}
.neuron-spec-item { padding: 14px 16px; background: var(--light); }
.neuron-spec-item span {
  display: block; font-size: .63rem; font-weight: 800;
  letter-spacing: .13em; text-transform: uppercase; color: var(--slate-muted);
}
.neuron-spec-item strong {
  display: block; margin-top: 5px; font-family: var(--f-display);
  font-size: 1.25rem; font-weight: 700; letter-spacing: -.04em; color: var(--slate);
}

.neuron-visual {
  background: var(--light-2);
  position: relative; overflow: hidden; min-height: 300px;
  display: flex; align-items: flex-end;
}
.neuron-visual-bg {
  position: absolute; inset: 0;
  background-size: cover; background-position: center; opacity: .7;
}
.neuron-visual::after {
  content: ""; position: absolute; bottom: 0; left: 0; right: 0; height: 55%;
  background: linear-gradient(to top, rgba(233,234,239,.85) 20%, rgba(233,234,239,0) 100%);
  pointer-events: none; z-index: 1;
}
.stake-timeline { position: relative; z-index: 2; width: 100%; padding: 24px 28px; }
.stake-header { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 10px; }
.stake-header span {
  font-size: .65rem; font-weight: 800; letter-spacing: .12em;
  text-transform: uppercase; color: var(--slate-muted);
}
.stake-header strong {
  font-family: var(--f-display); font-size: 1.35rem;
  font-weight: 700; letter-spacing: -.05em; color: var(--slate);
}
.stake-track {
  position: relative; height: 4px; border-radius: 999px;
  background: var(--rule-l2); overflow: visible; margin-bottom: 5px;
}
.stake-fill {
  position: absolute; left: 0; top: 0; bottom: 0;
  width: var(--fill, 0%); border-radius: 999px; background: var(--grad);
}
.stake-marker {
  position: absolute; top: 50%; left: var(--pos, 0%);
  transform: translate(-50%, -50%);
  width: 11px; height: 11px; border-radius: 50%;
  background: #fff; border: 2px solid var(--violet);
  box-shadow: 0 0 0 3px rgba(104,82,255,.18);
}
.stake-scale {
  display: flex; justify-content: space-between;
  font-size: .67rem; color: var(--slate-muted); font-weight: 600;
}


.gov-inline {
  grid-column: 1 / -1;
  background: var(--light-2);
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 1px;
}

.gov-inline-item {
  padding: 34px 20px;
  background: var(--light);
  display: grid; align-content: start; gap: 7px;
}

.gov-inline-item > span {
  display: block; font-size: .63rem; font-weight: 800;
  letter-spacing: .13em; text-transform: uppercase; color: var(--slate-muted);
}
.gov-inline-item > strong {
  display: block; font-family: var(--f-display);
  font-size: 1rem; font-weight: 700; letter-spacing: -.03em; color: var(--slate);
}
.gov-inline-item > p {
  font-size: .84rem; line-height: 1.62; color: var(--slate-soft);
}


.download-section {
  display: grid; grid-template-columns: minmax(0,.80fr) minmax(0,1.20fr);
  gap: 21px;
}
.download-copy { background: var(--dark); }
.download-copy .s-heading { color: var(--ink); margin-top: 14px; }
.download-copy > p { margin-top: 11px; font-size: .91rem; line-height: 1.7; color: var(--ink-soft); }
.download-badges { display: flex; gap: 7px; margin-top: 18px; flex-wrap: wrap; }
.download-badges span {
  height: 24px; display: inline-flex; align-items: center; padding: 0 9px;
  border: 1px solid var(--rule-d); border-radius: 999px;
  font-size: .68rem; font-weight: 700; color: var(--ink-muted);
}
.download-grid {
  display: grid; grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 1px; background: rgba(255,255,255,.065);
}
.download-card {
  background: rgba(7,9,15,.84);
  display: flex; flex-direction: column;
  min-height: 310px;
  position: relative; overflow: hidden;
  transition: background 170ms ease;
}
.download-card::after {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: var(--grad); opacity: 0; transition: opacity 190ms ease;
}
.download-card:hover { background: rgba(7,9,15,.6); }
.download-card:hover::after { opacity: 1; }
.dl-main {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 220px;
}
.dl-icon {
  flex: 1;
  min-height: 150px;
  display: flex; align-items: center; justify-content: center;
  padding: 28px 24px 18px;
}
.dl-icon svg {
  width: 64px; height: 64px; color: var(--ink-muted);
  transition: color 240ms ease, transform 520ms cubic-bezier(.4,0,.2,1);
  transform-style: preserve-3d;
}
.download-card:hover .dl-icon svg { color: var(--ink); transform: rotateY(360deg); }
.dl-info-surface {
  width: 100%;
  padding: 20px 24px 22px;
  background: rgba(255,255,255,.042);
  border-top: 1px solid var(--rule-d);
  transition: background 150ms ease, border-color 150ms ease;
}
.download-card:hover .dl-info-surface {
  background: rgba(255,255,255,.062);
  border-color: var(--rule-d2);
}

.os-icon {
  position: relative;
  display: block;
  width: 86px;
  height: 86px;
  transform-style: preserve-3d;
  transition: transform 520ms cubic-bezier(.4,0,.2,1);
}

.os-icon--windows { --icon-url: url("assets/windows-icon.svg"); }
.os-icon--macos   { --icon-url: url("assets/macos-icon.svg"); }
.os-icon--linux   { --icon-url: url("assets/linux-icon.svg"); }

.os-icon-mono,
.os-icon-color {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.os-icon-mono {
  background: var(--ink-muted);
  -webkit-mask: var(--icon-url) center / contain no-repeat;
          mask: var(--icon-url) center / contain no-repeat;
  opacity: 1;
  transition: opacity 220ms ease;
}

.os-icon-color {
  object-fit: contain;
  opacity: 0;
  transition: opacity 220ms ease;
}


.download-card:hover .os-icon {
  transform: rotateY(360deg);
}

.download-card:hover .os-icon-mono {
  opacity: 0;
}

.download-card:hover .os-icon-color {
  opacity: 1;
}


.dl-info strong {
  display: block; font-family: var(--f-display);
  font-size: 1.7rem; font-weight: 700; letter-spacing: -.05em; color: var(--ink); line-height: 1;
}
.dl-info span { display: block; margin-top: 6px; font-size: .83rem; font-weight: 600; color: var(--ink-muted); }
.download-help-links {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0;
  padding: 20px 24px 8px;
  background: transparent;
  text-align: center;
}
.download-help-links a {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 10px;
  color: var(--ink-muted);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .01em;
  transition: color 140ms ease;
}
.download-help-links a + a::before {
  content: "";
  width: 3px; height: 3px;
  margin-right: 20px;
  border-radius: 50%;
  background: rgba(240,242,255,.22);
}
.download-help-links a:hover { color: var(--ink); }


.faq-section { display: grid; }
.faq-grid {
  border-top: 1px solid var(--rule-d);
  display: grid; grid-template-columns: 1fr 1fr;
}
.faq-item { border-bottom: 1px solid var(--rule-d); }
.faq-item:nth-child(odd) { border-right: 1px solid var(--rule-d); }
.faq-item summary {
  display: flex; align-items: center; justify-content: space-between;
  gap: 14px; padding: 20px 20px;
  cursor: pointer; list-style: none; user-select: none;
  transition: background 130ms ease;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary:hover { background: var(--surf-d); }
.faq-item summary span { font-size: .93rem; font-weight: 600; color: var(--ink); line-height: 1.44; }
.faq-icon { position: relative; width: 15px; height: 15px; flex-shrink: 0; }
.faq-icon::before, .faq-icon::after {
  content: ""; position: absolute; background: var(--ink-muted); border-radius: 999px;
  transition: transform 190ms ease, opacity 190ms ease;
}
.faq-icon::before { top: 50%; left: 0; right: 0; height: 1.5px; transform: translateY(-50%); }
.faq-icon::after  { left: 50%; top: 0; bottom: 0; width: 1.5px; transform: translateX(-50%); }
details[open] .faq-icon::after { transform: translateX(-50%) rotate(90deg); opacity: 0; }
.faq-item > p { padding: 0 20px 16px; font-size: .87rem; line-height: 1.72; color: var(--ink-soft); }


.community-section { position: relative; }
.community-band {
  position: relative;
  display: grid; grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr);
  gap: clamp(18px, 3vw, 34px);
  overflow: hidden; isolation: isolate;
  padding: clamp(18px, 3.2vw, 38px);
  background:
    linear-gradient(180deg, rgba(255,255,255,.026), rgba(255,255,255,.012)),
    rgba(255,255,255,.006);
}
.community-band::before {
  content: "";
  position: absolute; inset: 0;
  z-index: 0; pointer-events: none;
  background:
    radial-gradient(ellipse at 22% 50%, rgba(255,122,26,.13), transparent 42%),
    radial-gradient(ellipse at 78% 50%, rgba(36,195,255,.11), transparent 44%),
    linear-gradient(90deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,.055) 17%,
      rgba(255,255,255,.07) 50%,
      rgba(255,255,255,.055) 83%,
      rgba(255,255,255,0) 100%
    );
  -webkit-mask-image: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.22) 5%,
    rgba(0,0,0,.82) 16%,
    #000 28%,
    #000 72%,
    rgba(0,0,0,.82) 84%,
    rgba(0,0,0,.22) 95%,
    transparent 100%
  );
  mask-image: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.22) 5%,
    rgba(0,0,0,.82) 16%,
    #000 28%,
    #000 72%,
    rgba(0,0,0,.82) 84%,
    rgba(0,0,0,.22) 95%,
    transparent 100%
  );
}
.community-band::after {
  content: "";
  position: absolute; inset: 0;
  z-index: 1; pointer-events: none;
  background: linear-gradient(90deg,
    var(--dark) 0%,
    rgba(7,9,15,.84) 6%,
    rgba(7,9,15,.24) 15%,
    rgba(7,9,15,0) 28%,
    rgba(7,9,15,0) 72%,
    rgba(7,9,15,.24) 85%,
    rgba(7,9,15,.84) 94%,
    var(--dark) 100%
  );
  opacity: .78;
}
.community-copy {
  position: relative; z-index: 3;
  justify-self: end;
  width: min(100%, 460px);
  padding: clamp(28px, 4vw, 52px);
}
.community-copy .section-kicker,
.community-copy .s-heading,
.community-copy > p { position: relative; z-index: 4; }
.community-copy .s-heading { color: var(--ink); margin-top: 14px; }
.community-copy > p { margin-top: 12px; max-width: 430px; font-size: .92rem; line-height: 1.72; color: var(--ink-soft); }
.community-links {
  position: relative; z-index: 3;
  display: grid; align-content: stretch;
  width: min(100%, 570px);
  padding: 0;
  gap: 8px;
}
.community-link {
  display: grid; grid-template-columns: 44px 1fr;
  gap: 14px; align-items: center;
  padding: 14px 18px; 
  position: relative;
  overflow: hidden;
  background: rgba(7,9,15,.16);
  transition: background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}
.community-link:hover {
  background: rgba(255,255,255,.045);
  border-color: rgba(255,255,255,.09);
  box-shadow: 0 0 0 1px rgba(255,255,255,.025) inset;
}
.cl-icon {
  width: 36px; height: 36px; border-radius: 11px;
  background: rgba(255,255,255,.065);
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
  transition: background 160ms ease, box-shadow 160ms ease;
}
.community-link:hover .cl-icon {
  background: rgba(255,255,255,.095);
  box-shadow: 0 0 0 1px rgba(255,255,255,.08) inset;
}
.cl-icon svg { width: 15px; height: 15px; color: var(--ink-muted); }
.cl-body strong { display: block; font-size: .9rem; font-weight: 700; color: var(--ink); }
.cl-body span { display: block; margin-top: 1px; font-size: .78rem; color: var(--ink-muted); }


.reveal {
  --reveal-y: 12px;
  --reveal-blur: 7px;
  opacity: 0;
  transform: translate3d(0, var(--reveal-y), 0);
  filter: blur(var(--reveal-blur));
  clip-path: inset(6% 0 4% 0 round 18px);
  transition:
    opacity 520ms ease,
    transform 680ms cubic-bezier(.16,1,.3,1),
    filter 620ms cubic-bezier(.16,1,.3,1),
    clip-path 700ms cubic-bezier(.16,1,.3,1);
  transition-delay: var(--d, 0ms);
  will-change: opacity, transform, filter, clip-path;
}
.reveal.is-visible {
  opacity: 1;
  transform: translate3d(0,0,0);
  filter: blur(0);
  clip-path: inset(0 0 0 0 round 0px);
}
.section-kicker.reveal,
.hero-copy.reveal {
  --reveal-y: 8px;
  --reveal-blur: 4px;
  clip-path: inset(0 0 0 0);
}
.statement-wrap.reveal {
  --reveal-y: 0px;
  --reveal-blur: 9px;
  transform: scale(.988);
  clip-path: inset(4% 0 4% 0 round 24px);
}
.statement-wrap.reveal.is-visible { transform: scale(1); }
.wallet-top.reveal,
.data-strip.reveal {
  --reveal-y: 14px;
  --reveal-blur: 6px;
}
@media (prefers-reduced-motion: reduce) {
  .reveal { transition: none; opacity: 1; transform: none; filter: none; clip-path: none; }
}


@media (max-width: 1080px) {
  .wallet-top { grid-template-columns: 1fr; }
  .neuron-section { grid-template-columns: 1fr; }
  .download-section { grid-template-columns: 1fr; }
  .community-band { grid-template-columns: 1fr; }
  .footer-top { grid-template-columns: 1fr; }
  .gov-inline { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 860px) {
  .site-header { grid-template-columns: 1fr auto; border-radius: 18px; }
  .nav { grid-column: 1 / -1; justify-content: flex-start; overflow-x: auto; gap: 2px; padding-bottom: 2px; }
  .data-strip { grid-template-columns: 1fr; }
  .download-grid { grid-template-columns: 1fr; }
  .download-help-links { padding-inline: 18px; }
  .faq-grid { grid-template-columns: 1fr; }
  .faq-item:nth-child(odd) { border-right: none; }
  .footer-nav { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  :root { --sp: 68px; }
  .zone-inner, .site-header, .footer-inner { width: min(calc(100% - 24px), var(--max)); }
  .hero { padding-top: 78px; }
  .hero h1 { font-size: clamp(1.85rem, 9vw, 2.8rem); }
  .hero-actions { flex-direction: column; }
  .hero-actions .btn { width: 100%; }
  .hero-meta { grid-template-columns: 1fr; max-width: 100%; }
  .hero-visual { margin-bottom: -52px; }
  .statement-wrap { padding: 72px 0 24px; }
  .statement-inner p { font-size: clamp(.98rem, 5vw, 1.5rem); }
  .s-heading { font-size: clamp(1.2rem, 5.5vw, 1.7rem); }
  .gov-inline { grid-template-columns: 1fr; }
  .footer-nav { grid-template-columns: 1fr 1fr; }
  .footer-bottom { flex-direction: column; align-items: center; text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { animation: none !important; transition-duration: 0ms !important; }
  .reveal { opacity: 1; transform: none; filter: none; clip-path: none; }
  .tok { animation: none !important; }
}


.hero h1 { margin-top: 0; }
.hero-title-accent {
  display: block;
  width: 76px;
  height: 2px;
  margin: 18px auto 0;
  border-radius: 999px;
  background: var(--grad);
  box-shadow: 0 0 18px rgba(104,82,255,.28), 0 0 12px rgba(36,195,255,.16);
}
.hero-copy > p { margin-top: 17px; }

@keyframes btn-sheen-pass {
  0% { transform: translateX(-115%) skewX(-14deg); opacity: 0; }
  18% { opacity: .85; }
  100% { transform: translateX(115%) skewX(-14deg); opacity: 0; }
}
@keyframes btn-border-drift {
  0% { background-position: 0% 50%; }
  100% { background-position: 200% 50%; }
}
.btn,
.header-cta {
  transform: translate3d(0,0,0);
  transition:
    transform 180ms cubic-bezier(.16,1,.3,1),
    color 150ms ease,
    background 150ms ease,
    border-color 150ms ease,
    box-shadow 220ms cubic-bezier(.16,1,.3,1);
}
.btn::before,
.header-cta::before {
  inset: -1px -38%;
  border-radius: inherit;
  background: linear-gradient(108deg,
    transparent 18%,
    rgba(255,255,255,.62) 42%,
    rgba(36,195,255,.26) 50%,
    rgba(255,79,139,.18) 57%,
    transparent 78%);
  opacity: 0;
  transform: translateX(-115%) skewX(-14deg);
  transition: opacity 120ms ease;
}
.btn::after,
.header-cta::after {
  background: linear-gradient(112deg,
    rgba(255,255,255,.42),
    rgba(36,195,255,.64),
    rgba(104,82,255,.60),
    rgba(255,79,139,.46),
    rgba(255,122,26,.46),
    rgba(255,255,255,.42));
  background-size: 200% 100%;
}

.btn:hover::before,
.header-cta:hover::before { animation: btn-sheen-pass 900ms cubic-bezier(.16,1,.3,1) both; }
.btn:hover::after,
.header-cta:hover::after { animation: btn-border-drift 2400ms linear infinite; opacity: .92; }
.btn:active,
.header-cta:active {
  transform: translate3d(0,0,0) scale(.985);
  transition-duration: 70ms;
}


.token-orbit { inset: 16px 0 0; }
.tok-icp    { top: 16%; left: 4%; }
.tok-cketh  { top: 14%; right: 7%; }
.tok-nns    { top: 78%; right: 19%; }
.tok-chat   { top: 38%; right: 17%; }
.tok-ckbtc  { top: 65%; left: 2%; }
.tok-ckusdc { top: 68%; right: 5%; }
.tok-ckusdt { top: 78%; left: 18%; }
.tok-ckeurc { top: 39%; left: 13%; }


.neuron-visual-bg {
  opacity: 1;
  background-image:
    url('assets/neurons-pic.png');
  background-repeat: no-repeat;
  background-size: cover, min(74%, 220px) auto, cover, cover, cover;
  background-position: center center;
}

.stake-timeline { z-index: 2; }

.community-section {
  position: relative;
}

.community-band {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr);
  gap: clamp(22px, 3.4vw, 42px);
  overflow: hidden;
  isolation: isolate;
  padding: clamp(22px, 3.6vw, 46px);
  background: transparent;
}

.community-band::before {
  content: "";
  position: absolute;
  inset: -40px -120px;
  z-index: 0;
  pointer-events: none;
  background:
  radial-gradient(ellipse at 24% 50%, rgba(36,195,255,.18), transparent 50%),
  radial-gradient(ellipse at 76% 48%, rgba(0,132,255,.12), transparent 54%),
  linear-gradient(90deg,
    rgba(255,255,255,0) 0%,
    rgba(36,195,255,.018) 16%,
    rgba(36,195,255,.046) 50%,
    rgba(0,132,255,.018) 84%,
    rgba(255,255,255,0) 100%
  );
  -webkit-mask-image: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.10) 5%,
    rgba(0,0,0,.52) 17%,
    #000 34%,
    #000 66%,
    rgba(0,0,0,.52) 83%,
    rgba(0,0,0,.10) 95%,
    transparent 100%
  );
  mask-image: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0,0,0,.10) 5%,
    rgba(0,0,0,.52) 17%,
    #000 34%,
    #000 66%,
    rgba(0,0,0,.52) 83%,
    rgba(0,0,0,.10) 95%,
    transparent 100%
  );
}


.community-copy {
  position: relative;
  z-index: 3;
  justify-self: end;
  width: min(100%, 460px);
  padding: clamp(30px, 4vw, 56px);
}

.community-copy .section-kicker,
.community-copy .s-heading,
.community-copy > p {
  position: relative;
  z-index: 4;
}

.community-copy .s-heading {
  color: var(--ink);
  margin-top: 14px;
}

.community-copy > p {
  margin-top: 12px;
  max-width: 430px;
  font-size: .94rem;
  line-height: 1.76;
  color: var(--ink-soft);
}

.community-links {
  position: relative;
  z-index: 3;
  display: grid;
  align-content: stretch;
  width: min(100%, 590px);
  padding: 0;
  gap: 10px;
}

.community-link {
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 16px;
  align-items: center;
  position: relative;
  overflow: hidden;
  padding: 16px 20px;
  border-radius: 12px;
  transition:
    background 160ms ease,
    border-color 160ms ease,
    opacity 160ms ease,
    transform 180ms cubic-bezier(.16,1,.3,1);
}

.community-link:hover {
  background: rgba(255,255,255,.052);
  border-color: rgba(36,195,255,.13);
}

.cl-icon {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.105), rgba(255,255,255,.055)),
    rgba(36,195,255,.045);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 0 0 1px rgba(255,255,255,.055) inset;
  transition:
    background 160ms ease,
    box-shadow 160ms ease,
    transform 180ms cubic-bezier(.16,1,.3,1);
}


.cl-icon svg {
  width: 30px;
  height: 30px;
  color: var(--ink-soft);
}

.cl-body strong {
  display: block;
  font-family: var(--f-display);
  font-size: 1.22rem;
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -.035em;
  color: var(--ink);
}

.cl-body span {
  display: block;
  margin-top: 4px;
  font-size: .8rem;
  line-height: 1.35;
  color: var(--ink-muted);
}


.footer {
  position: relative;
  overflow: hidden;
  background-color: var(--dark);
  background-image: url("assets/2147949147.jpg");
  background-size: cover;
  background-position: center 42%;
  background-repeat: no-repeat;
}

.footer::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: rgba(7, 9, 15, .78);
}

.footer-inner {
  position: relative;
  z-index: 1;
  width: min(calc(100% - 48px), var(--max));
  margin-inline: auto;
  padding: 54px 0 42px;
}

.footer-top {
  display: grid;
  grid-template-columns: 1fr;
  justify-items: center;
  gap: 30px;
  align-items: start;
  padding-bottom: 36px;
  border-bottom: 1px solid var(--rule-d);
}

.footer-brand-block {
  display: grid;
  justify-items: center;
}

.footer-brand-block .brand {
  gap: 13px;
  color: var(--ink);
  justify-content: center;
  font-size: 1.2rem;
  letter-spacing: -.05em;
  transition: opacity 140ms ease;
}

.footer-brand-block .brand:hover {
  opacity: .72;
}

.footer-brand-block .brand img {
  width: 54px;
  height: 54px;
}

.footer-nav {
  width: min(100%, 900px);
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 28px;
}

.footer-col {
  display: grid;
  align-content: start;
  gap: 9px;
}

.footer-col > span {
  display: block;
  margin-bottom: 4px;
  font-size: .61rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--ink-muted);
}

.footer-col a {
  width: max-content;
  font-size: .86rem;
  font-weight: 500;
  color: var(--ink-soft);
  opacity: .82;
  transition: opacity 140ms ease;
}

.footer-col a:hover {
  opacity: .52;
}

.footer-bottom {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 22px;
  gap: 14px;
  text-align: center;
}

.footer-bottom p {
  font-size: .8rem;
  color: var(--ink-muted);
}

.footer-brand-block {
  display: grid;
  justify-items: center;
  width: 100%;
}

.footer-brand-block .brand {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 13px;
  transform: translateX(calc((100% - 54px) / -4));
}


.site-header {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  transition:
    background 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease,
    backdrop-filter 220ms ease,
    -webkit-backdrop-filter 220ms ease;
}

.site-header::before,
.site-header::after {
  opacity: 0;
  transition: opacity 220ms ease;
}

.site-header.is-scrolled {
  background: rgba(7,9,15,.88);
  border-color: rgba(255,255,255,.10);
  backdrop-filter: blur(40px) saturate(1.2);
  -webkit-backdrop-filter: blur(40px) saturate(1.2);
  box-shadow:
    0 4px 32px rgba(0,0,0,.28),
    0 1px 0 rgba(255,255,255,.05) inset;
}

.site-header.is-scrolled::before {
  opacity: .38;
}

.site-header.is-scrolled::after {
  opacity: .42;
}

.page {
  width: min(calc(100% - 48px), var(--max));
  margin-inline: auto;
  padding: 132px 0 72px;
  color: var(--ink);
}
.page-hero {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--rule-d);
  border-radius: 34px;
  padding: clamp(28px, 5vw, 58px);
  background:
    radial-gradient(circle at 12% 0%, rgba(255,122,26,.18), transparent 34%),
    radial-gradient(circle at 80% 12%, rgba(36,195,255,.14), transparent 36%),
    rgba(255,255,255,.036);
}
.page-hero h1 {
  max-width: 820px;
  margin-top: 18px;
  font-family: var(--f-display);
  font-size: clamp(2.15rem, 6vw, 5rem);
  line-height: .95;
  letter-spacing: -.07em;
}
.page-hero > p:not(.label) {
  max-width: 720px;
  margin-top: 22px;
  color: var(--ink-soft);
  font-size: clamp(1rem, 2vw, 1.18rem);
  line-height: 1.65;
}
.back {
  display: inline-flex;
  align-items: center;
  color: var(--ink-muted);
  font-size: .88rem;
  font-weight: 700;
}
.back:hover { color: var(--ink); }
.label {
  margin-top: 24px;
  display: inline-flex;
  width: fit-content;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: transparent;
  background: var(--grad);
  -webkit-background-clip: text;
  background-clip: text;
}
.page-link-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 34px;
}
.page-link-grid a {
  border: 1px solid var(--rule-d);
  border-radius: 16px;
  padding: 14px 15px;
  background: rgba(255,255,255,.04);
  color: var(--ink-soft);
  font-size: .86rem;
  font-weight: 800;
}
.page-link-grid a:hover {
  color: var(--ink);
  border-color: var(--rule-d2);
  background: rgba(255,255,255,.065);
}
.content-card {
  margin-top: 22px;
  border: 1px solid var(--rule-d);
  border-radius: 26px;
  padding: clamp(24px, 4vw, 42px);
  background: rgba(255,255,255,.035);
}
.content-card h2 {
  margin-top: 6px;
  font-family: var(--f-display);
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  letter-spacing: -.055em;
}
.content-card h3 {
  font-family: var(--f-display);
  font-size: 1.05rem;
  letter-spacing: -.03em;
}
.content-card p,
.content-card li,
.content-card span {
  color: var(--ink-soft);
  line-height: 1.7;
}
.content-card > p:not(.label) { margin-top: 16px; }
.content-card code {
  padding: 2px 6px;
  border-radius: 7px;
  background: rgba(255,255,255,.075);
  color: var(--ink);
}
.spec-list,
.requirements-table,
.platform-grid {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}
.spec-list div,
.requirements-table div,
.platform-grid article,
.release-item {
  border: 1px solid var(--rule-d);
  border-radius: 18px;
  background: rgba(7,9,15,.26);
}
.spec-list div,
.requirements-table div {
  display: grid;
  grid-template-columns: minmax(130px, .35fr) 1fr;
  gap: 18px;
  padding: 15px 16px;
}
.spec-list strong,
.requirements-table strong,
.release-item strong {
  color: var(--ink);
}
.spec-list a {
  color: var(--ink-soft);
  overflow-wrap: anywhere;
}
.spec-list a:hover { color: var(--ink); }
.page-steps {
  margin: 22px 0 0;
  padding-left: 22px;
}
.platform-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.platform-grid article {
  padding: 18px;
}
.platform-grid p { margin-top: 10px; }
.release-item {
  padding: 18px;
  margin-top: 20px;
}
.release-item span {
  display: block;
  margin-top: 7px;
}
.release-item ul {
  margin: 14px 0 0;
  padding-left: 20px;
}
.note {
  margin-top: 18px;
  color: var(--ink-muted) !important;
}
.page-footer {
  border-top: 1px solid var(--rule-d);
}
.page-footer-links {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
}
.page-footer-links a {
  color: var(--ink-muted);
  font-size: .86rem;
  font-weight: 700;
}
.page-footer-links a:hover { color: var(--ink); }
@media (max-width: 860px) {
  .page-link-grid,
  .platform-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .page { width: min(calc(100% - 24px), var(--max)); padding-top: 154px; }
  .page-link-grid,
  .platform-grid,
  .spec-list div,
  .requirements-table div { grid-template-columns: 1fr; }
}
