:root {
  --bg: #0b0d0f;
  --bg-2: #101316;
  --panel: #14181c;
  --panel-2: #1a1f24;
  --paper: #f0ede4;
  --paper-soft: #d8d4ca;
  --ink: #f0ede4;
  --ink-soft: #c4c1b9;
  --quiet: #92938f;
  --line: #2d343a;
  --line-soft: #3c454d;
  --signal: #c56b4f;
  --accent: #72a9c2;
  --accent-strong: #8dbbd0;
  --available: #78a986;
  --preview: #c6a263;
  --max: 1220px;
  --radius: 8px;
  --shadow: 0 16px 38px rgba(0,0,0,.24);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-height: 100vh;
  position: relative;
  isolation: isolate;
  overflow-x: hidden;
  color: var(--ink);
  background-color: var(--bg);
  font-family: "Segoe UI", Inter, Arial, Helvetica, sans-serif;
  line-height: 1.5;
  text-rendering: optimizeLegibility;
}
body::before,
body::after {
  content: "";
  position: fixed;
  z-index: 0;
  width: 420px;
  height: 420px;
  border: 1px solid rgba(114,169,194,.16);
  border-radius: 50%;
  background:
    radial-gradient(ellipse 18% 49% at 50% 50%, transparent 48%, rgba(114,169,194,.17) 49%, rgba(114,169,194,.17) 50%, transparent 51%),
    radial-gradient(ellipse 34% 49% at 50% 50%, transparent 48%, rgba(114,169,194,.14) 49%, rgba(114,169,194,.14) 50%, transparent 51%),
    radial-gradient(ellipse 49% 18% at 50% 50%, transparent 48%, rgba(114,169,194,.17) 49%, rgba(114,169,194,.17) 50%, transparent 51%),
    radial-gradient(ellipse 49% 34% at 50% 50%, transparent 48%, rgba(114,169,194,.14) 49%, rgba(114,169,194,.14) 50%, transparent 51%);
  opacity: .52;
  pointer-events: none;
}
body::before {
  top: 108px;
  right: -192px;
  transform: rotate(-12deg);
}
body::after {
  width: 286px;
  height: 286px;
  left: -142px;
  bottom: 86px;
  border-color: rgba(197,107,79,.14);
  background:
    radial-gradient(ellipse 18% 49% at 50% 50%, transparent 48%, rgba(197,107,79,.15) 49%, rgba(197,107,79,.15) 50%, transparent 51%),
    radial-gradient(ellipse 34% 49% at 50% 50%, transparent 48%, rgba(197,107,79,.12) 49%, rgba(197,107,79,.12) 50%, transparent 51%),
    radial-gradient(ellipse 49% 18% at 50% 50%, transparent 48%, rgba(197,107,79,.15) 49%, rgba(197,107,79,.15) 50%, transparent 51%),
    radial-gradient(ellipse 49% 34% at 50% 50%, transparent 48%, rgba(197,107,79,.12) 49%, rgba(197,107,79,.12) 50%, transparent 51%);
  opacity: .42;
  transform: rotate(16deg);
}
main,
.site-footer { position: relative; z-index: 1; }

