/* Public pages extend the generated design-token stylesheet. */
html { scroll-behavior: smooth; }
body { min-height: 100vh; }
.skip-link {
  position: fixed;
  z-index: 10;
  inset-block-start: var(--qrio-space-2);
  inset-inline-start: var(--qrio-space-2);
  padding: var(--qrio-space-3) var(--qrio-space-4);
  color: var(--qrio-color-surface-default);
  background: var(--qrio-color-ink-950);
  transform: translateY(-160%);
}
.skip-link:focus { transform: translateY(0); }
.site-header { border-block-end: var(--qrio-border-thin) solid var(--qrio-color-line-default); }
.site-header__inner {
  display: flex;
  width: min(100%, var(--qrio-size-content-max));
  min-height: calc(var(--qrio-size-touch-minimum) + var(--qrio-space-4));
  margin-inline: auto;
  padding: var(--qrio-space-2) var(--qrio-space-4);
  align-items: center;
  justify-content: space-between;
  gap: var(--qrio-space-4);
}
.brand { min-height: var(--qrio-size-touch-minimum); font-size: var(--qrio-font-size-body-large); }
.brand__suffix { color: var(--qrio-color-ink-600); font-weight: var(--qrio-font-weight-regular); }
.nav-list, .site-footer ul {
  display: flex;
  margin: 0;
  padding: 0;
  align-items: center;
  gap: var(--qrio-space-2);
  list-style: none;
}
.nav-list a {
  display: inline-flex;
  min-height: var(--qrio-size-touch-minimum);
  padding-inline: var(--qrio-space-3);
  align-items: center;
  color: var(--qrio-color-ink-800);
  font-weight: var(--qrio-font-weight-medium);
  text-decoration: none;
}
.nav-list a:hover { text-decoration: underline; }
.nav-list .nav-list__action { color: var(--qrio-color-surface-default); background: var(--qrio-color-accent-700); border-radius: var(--qrio-radius-control); }
main { padding-block: var(--qrio-space-16); }
main a[href]:not(.button) {
  display: inline-flex;
  align-items: center;
  min-width: var(--qrio-size-touch-minimum);
  min-height: var(--qrio-size-touch-minimum);
  vertical-align: middle;
}
main > section { padding-block: var(--qrio-space-16); border-block-start: var(--qrio-border-thin) solid var(--qrio-color-line-default); }
main > section:first-child { border-block-start: 0; }
.hero { padding-block-start: var(--qrio-space-8); }
.lead { color: var(--qrio-color-ink-800); font-size: var(--qrio-font-size-body-large); }
h2 { max-width: var(--qrio-size-prose-max); margin-block: var(--qrio-space-3) var(--qrio-space-6); font-size: clamp(1.6rem, 5vw, var(--qrio-font-size-h2)); line-height: 1.2; letter-spacing: -0.015em; }
h3 { margin-block: 0 var(--qrio-space-2); font-size: var(--qrio-font-size-h3); line-height: 1.3; }
.section-label { margin: 0; color: var(--qrio-color-accent-700); font-size: var(--qrio-font-size-small); font-weight: var(--qrio-font-weight-semibold); letter-spacing: .06em; text-transform: uppercase; }
.proof-strip {
  display: grid;
  margin: var(--qrio-space-16) 0 0;
  padding: var(--qrio-space-4) 0;
  border-block: var(--qrio-border-thin) solid var(--qrio-color-line-default);
  grid-template-columns: repeat(4, 1fr);
  gap: var(--qrio-space-4);
  list-style: none;
  color: var(--qrio-color-ink-800);
  font-size: var(--qrio-font-size-small);
  font-weight: var(--qrio-font-weight-medium);
}
.proof-strip li::before { content: "✓ "; color: var(--qrio-color-semantic-success); font-weight: var(--qrio-font-weight-bold); }
.split-section, .demo { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--qrio-space-12); }
.plain-list { max-width: var(--qrio-size-prose-max); padding-inline-start: var(--qrio-space-6); }
.plain-list li + li { margin-block-start: var(--qrio-space-3); }
.steps { margin: var(--qrio-space-8) 0 0; padding: 0; list-style: none; }
.steps li { display: grid; padding-block: var(--qrio-space-6); border-block-start: var(--qrio-border-thin) solid var(--qrio-color-line-default); grid-template-columns: 4rem minmax(0, 1fr); gap: var(--qrio-space-4); }
.step-number { color: var(--qrio-color-accent-700); font-size: var(--qrio-font-size-small); font-weight: var(--qrio-font-weight-bold); }
.steps p { margin: 0; color: var(--qrio-color-ink-800); }
.note { color: var(--qrio-color-ink-600); font-size: var(--qrio-font-size-small); }
.flow-example { display: flex; flex-wrap: wrap; gap: var(--qrio-space-2); color: var(--qrio-color-ink-800); font-weight: var(--qrio-font-weight-medium); }
.funnel { margin: 0; }
.funnel div { display: flex; min-height: var(--qrio-size-touch-minimum); padding-block: var(--qrio-space-3); border-block-end: var(--qrio-border-thin) solid var(--qrio-color-line-default); align-items: baseline; justify-content: space-between; gap: var(--qrio-space-4); }
.funnel dt { color: var(--qrio-color-ink-600); }
.funnel dd { margin: 0; font-size: var(--qrio-font-size-h3); font-weight: var(--qrio-font-weight-semibold); }
.use-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--qrio-space-12); }
.use-grid article { padding-block: var(--qrio-space-6); border-block-start: var(--qrio-border-thin) solid var(--qrio-color-line-default); }
.privacy-callout, .pilot { background: var(--qrio-color-surface-subtle); box-shadow: 0 0 0 100vmax var(--qrio-color-surface-subtle); clip-path: inset(0 -100vmax); }
.pilot { padding-inline: 0; }
.faq-list { max-width: var(--qrio-size-prose-max); }
.faq-list details { border-block-start: var(--qrio-border-thin) solid var(--qrio-color-line-default); }
.faq-list details:last-child { border-block-end: var(--qrio-border-thin) solid var(--qrio-color-line-default); }
.faq-list summary { min-height: var(--qrio-size-touch-minimum); padding-block: var(--qrio-space-3); cursor: pointer; font-weight: var(--qrio-font-weight-semibold); }
.faq-list p { color: var(--qrio-color-ink-800); }
.prose-page { max-width: var(--qrio-size-prose-max); }
.prose-page > section, .prose-page > aside { padding-block: var(--qrio-space-8); border-block-start: var(--qrio-border-thin) solid var(--qrio-color-line-default); }
.notice, .success, .error-summary { margin-block: var(--qrio-space-8); padding: var(--qrio-space-6); border-inline-start: calc(var(--qrio-border-thin) * 4) solid var(--qrio-color-accent-700); background: var(--qrio-color-surface-subtle); }
.notice h2, .success h2, .error-summary h2 { margin-block-start: 0; }
.error-summary { border-color: var(--qrio-color-semantic-danger); }
.public-form { margin-block: var(--qrio-space-8); }
.field { margin-block-end: var(--qrio-space-6); }
.field label { display: block; margin-block-end: var(--qrio-space-2); font-weight: var(--qrio-font-weight-semibold); }
.help { margin-block: 0 var(--qrio-space-2); color: var(--qrio-color-ink-600); font-size: var(--qrio-font-size-small); }
input, select, textarea {
  display: block;
  width: 100%;
  min-height: var(--qrio-size-touch-minimum);
  padding: var(--qrio-space-3);
  color: var(--qrio-color-ink-950);
  background: var(--qrio-color-surface-default);
  border: var(--qrio-border-thin) solid var(--qrio-color-ink-600);
  border-radius: var(--qrio-radius-control);
  font: inherit;
}
textarea { resize: vertical; }
button.button { cursor: pointer; font: inherit; }
.site-footer {
  display: grid;
  width: min(100%, var(--qrio-size-content-max));
  margin-inline: auto;
  padding: var(--qrio-space-12) var(--qrio-space-6);
  border-block-start: var(--qrio-border-thin) solid var(--qrio-color-line-default);
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--qrio-space-6);
  color: var(--qrio-color-ink-600);
  font-size: var(--qrio-font-size-small);
}
.footer-brand { margin: 0; color: var(--qrio-color-ink-950); font-size: var(--qrio-font-size-body-large); font-weight: var(--qrio-font-weight-semibold); }
.site-footer p { margin-block: var(--qrio-space-1); }
.site-footer a { display: inline-flex; min-height: var(--qrio-size-touch-minimum); padding: var(--qrio-space-2); align-items: center; }
.footer-legal { grid-column: 1 / -1; }
@media (max-width: 52rem) {
  .site-header__inner { align-items: flex-start; flex-direction: column; }
  .nav-list { flex-wrap: wrap; }
  .proof-strip { grid-template-columns: repeat(2, 1fr); }
  .split-section, .demo { grid-template-columns: 1fr; gap: var(--qrio-space-4); }
}
@media (max-width: 36rem) {
  .site-header__inner { padding-inline: var(--qrio-space-4); }
  .nav-list { gap: 0; }
  .nav-list a { padding-inline: var(--qrio-space-2); }
  main { padding: var(--qrio-space-8) var(--qrio-space-4); }
  main > section { padding-block: var(--qrio-space-12); }
  .proof-strip, .use-grid { grid-template-columns: 1fr; }
  .site-footer { grid-template-columns: 1fr; padding-inline: var(--qrio-space-4); }
  .site-footer ul { align-items: flex-start; flex-direction: column; gap: 0; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
