.landing{--via-font:Arial, Helvetica, sans-serif;--via-canvas:#455D4B;--via-surface:#455D4B;--via-text:#EDE4DC;--via-heading:#EDE4DC;--via-secondary-text:#EDE4DC;--via-action:#EDE4DC;--via-action-text:#455D4B;--via-primary-action:#A84738;--via-primary-action-text:#EDE4DC;--via-primary-action-border:#EDE4DC;--via-primary-action-focus:#EDE4DC;--via-primary-action-pressed:#7A4842;--via-primary-action-pressed-text:#EDE4DC;--via-primary-action-disabled:#455D4B;--via-primary-action-disabled-text:#EDE4DC;--via-primary-action-disabled-border:#EDE4DC;--via-focus:#EDE4DC;--via-border:#EDE4DC;--via-network-origin:#A84738;--via-network-node:#FFFFFF;--via-network-muted-node:#91A795;--via-heading-size:1.75rem;--via-heading-line:1.2857142857142858;--via-heading-weight:500;--via-body-size:1rem;--via-body-line:1.5;--via-body-weight:400;--via-button-size:1rem;--via-button-line:1.5;--via-button-weight:500;--via-navigation-size:0.875rem;--via-navigation-line:1.4285714285714286;--via-navigation-weight:500;--via-form-size:1rem;--via-form-line:1.5;--via-form-weight:400;--via-label-size:0.875rem;--via-label-line:1.4285714285714286;--via-label-weight:500;--via-space-tight:0.25rem;--via-space-compact:0.5rem;--via-space-control:0.75rem;--via-space-content:1rem;--via-space-section:1.5rem;--via-space-page:1rem;--via-radius-control:0.5rem;--via-radius-card:1rem;--via-radius-pill:62.4375rem;--via-motion-short:160ms;--via-motion-standard:280ms;--via-motion-reduced:0ms;}
*{box-sizing:border-box}body{margin:0}[hidden]{display:none!important}
.landing {
  min-height: 100svh;
  background: var(--via-canvas);
  color: var(--via-text);
  font-family: var(--via-font);
  font-size: var(--via-body-size);
  line-height: var(--via-body-line);
}
.header {
  position: fixed;
  inset: 0 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--via-space-content);
  padding: max(var(--via-space-section), env(safe-area-inset-top))
    max(var(--via-space-section), env(safe-area-inset-right))
    var(--via-space-compact)
    max(var(--via-space-section), env(safe-area-inset-left));
  z-index: 10;
  pointer-events: none;
}
.header > * {
  pointer-events: auto;
}
.entry {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--via-space-compact) var(--via-space-content);
  max-width: 65%;
  font-size: var(--via-navigation-size);
  line-height: var(--via-navigation-line);
  font-weight: var(--via-navigation-weight);
}
.landing a {
  color: var(--via-text);
  text-underline-offset: 0.25em;
}
.landing button {
  font: inherit;
  color: var(--via-text);
  background: transparent;
  border: 0;
}
.entry a,
.entry button {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  text-align: left;
  max-width: 100%;
}
.entry button {
  padding: 0;
}
.brandWindow {
  display: block;
  position: relative;
  overflow: hidden;
  width: min(8.5rem, 26vw);
  height: min(4.7rem, 14.4vw);
  flex-shrink: 0;
}
.logo {
  position: absolute;
  width: 146%;
  max-width: none;
  height: auto;
  left: -24%;
  top: -90%;
}
.story {
  position: relative;
}
.story[data-enhanced="true"][data-reduced-motion="false"] {
  height: 500svh;
}
.canvas {
  position: sticky;
  top: 0;
  height: 100svh;
  min-height: 44rem;
  overflow: clip;
}
.copy {
  position: absolute;
  z-index: 2;
  top: 18%;
  left: max(var(--via-space-section), 7vw);
  right: max(var(--via-space-section), 7vw);
  pointer-events: none;
}
.heading {
  max-width: 26ch;
  margin: 0;
  color: var(--via-heading);
  font-size: var(--via-heading-size);
  line-height: var(--via-heading-line);
  font-weight: var(--via-heading-weight);
  letter-spacing: normal;
  text-wrap: balance;
}
.graph {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(90%, 72rem);
  height: 60%;
}
.edge {
  stroke: var(--via-network-node);
  stroke-width: 1.6;
}
.origin {
  stroke: none;
}
.node {
  stroke: var(--via-network-node);
  stroke-width: 1.5;
}
.finalChoices {
  position: absolute;
  top: 70%;
  left: max(var(--via-space-section), 7vw);
  right: max(var(--via-space-section), 7vw);
  pointer-events: none;
}
.finalChoices p {
  margin: 0 0 var(--via-space-compact);
}
.platforms {
  display: flex;
  flex-wrap: wrap;
  gap: var(--via-space-control);
}
.platforms button {
  border: 1px solid var(--via-border);
  padding: var(--via-space-control) var(--via-space-content);
  max-width: 100%;
  text-align: left;
  font-size: var(--via-button-size);
  line-height: var(--via-button-line);
  font-weight: var(--via-button-weight);
}
.staticStory {
  padding: var(--via-space-page) max(var(--via-space-section), 7vw);
  list-style: none;
  margin: 0;
}
.staticStory li {
  margin-bottom: 3rem;
}
.landing :focus-visible {
  outline: 3px solid var(--via-focus);
  outline-offset: 4px;
}
.srOnly {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.landing[data-step-mode="true"] .header {
  position: relative;
}
.story[data-reduced-motion="true"] .canvas {
  position: relative;
}
.staticStory h2 {
  color: var(--via-heading);
  font-size: var(--via-heading-size);
  line-height: var(--via-heading-line);
  font-weight: var(--via-heading-weight);
}
.staticCanvas {
  position: relative;
  height: auto;
  min-height: max(100svh, 44rem);
  overflow: visible;
  display: flex;
  flex-direction: column;
  padding: 4rem max(var(--via-space-section), 7vw);
}
.staticCanvas .copy {
  position: relative;
  inset: auto;
}
.staticCanvas .graph {
  position: relative;
  inset: auto;
  transform: none;
  width: 100%;
  height: 20rem;
  margin: auto 0;
}
.staticCanvas .finalChoices {
  position: relative;
  inset: auto;
}
.staticDownloads {
  padding: var(--via-space-page) max(var(--via-space-section), 7vw);
}
.landing[data-step-mode="true"] .header {
  position: relative;
}
.entry {
  min-width: 0;
}
.entry a {
  display: block;
  overflow-wrap: anywhere;
}
@media (prefers-reduced-motion: reduce), (max-height: 44rem) {
  .header {
    position: relative;
  }
  .canvas {
    position: relative;
  }
}

@media (min-width: 40rem) {
  .finalChoices {
    top: 82%;
  }
}

.header{justify-content:flex-end} .story[data-enhanced="true"]{height:500svh}
.landing[data-step-mode="true"] .header{position:relative}