a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input { font: inherit; }
button { color: inherit; }
::selection { background: var(--accent); color: #071014; }

.skip-link {
  position: fixed;
  top: -80px;
  left: 14px;
  z-index: 3000;
  padding: 10px 13px;
  border: 1px solid var(--accent);
  border-radius: 4px;
  background: var(--paper);
  color: #111;
}
.skip-link:focus { top: 14px; }

.shell { width: min(calc(100% - 40px), var(--max)); margin: 0 auto; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  border-top: 3px solid var(--accent);
  border-bottom: 1px solid var(--line);
  background: rgba(11,13,15,.96);
}
.navbar {
  min-height: 70px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
}
.brand-mark {
  width: 42px;
  height: 42px;
  object-fit: cover;
  border: 1px solid var(--line-soft);
  border-radius: 50%;
  background: #080a0c;
}
.brand-word {
  display: block;
  color: var(--paper);
  font-size: 1.1rem;
  font-weight: 850;
  letter-spacing: -.03em;
  line-height: 1.05;
}
.brand-word span { color: var(--accent); }
.brand-kicker {
  display: block;
  margin-top: 4px;
  color: var(--quiet);
  font: 700 .65rem/1.1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.nav-links {
  display: flex;
  align-items: center;
  gap: 4px;
}
.nav-link {
  display: block;
  padding: 9px 11px;
  border: 1px solid transparent;
  border-radius: 4px;
  color: var(--ink-soft);
  font: 750 .72rem/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: .035em;
  text-transform: uppercase;
}
.nav-link:hover,
.nav-link[aria-current="page"] {
  border-color: var(--line-soft);
  background: var(--panel);
  color: var(--paper);
}
.nav-link.external::after { content: " /↗"; color: var(--accent); }
.nav-toggle {
  display: none;
  width: 42px;
  height: 42px;
  border: 1px solid var(--line-soft);
  border-radius: 4px;
  background: var(--panel);
  cursor: pointer;
}

.hero {
  position: relative;
  padding: 84px 0 68px;
  border-bottom: 1px solid var(--line);
  overflow: hidden;
}
.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
  gap: 58px;
  align-items: stretch;
}
.eyebrow {
  margin-bottom: 16px;
  color: var(--accent);
  font: 800 .7rem/1.2 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: .09em;
  text-transform: uppercase;
}
h1, h2, h3, p { margin-top: 0; }
h1 {
  max-width: 960px;
  margin-bottom: 24px;
  font-size: clamp(3rem, 7vw, 6.15rem);
  line-height: .94;
  letter-spacing: -.062em;
  font-weight: 900;
}
.hero-copy {
  max-width: 790px;
  margin-bottom: 30px;
  color: var(--ink-soft);
  font-size: clamp(1.04rem, 2vw, 1.28rem);
  line-height: 1.48;
}
.hero-copy strong { color: var(--paper); }
.hero-actions, .card-actions, .inline-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
}
.btn {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 14px;
  border: 1px solid var(--line-soft);
  border-radius: 5px;
  background: var(--panel);
  color: var(--paper-soft);
  font: 800 .72rem/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: .03em;
  text-transform: uppercase;
  cursor: pointer;
  transition: border-color .14s ease, background .14s ease, color .14s ease, transform .14s ease;
}
.btn:hover {
  border-color: #65727c;
  background: var(--panel-2);
  color: var(--paper);
  transform: translateY(-1px);
}
.btn.primary {
  border-color: var(--accent);
  background: var(--accent);
  color: #091013;
}
.btn.primary:hover {
  border-color: var(--accent-strong);
  background: var(--accent-strong);
  color: #071014;
}
.btn.quiet { border-color: transparent; background: transparent; color: var(--ink-soft); }
.btn.quiet:hover { border-color: var(--line); background: transparent; color: var(--paper); }
.btn.disabled, .btn[aria-disabled="true"] {
  border-color: var(--line);
  color: #666c70;
  background: #101316;
  cursor: not-allowed;
  pointer-events: none;
  transform: none;
}

.hero-mark-wrap {
  position: relative;
  min-height: 390px;
  display: grid;
  grid-template-rows: 1fr auto;
  align-items: center;
  padding: 26px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(20,24,28,.72);
  overflow: hidden;
  box-shadow: var(--shadow);
}
.hero-mark-wrap::before {
  content: "";
  position: absolute;
  width: 278px;
  height: 278px;
  left: 50%;
  top: 45%;
  border: 1px solid #33424c;
  border-radius: 50%;
  background:
    radial-gradient(ellipse 18% 49% at 50% 50%, transparent 48%, rgba(114,169,194,.24) 49%, rgba(114,169,194,.24) 50%, transparent 51%),
    radial-gradient(ellipse 34% 49% at 50% 50%, transparent 48%, rgba(114,169,194,.18) 49%, rgba(114,169,194,.18) 50%, transparent 51%),
    radial-gradient(ellipse 49% 18% at 50% 50%, transparent 48%, rgba(114,169,194,.24) 49%, rgba(114,169,194,.24) 50%, transparent 51%),
    radial-gradient(ellipse 49% 34% at 50% 50%, transparent 48%, rgba(114,169,194,.18) 49%, rgba(114,169,194,.18) 50%, transparent 51%);
  transform: translate(-50%, -50%) rotate(-8deg);
  pointer-events: none;
}
.hero-mark {
  position: relative;
  z-index: 1;
  width: min(240px, 68vw);
  margin: auto;
  filter: contrast(1.03);
}
.hero-orbit {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 13px 0 0;
  border-top: 1px solid var(--line);
  background: transparent;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.hero-orbit strong {
  display: block;
  margin-bottom: 5px;
  color: var(--paper-soft);
  font-size: .72rem;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.hero-orbit span { color: var(--quiet); font-size: .68rem; }

.section { padding: 70px 0; }
.section.compact { padding: 48px 0; }
.section-line { border-bottom: 1px solid var(--line); }
.section-heading {
  display: grid;
  grid-template-columns: 145px minmax(0, 780px);
  gap: 22px;
  align-items: start;
  margin-bottom: 28px;
}
.section-heading .eyebrow { margin: 6px 0 0; }
.section-heading > div:last-child { justify-self: start; }
.section-heading h2 {
  max-width: 720px;
  margin-bottom: 10px;
  font-size: clamp(1.8rem, 3.05vw, 2.95rem);
  line-height: 1.06;
  letter-spacing: -.034em;
  font-weight: 760;
}
.section-heading p { max-width: 690px; margin-bottom: 0; color: var(--quiet); }

.pillar-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.pillar {
  min-height: 270px;
  padding: 22px 23px 24px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel);
}
.pillar-number {
  color: var(--accent);
  font: 750 .67rem/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: .065em;
}
.pillar-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  margin: 40px 0 16px;
  border: 1px solid var(--line-soft);
  border-radius: 4px;
  background: var(--bg-2);
  color: var(--paper);
  font: 900 1rem/1 "Segoe UI", Arial, sans-serif;
}
.pillar h3 { margin-bottom: 9px; font-size: 1.22rem; }
.pillar p { margin-bottom: 18px; color: var(--quiet); font-size: .91rem; }
.text-link {
  color: var(--paper-soft);
  font: 800 .72rem/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  text-transform: uppercase;
}
.text-link::after { content: " →"; color: var(--accent); }
.text-link:hover { color: var(--paper); }

