/* Warm yellow foregrounds the brand; stage colors keep the workflow legible. */
@font-face {
  font-family:"Space Grotesk Web";
  src:url(../assets/fonts/space-grotesk-latin-var.woff2) format("woff2");
  font-weight:300 700;
  font-style:normal;
  font-display:swap;
}
.app[data-route="home"] .topbar {
  --muted:#737566;
  padding-inline: max(56px, calc((100vw - 1540px) / 2));
  background: #fffcf0;
}
.app[data-route="home"] .tb-link.on::after { background:#27271f; }
.app[data-route="home"] .wm-t {font-size:20px;letter-spacing:-.015em;}
.app[data-route="home"] .tb-link {font-size:14px;}
.page[data-route="home"] .home-in {
  --hp-gold: #84530b;
  --hp-signal: #4353a6;
  --hp-mint: #1b6543;
  --hp-purple: #5b389e;
  --hp-ink: #25261d;
  --hp-secondary: #5b4f28;
  --hp-muted: #655426;
  --hp-line: #27271f26;
  position: relative;
  width: 100%;
  overflow: hidden;
  background: #fcd535;
  color: var(--hp-ink);
}
.page[data-route="home"] .hp-wrap {
  width: calc(100% - 112px);
  max-width: 1540px;
  margin: 0 auto;
}
.page[data-route="home"] .hp-hero {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  align-items: center;
  gap: 28px 64px;
  min-height: 740px;
  padding: 46px 0 28px;
}
.page[data-route="home"] .hp-hero-copy { min-width: 0; padding-bottom: 28px; }
.page[data-route="home"] .hp-hero-kicker {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin: 0 0 30px;
  color: var(--hp-secondary);
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.7;
}
.page[data-route="home"] .hp-kicker-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--hp-purple);
}
.page[data-route="home"] .hp-hero-network {
  margin-left: 4px;
  padding-left: 14px;
  border-left: 1px solid var(--hp-line);
  color: var(--hp-muted);
}
.page[data-route="home"] h1 {
  margin: 0;
  color: var(--hp-ink);
  font-family:"Space Grotesk Web","Noto Sans SC Web",var(--font);
  font-size: clamp(54px, 4.7vw, 76px);
  font-weight: 600;
  line-height: 1.22;
  letter-spacing: 0;
  text-wrap: balance;
}
.page[data-route="home"] h1 > span { display: block; }
.page[data-route="home"] h1 > span:last-child { color: var(--hp-ink); }
.page[data-route="home"] h1.en {
  font-size: clamp(52px, 4.5vw, 72px);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: -.035em;
}
.page[data-route="home"] .hp-hero-sub {
  max-width: 550px;
  margin: 25px 0 32px;
  color: var(--hp-secondary);
  font-size: 17px;
  font-weight: 400;
  line-height: 1.9;
  text-wrap: pretty;
}
.page[data-route="home"] .hp-hero-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px 28px;
}
.page[data-route="home"] .hp-hero-actions > .btn,
.page[data-route="home"] .hp-start > .btn {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 54px;
  padding: 14px 25px;
  border: 0;
  border-radius: 4px;
  background: #28291f;
  color: #fcd535;
  box-shadow: none;
  font-size: 16px;
  font-weight: 600;
  transition: background .2s, transform .2s;
}
.page[data-route="home"] .hp-hero-actions > .btn:hover,
.page[data-route="home"] .hp-start > .btn:hover { background: #3c3d2f; transform:translateY(-1px); box-shadow:none; }
.page[data-route="home"] .hp-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  color: #5c5542;
  font-size: 14px;
  text-decoration: none;
  line-height: 1.7;
  transition: color .18s;
}
.page[data-route="home"] .hp-link:hover { color: var(--hp-ink); }
.page[data-route="home"] .hp-hero-actions > .hp-link {color:#334c31;}
.page[data-route="home"] .hp-hero-actions > .hp-link {font-size:16px;}
.page[data-route="home"] .hp-hero-actions > .hp-link .ic {color:var(--hp-mint);}
.page[data-route="home"] .hp-link > .ic { transition: transform .18s; }
.page[data-route="home"] .hp-link:hover > .ic { transform: translateX(3px); }
.page[data-route="home"] .hp-availability-note {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 21px 0 0;
  color: var(--hp-muted);
  font-size: 12px;
  line-height: 1.8;
}
.page[data-route="home"] .hp-service-status {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px 36px;
  margin: 0;
  padding-top: 26px;
  border-top: 1px solid var(--hp-line);
  font-size: 12px;
  line-height: 1.8;
}
.page[data-route="home"] .hp-service-status > div {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.page[data-route="home"] .hp-service-status dt {
  color: var(--hp-muted);
  font-weight: 400;
  white-space: nowrap;
}
.page[data-route="home"] .hp-service-status dd {
  min-width: 0;
  margin: 0;
  color: #514522;
  overflow-wrap: anywhere;
}
.page[data-route="home"] .hp-service-status dd > span { display: block; }
.page[data-route="home"] .hp-service-status > .hp-service-action { margin-left: auto; }
.page[data-route="home"] .hp-service-action .hp-link { min-height: 24px; font-size: 12px; }

.page[data-route="home"] .hp-brand-watermark {
  position: absolute;
  z-index: 0;
  top: 100px;
  left: calc(50% + 810px);
  right: auto;
  width: clamp(460px, 26vw, 610px);
  height: clamp(460px, 26vw, 610px);
  opacity: .035;
  transform: none;
  pointer-events: none;
  user-select: none;
}
.page[data-route="home"] .hp-brand-watermark .mark { width: 100%; height: 100%; }

/* The moving lines illustrate the workflow, never orders or returns. */
.page[data-route="home"] .hp-visual {
  position: relative;
  width: 100%;
  min-width: 0;
  padding: 0;
  isolation:isolate;
}
.page[data-route="home"] .hp-visual::before {
  content:"";position:absolute;z-index:-1;inset:5% -8% 22%;pointer-events:none;
  background: none;
}
.page[data-route="home"] .hp-visual-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 0 0 14px;
  color: var(--hp-muted);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0;
}
.page[data-route="home"] .hp-visual-top > span:first-child {
  display: flex;
  align-items: center;
  gap: 8px;
}
.page[data-route="home"] .hp-visual-top .ic { color: var(--hp-purple); }
.page[data-route="home"] .hp-visual-version { display: none; }
.page[data-route="home"] .hp-graph {
  position: relative;
  width: 100%;
  min-width: 0;
  aspect-ratio: 640 / 450;
  isolation: isolate;
}
.page[data-route="home"] .hp-graph-grid { display: none; }
.page[data-route="home"] .hp-flow-lines {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}
.page[data-route="home"] .hp-flow-line {
  fill: none;
  stroke: #755815;
  stroke-width: 1.8;
  opacity: .5;
  vector-effect: non-scaling-stroke;
  transition: stroke .3s, opacity .3s;
}
.page[data-route="home"] .hp-flow-packet {
  fill: none;
  stroke: #84530b;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-dasharray: 7 93;
  opacity: .2;
  vector-effect: non-scaling-stroke;
  animation: hp-packet 7s linear infinite;
}
.page[data-route="home"] .hp-flow-packet[data-lane="rules"] { animation-delay: -1.4s; }
.page[data-route="home"] .hp-flow-packet[data-lane="execution"] { animation-delay: -2.8s; }
.page[data-route="home"] .hp-graph[data-phase="signals"] [data-lane="signals"],
.page[data-route="home"] .hp-graph[data-phase="rules"] [data-lane="rules"],
.page[data-route="home"] .hp-graph[data-phase="execution"] [data-lane="execution"] { opacity: 1; }
.page[data-route="home"] .hp-graph[data-phase="signals"] .hp-flow-packet[data-lane="signals"],
.page[data-route="home"] .hp-graph[data-phase="rules"] .hp-flow-packet[data-lane="rules"],
.page[data-route="home"] .hp-graph[data-phase="execution"] .hp-flow-packet[data-lane="execution"] { stroke: var(--hp-gold); }
.page[data-route="home"] .hp-graph[data-phase="signals"] .hp-flow-packet[data-lane="signals"] {stroke:var(--hp-signal);}
.page[data-route="home"] .hp-graph[data-phase="rules"] .hp-flow-packet[data-lane="rules"] {stroke:var(--hp-purple);}
.page[data-route="home"] .hp-graph[data-phase="execution"] .hp-flow-packet[data-lane="execution"] {stroke:var(--hp-mint);}
.page[data-route="home"] .hp-graph[data-phase="signals"] .hp-flow-line[data-lane="signals"] {stroke:#4353a680;}
.page[data-route="home"] .hp-graph[data-phase="rules"] .hp-flow-line[data-lane="rules"] {stroke:#5b389e80;}
.page[data-route="home"] .hp-graph[data-phase="execution"] .hp-flow-line[data-lane="execution"] {stroke:#1b654380;}
.page[data-route="home"] .hp-node {
  position: absolute;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
  transform: translate(-50%, -50%);
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--hp-secondary);
}
.page[data-route="home"] :is(.hp-source, .hp-risk, .hp-budget, .hp-execute) {
  min-height: 38px;
  padding: 8px 13px;
  gap: 10px;
}
.page[data-route="home"] :is(.hp-source, .hp-risk, .hp-budget, .hp-execute)::before {
  content: "";
  position: absolute;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #8b772f;
  transition: background .3s;
}
.page[data-route="home"] .hp-source::before { right: -3px; top: calc(50% - 3px); }
.page[data-route="home"] :is(.hp-risk, .hp-budget)::before { left: -3px; top: calc(50% - 3px); }
.page[data-route="home"] .hp-execute::before { left: calc(50% - 3px); top: -3px; }
.page[data-route="home"] .hp-node-icon {display:flex;align-items:center;flex:none;color:#77622d;}
.page[data-route="home"] .hp-node-icon .ic {width:20px;height:20px;}
.page[data-route="home"] .hp-node-copy { min-width: 0; }
.page[data-route="home"] .hp-node-copy > b {
  display: block;
  color: #6c5a2b;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.65;
  letter-spacing: 0;
  transition: color .3s;
}
.page[data-route="home"] .hp-node-copy > small { display: none; }
.page[data-route="home"] .hp-source { justify-content: flex-end; text-align: right; padding:8px;gap:6px; }
.page[data-route="home"] .hp-node-copy>b {font-weight:500;white-space:nowrap;}
.page[data-route="home"] :is(.hp-risk, .hp-budget) { padding-left: 18px; }
.page[data-route="home"] .hp-execute { justify-content: center; text-align: center; padding-top: 13px; }
.page[data-route="home"] .hp-graph[data-phase="signals"] .hp-source::before,
.page[data-route="home"] .hp-graph[data-phase="rules"] :is(.hp-risk, .hp-budget)::before,
.page[data-route="home"] .hp-graph[data-phase="execution"] .hp-execute::before { background: var(--hp-gold); }
.page[data-route="home"] .hp-graph[data-phase="signals"] .hp-source::before {background:var(--hp-signal);}
.page[data-route="home"] .hp-graph[data-phase="rules"] :is(.hp-risk,.hp-budget)::before {background:var(--hp-purple);}
.page[data-route="home"] .hp-graph[data-phase="execution"] .hp-execute::before {background:var(--hp-mint);}
.page[data-route="home"] .hp-graph[data-phase="signals"] .hp-source .hp-node-icon {color:var(--hp-signal);}
.page[data-route="home"] .hp-graph[data-phase="rules"] :is(.hp-risk,.hp-budget) .hp-node-icon {color:var(--hp-purple);}
.page[data-route="home"] .hp-graph[data-phase="execution"] .hp-execute .hp-node-icon {color:var(--hp-mint);}
.page[data-route="home"] .hp-graph[data-phase="signals"] .hp-source .hp-node-copy > b,
.page[data-route="home"] .hp-graph[data-phase="rules"] :is(.hp-risk, .hp-budget) .hp-node-copy > b,
.page[data-route="home"] .hp-graph[data-phase="execution"] .hp-execute .hp-node-copy > b { color: var(--hp-ink); }
.page[data-route="home"] .hp-agent {
  aspect-ratio: 1;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  isolation: isolate;
}
.page[data-route="home"] .hp-agent::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 10%;
  border-radius: 50%;
  background: #fff9df80;
  pointer-events: none;
}
.page[data-route="home"] .hp-agent .mark {width:clamp(84px,7.6vw,112px);height:clamp(84px,7.6vw,112px);filter:none;}
.page[data-route="home"] .hp-agent > b {
  position: absolute;
  top: calc(100% + 7px);
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
  background: #fcd535;
  padding-inline: 4px;
  font-family:"Space Grotesk Web",var(--font);
  white-space:nowrap;
  color: #51412e;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0;
}
.page[data-route="home"] .hp-agent > small { display: none; }
.page[data-route="home"] .hp-orbit {
  position: absolute;
  width: 94%;
  height: 94%;
  border: 1px solid #5b389e30;
  border-top-color: var(--hp-purple);
  border-radius: 50%;
  pointer-events: none;
  animation: hp-orbit 40s linear infinite;
}
.page[data-route="home"] .hp-orbit::after {
  content: "";
  position: absolute;
  top: 15%;
  left: 15%;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--hp-purple);
}
.page[data-route="home"] .hp-orbit-inner {
  display:block;position:absolute;width:80%;height:80%;border-radius:50%;
  border:1px solid #5b389e20;border-left-color:#5b389e65;
  pointer-events:none;
}
.page[data-route="home"] .hp-visual-tabs {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-top: 14px;
  border-bottom: 1px solid var(--hp-line);
}
.page[data-route="home"] .hp-visual-tabs button {
  position: relative;
  min-width: 0;
  min-height: 43px;
  padding: 10px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--hp-muted);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7;
  cursor: pointer;
  transition: color .18s;
}
.page[data-route="home"] .hp-visual-tabs button::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  height: 2px;
  background: transparent;
  transition: background .18s;
}
.page[data-route="home"] .hp-visual-tabs button > .num {display:inline;margin-right:6px;font-size:10px;color:#655426;font-family:"Space Grotesk Web",var(--font);}
.page[data-route="home"] .hp-visual-tabs button[aria-pressed="true"] { color: var(--hp-ink); }
.page[data-route="home"] .hp-visual-tabs button[aria-pressed="true"]::after { background: var(--hp-gold); }
.page[data-route="home"] .hp-visual-tabs button[data-home-phase="signals"][aria-pressed="true"] {color:var(--hp-signal);}
.page[data-route="home"] .hp-visual-tabs button[data-home-phase="signals"][aria-pressed="true"]::after {background:var(--hp-signal);}
.page[data-route="home"] .hp-visual-tabs button[data-home-phase="rules"][aria-pressed="true"] {color:var(--hp-purple);}
.page[data-route="home"] .hp-visual-tabs button[data-home-phase="rules"][aria-pressed="true"]::after {background:var(--hp-purple);}
.page[data-route="home"] .hp-visual-tabs button[data-home-phase="execution"][aria-pressed="true"] {color:var(--hp-mint);}
.page[data-route="home"] .hp-visual-tabs button[data-home-phase="execution"][aria-pressed="true"]::after {background:var(--hp-mint);}
.page[data-route="home"] .hp-visual-tabs button:hover { color: var(--hp-ink); }
.page[data-route="home"] .hp-visual-caption {
  min-height: 44px;
  padding: 15px 0 0;
  margin: 0;
  color: var(--hp-secondary);
  font-size: 14px;
  line-height: 1.8;
}
.page[data-route="home"] .hp-protocol-strip {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 28px;
  padding: 28px 0 34px;
  border-bottom: 1px solid var(--hp-line);
  color: #62542c;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0;
}
.page[data-route="home"] .hp-protocol-strip > span { display: inline-flex; gap: 8px; align-items: center; }
.page[data-route="home"] .hp-protocol-label { margin-right: auto; color: #514522; }
.page[data-route="home"] .hp-protocol-owner { display: none !important; }

/* Open columns continue on a full-width ivory field without tiled cards. */
.page[data-route="home"] .hp-body-wrap {
  --hp-secondary: #5f6356;
  --hp-muted: #737566;
  --hp-line: #d9dacb;
  position: relative;
  z-index: 1;
  background: #fffcf0;
}
.page[data-route="home"] .hp-protocol-strip { position: relative; z-index: 1; }
.page[data-route="home"] .hp-feature-1 .hp-feature-icon { color: var(--hp-signal); }
.page[data-route="home"] .hp-feature-3 .hp-feature-icon { color: #1b6543; }
.page[data-route="home"] .hp-section { padding: 74px 0; border-bottom: 1px solid var(--hp-line); }
.page[data-route="home"] .hp-section-label {
  margin: 0 0 16px;
  color: var(--hp-muted);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0;
}
.page[data-route="home"] .hp-section h2 {
  margin: 0;
  color: var(--hp-ink);
  font-size: clamp(29px, 2.6vw, 36px);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  text-wrap: balance;
}
.page[data-route="home"] .hp-section-intro > p:last-child,
.page[data-route="home"] .hp-section-sub {
  max-width: 620px;
  margin: 16px 0 0;
  color: var(--hp-secondary);
  font-size: 14px;
  line-height: 1.9;
}
.page[data-route="home"] .hp-feature-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: 44px;
}
.page[data-route="home"] .hp-feature {
  position: relative;
  min-width: 0;
  padding: 0 36px;
  background: transparent;
  border: 0;
  border-left: 1px solid var(--hp-line);
  border-radius: 0;
  box-shadow: none;
}
.page[data-route="home"] .hp-feature:first-child { padding-left: 0; border-left: 0; }
.page[data-route="home"] .hp-feature:last-child { padding-right: 0; }
.page[data-route="home"] .hp-feature-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 24px;
}
.page[data-route="home"] .hp-feature-number {
  color: #65695b;
  font-family: inherit;
  font-size: 12px;
  font-variant-numeric: tabular-nums;
}
.page[data-route="home"] .hp-feature-icon { display: flex; align-items: center; color: #5b389e; }
.page[data-route="home"] .hp-feature-icon .ic { width: 22px; height: 22px; }
.page[data-route="home"] h3 {
  margin: 0;
  color: #272a22;
  font-size: 19px;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0;
}
.page[data-route="home"] .hp-feature p {
  max-width: 360px;
  margin: 12px 0 0;
  color: var(--hp-secondary);
  font-size: 14px;
  line-height: 1.95;
}
.page[data-route="home"] .hp-feature-mini { display: none; }
.page[data-route="home"] .hp-token-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
}
.page[data-route="home"] .hp-credit-rules {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  margin: 36px 0 44px;
}
.page[data-route="home"] .hp-credit-rules > div { min-width: 0; }
.page[data-route="home"] .hp-credit-rules h3 { font-size: 17px; }
.page[data-route="home"] .hp-credit-rules p {
  max-width: 580px;
  margin: 12px 0 0;
  color: var(--hp-secondary);
  font-size: 13px;
  line-height: 1.95;
}
.page[data-route="home"] .hp-data-head { margin: 0 0 28px; padding-top: 27px; border-top: 1px solid var(--hp-line); }
.page[data-route="home"] .hp-data-status {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  color: #4c5348;
  font-size: 12px;
  line-height: 1.8;
}
.page[data-route="home"] .hp-data-source { color: var(--hp-muted); font-size: 12px; }
.page[data-route="home"] .hp-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px;
  margin: 0;
}
.page[data-route="home"] .hp-stat { min-width: 0; padding: 0; background: transparent; border: 0; }
.page[data-route="home"] .hp-stat dt { color: var(--hp-muted); font-size: 13px; line-height: 1.8; }
.page[data-route="home"] .hp-stat dd { margin: 12px 0 0; }
.page[data-route="home"] .hp-stat b {
  display: block;
  color: #25261d;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}
.page[data-route="home"] .hp-stat b.is-placeholder {
  color: var(--hp-muted);
  font-size: 18px;
}
.page[data-route="home"] .hp-stat dd > span { display: block; margin-top: 11px; color: var(--hp-muted); font-size: 12px; line-height: 1.8; }
.page[data-route="home"] .hp-ca {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px 15px;
  margin-top: 34px;
  padding-top: 25px;
  border-top: 1px solid var(--hp-line);
  color: var(--hp-muted);
  font-size: 12px;
  line-height: 1.8;
}
.page[data-route="home"] .hp-ca-value { display: flex; align-items: center; gap: 7px; min-width: 0; color: var(--hp-secondary); }
.page[data-route="home"] .hp-ca-value code { font-size: 12px; }
.page[data-route="home"] .hp-token-foot { display: flex; align-items: baseline; justify-content: flex-end; gap: 24px; margin-top: 18px; }
.page[data-route="home"] .hp-token-foot p { max-width: 840px; margin: 0; color: var(--hp-muted); font-size: 12px; line-height: 1.9; }
.page[data-route="home"] .hp-buy { flex-shrink: 0; color: #5c5542; font-size: 12px; line-height: 1.8; text-decoration: none; }
.page[data-route="home"] .hp-buy.disabled { color: var(--hp-muted); cursor: default; }
.page[data-route="home"] .hp-faq-section { display: grid; grid-template-columns: .6fr 1fr; gap: 88px; }
.page[data-route="home"] .hp-faq { min-width: 0; }
.page[data-route="home"] .hp-faq details { padding: 24px 0; border-bottom: 1px solid var(--hp-line); }
.page[data-route="home"] .hp-faq details:first-child { padding-top: 0; }
.page[data-route="home"] .hp-faq details:last-child { border-bottom: 0; }
.page[data-route="home"] .hp-faq summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 30px;
  color: #363a31;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
  list-style: none;
  cursor: pointer;
}
.page[data-route="home"] .hp-faq summary::-webkit-details-marker { display: none; }
.page[data-route="home"] .hp-faq summary > .ic { flex-shrink: 0; color: var(--hp-muted); transition: transform .18s; }
.page[data-route="home"] .hp-faq details[open] summary > .ic { transform: rotate(180deg); }
.page[data-route="home"] .hp-faq details > p { margin: 16px 23px 0 0; color: var(--hp-secondary); font-size: 13px; line-height: 1.95; }
.page[data-route="home"] .hp-start { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding: 52px 0 68px; }
.page[data-route="home"] .hp-start h2 { margin: 0; color: var(--hp-ink); font-size: 30px; font-weight: 500; line-height: 1.5; letter-spacing: 0; }
.page[data-route="home"] .hp-start p { margin: 13px 0 0; color: var(--hp-secondary); font-size: 14px; line-height: 1.8; }
.page[data-route="home"] .hp-start > .btn { flex-shrink: 0; }
.page[data-route="home"] :is(.hp-link, .hp-buy, .hp-visual-tabs button, .hp-faq summary):focus-visible { outline: 2px solid #5b389e; outline-offset: 5px; border-radius: 2px; }
@keyframes hp-packet { from { stroke-dashoffset: 100; } to { stroke-dashoffset: 0; } }
@keyframes hp-orbit { to { transform: rotate(360deg); } }

@media (min-width: 1750px) {
  .page[data-route="home"] .hp-hero { min-height: 780px; column-gap: 64px; }
}
@media (max-width: 1150px) {
  .app[data-route="home"] .topbar { padding-inline: 32px; }
  .page[data-route="home"] .hp-wrap { width: calc(100% - 64px); }
  .page[data-route="home"] .hp-hero { gap: 44px; min-height: 700px; padding-top: 82px; }
  .page[data-route="home"] h1 { font-size: clamp(42px, 4.8vw, 55px); }
  .page[data-route="home"] h1.en { font-size: clamp(42px, 4.8vw, 55px); }
  .page[data-route="home"] .hp-hero-sub { font-size: 15px; }
  .page[data-route="home"] .hp-node-copy > b { font-size: 14px; }
  .page[data-route="home"] .hp-source { padding-right: 14px; }
  .page[data-route="home"] :is(.hp-risk, .hp-budget) { padding-left: 14px; }
  .page[data-route="home"] .hp-agent .mark { width: 76px; height: 76px; }
  .page[data-route="home"] .hp-agent > b { font-size: 14px; }
  .page[data-route="home"] .hp-feature { padding-inline: 25px; }
  .page[data-route="home"] .hp-feature h3 { font-size: 17px; }
  .page[data-route="home"] .hp-faq-section { gap: 48px; }
}
@media (max-width: 850px) {
  .page[data-route="home"] .hp-brand-watermark { display: none; }
  .app[data-route="home"] .topbar { padding-inline: 24px; }
  .page[data-route="home"] .hp-wrap { width: calc(100% - 48px); }
  .page[data-route="home"] .hp-hero { grid-template-columns: 1fr; gap: 46px; min-height: 0; padding: 56px 0 30px; }
  .page[data-route="home"] .hp-hero-copy { max-width: 660px; padding-bottom: 0; }
  .page[data-route="home"] h1 { font-size: clamp(43px, 7.1vw, 60px); }
  .page[data-route="home"] h1.en { font-size: clamp(43px, 7.1vw, 60px); }
  .page[data-route="home"] .hp-hero-sub { max-width: 580px; }
  .page[data-route="home"] .hp-visual { max-width: 740px; margin: 0 auto; }
  .page[data-route="home"] .hp-node-copy > b { font-size: 16px; }
  .page[data-route="home"] .hp-agent .mark { width: 92px; height: 92px; }
  .page[data-route="home"] .hp-agent > b { font-size: 15px; }
  .page[data-route="home"] .hp-service-status { gap: 12px 24px; padding-top: 23px; }
  .page[data-route="home"] .hp-service-status > .hp-service-action { margin-left: 0; }
  .page[data-route="home"] .hp-feature-grid { grid-template-columns: 1fr; gap: 0; margin-top: 35px; }
  .page[data-route="home"] .hp-feature { padding: 27px 0; border-left: 0; border-top: 1px solid var(--hp-line); }
  .page[data-route="home"] .hp-feature:first-child { padding-top: 0; border-top: 0; }
  .page[data-route="home"] .hp-feature:last-child { padding-bottom: 0; }
  .page[data-route="home"] .hp-feature-top { justify-content: flex-start; gap: 16px; margin-bottom: 15px; }
  .page[data-route="home"] .hp-feature h3 { font-size: 19px; }
  .page[data-route="home"] .hp-feature p { max-width: 600px; }
  .page[data-route="home"] .hp-section { padding: 56px 0; }
  .page[data-route="home"] .hp-credit-rules { gap: 36px; }
  .page[data-route="home"] .hp-stats { grid-template-columns: 1fr 1fr; gap: 30px 24px; }
  .page[data-route="home"] .hp-faq-section { grid-template-columns: 1fr; gap: 30px; }
  .page[data-route="home"] .hp-token-foot { align-items: flex-start; flex-direction: column; gap: 14px; }
}
@media (max-width: 520px) {
  .app[data-route="home"] .topbar { padding-inline: 20px; }
  .page[data-route="home"] .hp-wrap { width: calc(100% - 40px); }
  .page[data-route="home"] .hp-hero { gap: 35px; padding: 37px 0 27px; }
  .page[data-route="home"] .hp-hero-kicker { gap: 8px; margin-bottom: 23px; font-size: 12px; }
  .page[data-route="home"] .hp-hero-network { margin-left: 3px; padding-left: 10px; }
  .page[data-route="home"] h1 { font-size: clamp(38px, 10.5vw, 46px); line-height: 1.25; letter-spacing: 0; }
  .page[data-route="home"] h1.en { font-size: clamp(35px, 9.4vw, 45px); line-height: 1.16; letter-spacing: -.025em; }
  .page[data-route="home"] .hp-hero-sub { margin: 20px 0 26px; font-size: 15px; line-height: 1.85; }
  .page[data-route="home"] .hp-hero-actions { gap: 13px 23px; }
  .page[data-route="home"] .hp-hero-actions > .btn { min-height: 48px; padding: 12px 18px; font-size: 14px; }
  .page[data-route="home"] .hp-hero-actions > .hp-link { font-size: 13px; }
  .page[data-route="home"] .hp-availability-note { align-items: flex-start; margin-top: 18px; font-size: 11px; }
  .page[data-route="home"] .hp-availability-note > .ic { margin-top: 3px; }
  .page[data-route="home"] .hp-visual-top { padding-bottom: 15px; font-size: 13px; }
  .page[data-route="home"] :is(.hp-source, .hp-risk, .hp-budget, .hp-execute) { min-height: 28px; padding-block: 5px; padding-inline: 8px; }
  .page[data-route="home"] .hp-source { padding-left: 0; padding-right: 6px; }
  .page[data-route="home"] .hp-source .hp-node-copy > b { white-space: nowrap; }
  .page[data-route="home"] :is(.hp-risk, .hp-budget) { padding-left: 9px; }
  .page[data-route="home"] .hp-execute { padding-top: 8px; }
  .page[data-route="home"] .hp-node-copy > b { font-size: 12.5px; line-height: 1.55; }
  .page[data-route="home"] :is(.hp-source, .hp-risk, .hp-budget, .hp-execute)::before { width: 4px; height: 4px; }
  .page[data-route="home"] .hp-source::before { right: -2px; top: calc(50% - 2px); }
  .page[data-route="home"] :is(.hp-risk, .hp-budget)::before { left: -2px; top: calc(50% - 2px); }
  .page[data-route="home"] .hp-execute::before { top: -2px; left: calc(50% - 2px); }
  .page[data-route="home"] .hp-agent { gap: 2px; }
  .page[data-route="home"] .hp-agent .mark { width: 54px; height: 54px; }
  .page[data-route="home"] .hp-agent > b { font-size: 13px; top:calc(100% + 4px); }
  .page[data-route="home"] .hp-orbit::after { width: 3px; height: 3px; }
  .page[data-route="home"] .hp-visual-tabs { gap: 23px; margin-top: 14px; }
  .page[data-route="home"] .hp-visual-tabs button { min-height: 44px; font-size: 13px; }
  .page[data-route="home"] .hp-visual-caption { min-height: 49px; font-size: 13px; }
  .page[data-route="home"] .hp-service-status { gap: 11px; font-size: 11px; }
  .page[data-route="home"] .hp-service-status > div { gap: 12px; width: 100%; }
  .page[data-route="home"] .hp-service-status dt { min-width: 65px; }
  .page[data-route="home"] .hp-service-action .hp-link { font-size: 11px; }
  .page[data-route="home"] .hp-protocol-strip { gap: 15px 25px; padding: 22px 0 27px; font-size: 11px; }
  .page[data-route="home"] .hp-protocol-label { flex-basis: 100%; }
  .page[data-route="home"] .hp-section { padding: 43px 0; }
  .page[data-route="home"] .hp-section-label { margin-bottom: 12px; font-size: 12px; }
  .page[data-route="home"] .hp-section h2 { font-size: 27px; }
  .page[data-route="home"] .hp-section-intro > p:last-child,
  .page[data-route="home"] .hp-section-sub { font-size: 13px; }
  .page[data-route="home"] .hp-feature-grid { margin-top: 29px; }
  .page[data-route="home"] .hp-feature { padding: 24px 0; }
  .page[data-route="home"] .hp-feature h3 { font-size: 18px; }
  .page[data-route="home"] .hp-feature p { margin-top: 10px; font-size: 13px; }
  .page[data-route="home"] .hp-token-head { align-items: flex-start; flex-direction: column; gap: 12px; }
  .page[data-route="home"] .hp-credit-rules { grid-template-columns: 1fr; gap: 26px; margin: 28px 0 33px; }
  .page[data-route="home"] .hp-stats { gap: 28px 19px; }
  .page[data-route="home"] .hp-stat dt { font-size: 12px; }
  .page[data-route="home"] .hp-stat b { font-size: 19px; }
  .page[data-route="home"] .hp-stat b.is-placeholder { font-size: 16px; }
  .page[data-route="home"] .hp-stat dd > span { font-size: 11px; }
  .page[data-route="home"] .hp-ca { margin-top: 28px; padding-top: 23px; }
  .page[data-route="home"] .hp-token-foot p { font-size: 11px; }
  .page[data-route="home"] .hp-faq-section { gap: 25px; }
  .page[data-route="home"] .hp-faq summary { min-height: 36px; font-size: 14px; }
  .page[data-route="home"] .hp-faq details > p { margin-right: 0; font-size: 13px; }
  .page[data-route="home"] .hp-start { align-items: flex-start; flex-direction: column; gap: 23px; padding: 37px 0 47px; }
  .page[data-route="home"] .hp-start h2 { font-size: 27px; }
  .page[data-route="home"] .hp-start p { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .page[data-route="home"] *,
  .page[data-route="home"] *::before,
  .page[data-route="home"] *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
/* Keep decorative marks out of the functional canvas at every layout width. */
@media (max-width:1800px) {
  .page[data-route="home"] .hp-brand-watermark { display:none; }
}
.page[data-route="home"] .hp-graph .hp-flow-packet {
  opacity:0;
  animation-play-state:paused;
}
.page[data-route="home"] .hp-graph .hp-flow-packet.active {
  opacity:1;
  animation-play-state:running;
}
@media (max-width:520px) {
  .page[data-route="home"] .hp-heading-part { display:block; }
  .page[data-route="home"] .hp-node-icon { display:none; }
  .page[data-route="home"] .hp-source {padding:6px 3px;}
  .page[data-route="home"] .hp-hero-actions {gap:13px 16px;}
  .page[data-route="home"] .hp-hero-actions > .hp-link {font-size:13px;}
}

/* $MAIPRO CA strip above the hero */
.page[data-route="home"] .hp-ca-top { position: relative; z-index: 1; display: flex; align-items: center; flex-wrap: wrap; gap: 6px 12px; margin-top: 14px; padding: 10px 14px; border: 1px solid var(--hp-line); border-radius: 12px; font-size: 13px; line-height: 1.6; color: var(--hp-ink); }
.page[data-route="home"] .hp-ca-top-k { font-weight: 700; letter-spacing: .02em; }
.page[data-route="home"] .hp-ca-top code { font-size: 13px; overflow-wrap: anywhere; word-break: break-all; }
.page[data-route="home"] .hp-ca-top-note { color: var(--hp-muted); }