.page-hero {
  padding: 62px 0 52px;
  border-bottom: 1px solid var(--line);
  background: rgba(16,19,22,.62);
}
.page-hero h1 {
  max-width: 1080px;
  margin-bottom: 18px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: clamp(2.4rem, 4.65vw, 4.45rem);
  line-height: 1.08;
  letter-spacing: .082em;
  font-weight: 560;
  text-transform: uppercase;
}
.page-hero p { max-width: 840px; margin-bottom: 22px; color: var(--ink-soft); font-size: 1.06rem; }
.breadcrumb {
  margin-bottom: 25px;
  color: var(--quiet);
  font: 700 .68rem/1.2 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  text-transform: uppercase;
}
.breadcrumb a { color: var(--ink-soft); }
.breadcrumb a:hover { color: var(--accent); }

.catalog-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 20px;
  align-items: end;
  margin-bottom: 28px;
}
.catalog-filter { display: flex; gap: 6px; flex-wrap: wrap; }
.filter-btn {
  padding: 9px 11px;
  border: 1px solid var(--line);
  border-radius: 4px;
  background: var(--bg-2);
  color: var(--ink-soft);
  cursor: pointer;
  font: 750 .68rem/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  text-transform: uppercase;
}
.filter-btn.active,
.filter-btn:hover { background: var(--panel-2); color: var(--paper); border-color: var(--line-soft); }
.filter-btn.active { border-color: var(--accent); color: var(--accent-strong); }
.catalog-search {
  width: 100%;
  min-height: 40px;
  padding: 8px 11px;
  border: 1px solid var(--line);
  border-radius: 4px;
  outline: none;
  background: var(--bg-2);
  color: var(--paper);
  font: 700 .76rem/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.catalog-search::placeholder { color: #6f7476; }
.catalog-search:focus { border-color: var(--accent); }

.product-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}
.product-card {
  min-height: 0;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel);
  box-shadow: 0 10px 24px rgba(0,0,0,.12);
  overflow: hidden;
}
.product-card.featured { border-color: #3b4f5a; }
.product-card-inner {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr) minmax(190px, .34fr);
  grid-template-areas:
    "top name actions"
    "top copy actions"
    "top meta actions"
    "top sig actions";
  gap: 8px 24px;
  min-height: 220px;
  padding: 24px;
}
.product-topline { grid-area: top; display: block; margin: 0; }
.product-glyph {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin-bottom: 16px;
  border: 1px solid var(--line-soft);
  border-radius: 6px;
  background: var(--bg-2);
  color: var(--paper);
  font: 900 1.15rem/1 "Segoe UI", Arial, sans-serif;
}
.status {
  display: inline-block;
  padding: 5px 7px;
  border: 1px solid var(--line);
  border-left: 3px solid var(--quiet);
  border-radius: 3px;
  background: #101316;
  color: var(--quiet);
  font: 800 .61rem/1.15 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: .045em;
  text-transform: uppercase;
}
.status::before { content: none; }
.status.available { color: var(--available); border-left-color: var(--available); }
.status.development { color: var(--signal); border-left-color: var(--signal); }
.status.preview { color: var(--preview); border-left-color: var(--preview); }
.product-card h3 {
  grid-area: name;
  margin-bottom: 0;
  font-size: clamp(1.8rem, 4vw, 3.05rem);
  line-height: 1;
  letter-spacing: -.043em;
}
.product-card p { grid-area: copy; max-width: 730px; margin: 4px 0 10px; color: var(--quiet); }
.product-meta { grid-area: meta; display: flex; gap: 6px; flex-wrap: wrap; margin: 0; }
.tag {
  padding: 5px 7px;
  border: 1px solid var(--line);
  border-radius: 3px;
  background: var(--bg-2);
  color: var(--ink-soft);
  font: 700 .65rem/1.2 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  text-transform: uppercase;
}
.tag::before { content: none; }
.card-actions { grid-area: actions; align-self: center; justify-content: flex-end; }
.product-signature {
  grid-area: sig;
  margin-top: 5px;
  color: var(--quiet);
  font: 650 .66rem/1.3 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.product-signature strong { color: var(--paper-soft); }
.catalog-empty {
  display: none;
  margin-top: 14px;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  color: var(--quiet);
  background: var(--panel);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.info-grid, .component-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.info-card, .component-card {
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel);
  box-shadow: 0 10px 24px rgba(0,0,0,.12);
}
.info-card h3, .component-card h3 { margin-bottom: 8px; font-size: 1.35rem; }
.info-card p, .component-card p { color: var(--quiet); }
.component-card .product-topline { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 28px; }
.component-card .product-glyph { margin: 0; }
.component-card .product-meta { margin: 20px 0; }

.family-banner {
  position: relative;
  padding: 28px;
  border: 1px solid var(--line);
  border-left: 4px solid var(--accent);
  border-radius: var(--radius);
  background: var(--panel);
}
.family-banner > * { position: static; }
.family-banner h2 { margin: 18px 0 9px; font-size: clamp(2rem, 4vw, 3.2rem); letter-spacing: -.043em; }
.family-banner p { max-width: 800px; margin-bottom: 0; color: var(--quiet); }
.family-banner::after { content: none; }

.download-ledger, .timeline {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel);
  overflow: hidden;
}
.download-row {
  display: grid;
  grid-template-columns: 1.1fr .9fr .7fr auto;
  gap: 18px;
  align-items: center;
  min-height: 68px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--line);
}
.download-row:last-child { border-bottom: 0; }
.download-row strong { font-size: .95rem; }
.download-row span { color: var(--quiet); font-size: .8rem; }
.timeline-row {
  display: grid;
  grid-template-columns: 190px 1fr;
  gap: 22px;
  padding: 22px 20px;
  border-bottom: 1px solid var(--line);
}
.timeline-row:last-child { border-bottom: 0; }
.timeline-stage {
  color: var(--accent);
  font: 800 .7rem/1.2 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  text-transform: uppercase;
}
.timeline-copy strong { display: block; margin-bottom: 6px; color: var(--paper-soft); }
.timeline-copy span { display: block; max-width: 750px; color: var(--quiet); font-size: .86rem; }

.product-signature-large {
  display: grid;
  grid-template-columns: 170px 1fr;
  gap: 28px;
  margin-top: 28px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
  color: var(--quiet);
  font: 700 .72rem/1.4 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  text-transform: uppercase;
}
.product-signature-large strong { color: var(--paper); }

.notice {
  padding: 13px 14px;
  border: 1px solid var(--line-soft);
  border-left: 5px solid var(--signal);
  border-radius: 4px;
  background: var(--panel);
  color: var(--ink-soft);
  font-size: .83rem;
}

.site-footer {
  padding: 48px 0 28px;
  border-top: 1px solid var(--line);
  background: #080a0c;
  color: var(--paper);
}
.site-footer .brand-word { color: var(--paper); }
.site-footer .brand-kicker { color: var(--quiet); }
.site-footer .brand-mark { border-color: var(--line-soft); }
.footer-grid {
  display: grid;
  grid-template-columns: 2fr repeat(3, 1fr);
  gap: 28px;
}
.footer-brand p { max-width: 430px; margin-top: 18px; color: var(--quiet); font-size: .8rem; }
.footer-col { display: flex; flex-direction: column; gap: 8px; font-size: .76rem; }
.footer-col strong {
  margin-bottom: 5px;
  color: var(--accent);
  font: 750 .65rem/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.footer-col a { color: var(--paper-soft); }
.footer-col a:hover { color: var(--paper); }
.footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-top: 36px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
  color: var(--quiet);
  font: 650 .65rem/1.3 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

@media (max-width: 900px) {
  .hero-grid { grid-template-columns: 1fr; gap: 34px; }
  .hero-mark-wrap { min-height: 250px; grid-template-columns: 180px 1fr; grid-template-rows: auto; gap: 22px; }
  .hero-mark-wrap::before { width: 160px; height: 160px; left: 103px; top: 50%; }
  .hero-mark { width: 145px; margin: 0; }
  .hero-orbit { border-top: 0; border-left: 1px solid var(--line); padding: 4px 0 4px 20px; }
  .pillar-grid { grid-template-columns: 1fr; }
  .pillar { min-height: 0; }
  .pillar-icon { margin-top: 24px; }
  .product-card-inner { grid-template-columns: 72px 1fr; grid-template-areas: "top name" "top copy" "top meta" "top sig" "actions actions"; }
  .card-actions { justify-content: flex-start; padding-top: 10px; }
  .catalog-toolbar { grid-template-columns: 1fr; }
  .download-row { grid-template-columns: 1fr 1fr; }
  .download-row .btn { justify-self: start; }
}

@media (max-width: 720px) {
  body::before { width: 286px; height: 286px; right: -180px; top: 90px; }
  body::after { width: 190px; height: 190px; left: -118px; bottom: 38px; }
  .shell { width: min(calc(100% - 26px), var(--max)); }
  .site-header { position: relative; }
  .navbar { min-height: 62px; }
  .brand-mark { width: 36px; height: 36px; }
  .nav-toggle { display: grid; place-items: center; }
  .nav-links {
    display: none;
    position: absolute;
    top: calc(100% + 1px);
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    border-bottom: 1px solid var(--line);
    background: #0b0d0f;
  }
  .nav-links.open { display: flex; }
  .nav-link { border: 0; border-bottom: 1px solid var(--line); border-radius: 0; padding: 14px 20px; }
  .hero { padding: 54px 0 44px; }
  h1 { font-size: clamp(2.8rem, 15vw, 4.45rem); }
  .hero-mark-wrap { min-height: 190px; grid-template-columns: 110px 1fr; padding: 20px; }
  .hero-mark-wrap::before { width: 105px; height: 105px; left: 72px; }
  .hero-mark { width: 92px; }
  .section { padding: 52px 0; }
  .section.compact { padding: 38px 0; }
  .section-heading { grid-template-columns: 1fr; gap: 10px; }
  .section-heading .eyebrow { margin: 0; }
  .page-hero { padding: 44px 0 38px; }
  .product-card-inner { grid-template-columns: 1fr; grid-template-areas: "top" "name" "copy" "meta" "sig" "actions"; padding: 20px; }
  .product-topline { display: flex; justify-content: space-between; align-items: flex-start; }
  .product-glyph { margin: 0; }
  .product-card h3 { margin-top: 8px; }
  .info-grid, .component-grid { grid-template-columns: 1fr; }
  .timeline-row { grid-template-columns: 1fr; gap: 8px; }
  .product-signature-large { grid-template-columns: 1fr; gap: 5px; }
  .download-row { grid-template-columns: 1fr; gap: 7px; padding: 18px 16px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; }
  .footer-bottom { flex-direction: column; }
}

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


/* QA4: readability, mobile navigation, and knowledge base */
body {
  line-height: 1.62;
  -webkit-font-smoothing: antialiased;
}
p { max-width: 72ch; }
.hero-copy,
.page-hero p,
.section-heading p,
.pillar p,
.product-card p,
.info-card p,
.component-card p,
.family-banner p,
.timeline-copy span,
.footer-brand p {
  color: #b9bbb7;
}
.hero-copy { line-height: 1.65; }
.section-heading p,
.product-card p,
.component-card p,
.info-card p { line-height: 1.68; }

.nav-toggle {
  position: relative;
  width: 46px;
  height: 46px;
  padding: 0;
  flex: 0 0 46px;
  overflow: hidden;
  font-size: 0;
  line-height: 0;
}
.nav-toggle-icon {
  width: 19px;
  height: 14px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.nav-toggle-icon span {
  display: block;
  width: 19px;
  height: 1px;
  background: var(--paper);
  transform-origin: center;
  transition: transform .16s ease, opacity .16s ease;
}
.nav-toggle[aria-expanded="true"] .nav-toggle-icon span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] .nav-toggle-icon span:nth-child(2) { opacity: 0; }
.nav-toggle[aria-expanded="true"] .nav-toggle-icon span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

.kbase-callout {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 22px 24px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel);
}
.kbase-callout strong { display: block; margin-bottom: 5px; font-size: 1.1rem; }
.kbase-callout span { display: block; color: #b9bbb7; font-size: .9rem; }

.wiki-hero { padding-bottom: 36px; }
.wiki-search-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  max-width: 760px;
  margin-top: 26px;
}
.wiki-search {
  width: 100%;
  min-height: 48px;
  padding: 10px 14px;
  border: 1px solid var(--line-soft);
  border-radius: 5px;
  outline: none;
  background: var(--panel);
  color: var(--paper);
  font-size: .95rem;
}
.wiki-search::placeholder { color: #7f8486; }
.wiki-search:focus { border-color: var(--accent); }
.wiki-layout {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 34px;
  align-items: start;
}
.wiki-sidebar {
  position: sticky;
  top: 96px;
  border-top: 1px solid var(--line);
}
.wiki-sidebar a {
  display: block;
  padding: 11px 4px;
  border-bottom: 1px solid var(--line);
  color: var(--ink-soft);
  font-size: .84rem;
}
.wiki-sidebar a:hover,
.wiki-sidebar a[aria-current="page"] { color: var(--paper); }
.wiki-group { margin-bottom: 36px; }
.wiki-group-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line);
}
.wiki-group-heading h2 { margin: 0; font-size: 1.45rem; letter-spacing: -.025em; }
.wiki-group-heading span { color: var(--quiet); font-size: .76rem; }
.wiki-card-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.wiki-card {
  min-height: 160px;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--panel);
}
.wiki-card:hover { border-color: var(--line-soft); background: var(--panel-2); }
.wiki-card .wiki-type { color: var(--accent); font: 750 .64rem/1.2 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; text-transform: uppercase; letter-spacing: .05em; }
.wiki-card h3 { margin: 20px 0 7px; font-size: 1.17rem; }
.wiki-card p { margin-bottom: 0; color: #b9bbb7; font-size: .88rem; line-height: 1.6; }
.wiki-empty { display: none; padding: 24px 0; color: var(--quiet); }
.article-layout { display: grid; grid-template-columns: 220px minmax(0, 760px); gap: 42px; align-items: start; }
.article { min-width: 0; }
.article h1 { font-size: clamp(2.35rem, 5vw, 4.4rem); line-height: 1; }
.article h2 { margin: 42px 0 12px; font-size: 1.55rem; letter-spacing: -.028em; }
.article h3 { margin: 28px 0 10px; font-size: 1.08rem; }
.article p,
.article li { color: #c3c4c0; font-size: 1rem; line-height: 1.75; }
.article ul { padding-left: 20px; }
.article-meta { display: flex; flex-wrap: wrap; gap: 7px; margin: 20px 0 30px; }
.article-note { margin: 24px 0; padding: 16px 18px; border-left: 3px solid var(--accent); background: var(--panel); color: #c3c4c0; }

@media (max-width: 720px) {
  body::before { width: 220px; height: 220px; right: -145px; top: 110px; opacity: .34; }
  body::after { width: 148px; height: 148px; left: -94px; bottom: 46px; opacity: .30; }
  .site-header { position: sticky; }
  .navbar { min-height: 64px; gap: 12px; }
  .brand { max-width: calc(100% - 58px); }
  .brand-word { font-size: 1rem; }
  .brand-kicker { max-width: 205px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .58rem; }
  .nav-toggle { display: grid; place-items: center; }
  .nav-links {
    top: 100%;
    padding: 6px 13px 12px;
    border-top: 1px solid var(--line);
    box-shadow: 0 16px 28px rgba(0,0,0,.28);
  }
  .nav-link { padding: 14px 8px; font-size: .76rem; }
  .hero { padding: 42px 0 38px; }
  h1 { font-size: clamp(2.45rem, 12.4vw, 3.55rem); line-height: .98; letter-spacing: -.05em; }
  .hero-copy { margin-bottom: 24px; font-size: 1rem; line-height: 1.68; }
  .hero-actions { align-items: stretch; }
  .hero-actions .btn { flex: 1 1 100%; }
  .hero-mark-wrap {
    min-height: 0;
    grid-template-columns: 82px minmax(0,1fr);
    gap: 16px;
    padding: 16px;
  }
  .hero-mark-wrap::before { width: 82px; height: 82px; left: 57px; }
  .hero-mark { width: 72px; }
  .hero-orbit { padding-left: 15px; }
  .hero-orbit strong { font-size: .66rem; }
  .hero-orbit span { font-size: .64rem; line-height: 1.4; }
  .section { padding: 44px 0; }
  .section.compact { padding: 34px 0; }
  .section-heading { margin-bottom: 24px; }
  .section-heading h2 { font-size: clamp(1.62rem, 7.4vw, 2.18rem); line-height: 1.08; }
  .section-heading p { font-size: .96rem; }
  .pillar { padding: 20px; }
  .pillar p { font-size: .95rem; }
  .page-hero { padding: 36px 0 32px; }
  .page-hero h1 { font-size: clamp(1.95rem, 9.1vw, 2.75rem); line-height: 1.08; letter-spacing: .055em; }
  .page-hero p { font-size: 1rem; line-height: 1.65; }
  .product-card-inner { padding: 18px; }
  .product-card h3 { font-size: 2rem; }
  .product-card p { font-size: .95rem; line-height: 1.65; }
  .product-topline { gap: 12px; }
  .product-glyph { width: 50px; height: 50px; }
  .card-actions { display: grid; grid-template-columns: 1fr; width: 100%; }
  .card-actions .btn { width: 100%; }
  .catalog-filter { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .filter-btn { min-height: 42px; }
  .catalog-search { min-height: 46px; font-size: .9rem; }
  .component-card { padding: 20px; }
  .download-row { align-items: start; }
  .download-row .btn { width: 100%; }
  .footer-grid { grid-template-columns: 1fr; gap: 24px; }
  .footer-brand { grid-column: auto; }
  .footer-bottom { gap: 7px; }
  .kbase-callout { align-items: stretch; flex-direction: column; padding: 20px; }
  .kbase-callout .btn { width: 100%; }
  .wiki-search-wrap { grid-template-columns: 1fr; }
  .wiki-layout,
  .article-layout { grid-template-columns: 1fr; gap: 26px; }
  .wiki-sidebar { position: static; display: flex; overflow-x: auto; gap: 0; border-bottom: 1px solid var(--line); scrollbar-width: thin; }
  .wiki-sidebar a { flex: 0 0 auto; padding: 11px 14px; border-bottom: 0; border-right: 1px solid var(--line); }
  .wiki-card-grid { grid-template-columns: 1fr; }
  .wiki-card { min-height: 0; }
  .article h1 { font-size: clamp(2.2rem, 11vw, 3.2rem); }
  .article p, .article li { font-size: .98rem; line-height: 1.72; }
}


/* QA5 — unified product-publisher treatment */
body::after {
  border-color: rgba(114,169,194,.13);
  background:
    radial-gradient(ellipse 18% 49% at 50% 50%, transparent 48%, rgba(114,169,194,.14) 49%, rgba(114,169,194,.14) 50%, transparent 51%),
    radial-gradient(ellipse 34% 49% at 50% 50%, transparent 48%, rgba(114,169,194,.11) 49%, rgba(114,169,194,.11) 50%, transparent 51%),
    radial-gradient(ellipse 49% 18% at 50% 50%, transparent 48%, rgba(114,169,194,.14) 49%, rgba(114,169,194,.14) 50%, transparent 51%),
    radial-gradient(ellipse 49% 34% at 50% 50%, transparent 48%, rgba(114,169,194,.11) 49%, rgba(114,169,194,.11) 50%, transparent 51%);
  opacity:.48;
}
.hero::before,.hero::after,.section.sphere-stage::before,.section.sphere-stage::after {
  content:"";
  position:absolute;
  width:260px;height:260px;
  border:1px solid rgba(114,169,194,.13);
  border-radius:50%;
  background:
    radial-gradient(ellipse 18% 49% at 50% 50%, transparent 48%, rgba(114,169,194,.15) 49%, rgba(114,169,194,.15) 50%, transparent 51%),
    radial-gradient(ellipse 34% 49% at 50% 50%, transparent 48%, rgba(114,169,194,.11) 49%, rgba(114,169,194,.11) 50%, transparent 51%),
    radial-gradient(ellipse 49% 18% at 50% 50%, transparent 48%, rgba(114,169,194,.15) 49%, rgba(114,169,194,.15) 50%, transparent 51%),
    radial-gradient(ellipse 49% 34% at 50% 50%, transparent 48%, rgba(114,169,194,.11) 49%, rgba(114,169,194,.11) 50%, transparent 51%);
  pointer-events:none;opacity:.38;z-index:0;
}
.hero::before{width:330px;height:330px;left:-185px;top:46px;transform:rotate(13deg)}
.hero::after{width:170px;height:170px;right:16%;top:10px;transform:rotate(-9deg);opacity:.28}
.hero .shell,.section.sphere-stage .shell{position:relative;z-index:1}
.section.sphere-stage{position:relative;overflow:hidden}
.section.sphere-stage::before{left:-110px;bottom:35px;width:220px;height:220px;transform:rotate(16deg);opacity:.3}
.section.sphere-stage::after{right:-80px;bottom:22px;width:190px;height:190px;transform:rotate(-12deg);opacity:.32}
.hero h1{
  max-width:780px;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:clamp(2.4rem,4.65vw,4.45rem);
  line-height:1.08;
  letter-spacing:.082em;
  font-weight:560;
  text-transform:uppercase;
}
.hero-mark-wrap{
  min-height:290px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  overflow:visible;
  box-shadow:none;
}
.hero-mark-wrap::before{content:none}
.hero-orbit{display:none}
.hero-mark{width:min(300px,68vw);margin:auto;filter:none}
.product-logo{
  width:66px;height:66px;object-fit:cover;display:block;
  border-radius:8px;border:1px solid var(--line-soft);background:#090b0d;
}
.product-glyph.has-logo{width:66px;height:66px;padding:0;border:0;background:transparent;overflow:hidden}
.product-glyph.has-logo .product-logo{width:100%;height:100%}
.component-card .product-glyph.has-logo{width:78px;height:78px}
.component-card .product-glyph.has-logo .product-logo{width:78px;height:78px}
@media(max-width:760px){
  .hero::before{width:220px;height:220px;left:-145px;top:34px;opacity:.26}
  .hero::after{width:120px;height:120px;right:-34px;top:90px;opacity:.22}
  .hero h1{font-size:clamp(1.95rem,9.1vw,2.75rem);letter-spacing:.055em;line-height:1.08}
  .hero-mark-wrap{min-height:188px;margin-top:6px}
  .hero-mark{width:min(210px,62vw)}
}


/* QA5.9 — authoritative SVG spin retained. Compact calculated Z slices fill the 90°/270° edge view; the gray-blue density circle stays static. */
#qvert-logo-wrap{position:relative;display:flex;align-items:center;justify-content:center;pointer-events:none;transform-style:preserve-3d;filter:drop-shadow(0 0 24px rgba(110,145,168,.36)) drop-shadow(0 0 34px rgba(110,145,168,.18))}
#qvert-logo-wrap::before{content:"";position:absolute;width:252px;height:252px;border-radius:50%;border:1px solid rgba(110,145,168,.10);background:radial-gradient(circle at 50% 50%,rgba(110,145,168,.055) 0%,rgba(110,145,168,.022) 48%,transparent 72%);box-shadow:0 0 42px rgba(110,145,168,.055);z-index:0}
.qvert-tilt{position:relative;width:289px;height:289px;perspective:900px;transform-style:preserve-3d;opacity:.97;isolation:isolate}
.coin-depth-stack{position:absolute;inset:0;transform-style:preserve-3d;z-index:0;pointer-events:none}
.coin-depth-stack span{position:absolute;inset:15px;border-radius:50%;transform-style:preserve-3d;transform-origin:50% 50%;backface-visibility:visible;background:radial-gradient(circle at 36% 34%,rgba(74,88,99,var(--shade)) 0%,rgba(44,54,62,var(--shade)) 42%,rgba(22,28,33,var(--shade)) 72%,rgba(10,13,16,var(--shade)) 100%);border:1px solid rgba(126,149,164,.11);box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),inset 0 -5px 11px rgba(0,0,0,.28);animation:coinDepthSlice 18s linear infinite}
.qvert-tilt>svg{position:relative;z-index:2;width:100%;height:100%;transform-style:preserve-3d;backface-visibility:visible;animation:earthSpin 18s linear infinite}
@keyframes earthSpin{from{transform:rotateX(22deg) rotateY(0)}to{transform:rotateX(22deg) rotateY(360deg)}}
@keyframes coinDepthSlice{from{transform:rotateX(22deg) rotateY(0) translateZ(var(--z))}to{transform:rotateX(22deg) rotateY(360deg) translateZ(var(--z))}}
@media(max-width:760px){#qvert-logo-wrap::before{width:164px;height:164px}.qvert-tilt{width:188px;height:188px}.coin-depth-stack span{inset:10px}}


/* QA5.10 — product catalog preview galleries */
.product-preview-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:26px}
.product-preview-card{display:block;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#090d10;text-decoration:none}
.product-preview-card img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;object-position:top center;background:#070a0c}
.product-preview-card span{display:block;padding:10px 12px;color:var(--ink-soft);font:700 .68rem/1.25 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.045em;text-transform:uppercase;border-top:1px solid var(--line)}
.product-preview-card:hover{border-color:#536c7b}
.catalog-preview{margin:0 0 10px;overflow:hidden;border:1px solid var(--line-soft);border-radius:7px;background:#070a0c}
.catalog-preview img{display:block;width:100%;aspect-ratio:16/7;object-fit:cover;object-position:top center}
@media(max-width:760px){.product-preview-strip{grid-template-columns:1fr}.catalog-preview img{aspect-ratio:16/9}}

/* QA5.11 — broader product catalog preview treatments */
.product-preview-card.contain img{object-fit:contain;padding:18px;background:radial-gradient(circle at 50% 45%,#111920 0%,#080b0e 66%,#06080a 100%)}
.catalog-preview.contain img{object-fit:contain;padding:12px;background:#070a0c}

/* QA5.12 — catalog repair: locally optimized previews + first-class product lockups. */
.catalog-preview img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#070a0c}
.product-preview-card img{background:#070a0c}
.product-title-lockup{display:grid;grid-template-columns:82px minmax(0,1fr);gap:20px;align-items:center;max-width:1080px}
.product-title-logo{display:block;width:82px;height:82px;border-radius:50%;object-fit:cover;border:1px solid #34434e;background:#080a0c}
.product-title-lockup h1{margin:0 0 12px}
.product-title-lockup p{margin:0}
@media(max-width:760px){
  .product-title-lockup{grid-template-columns:58px minmax(0,1fr);gap:14px;align-items:start}
  .product-title-logo{width:58px;height:58px}
}
