:root {
  --ar-primary: #2563eb;
  --ar-primary-rgb: 37, 99, 235;
  --ar-primary-text-emphasis: #1e40af;
  --ar-primary-bg-subtle: #eff6ff;
  --ar-primary-border-subtle: #bfdbfe;
  --ar-success: #0f8f4e;
  --ar-success-rgb: 15, 143, 78;
  --ar-info: #14b8a6;
  --ar-info-rgb: 20, 184, 166;
  --ar-warning: #f59e0b;
  --ar-warning-rgb: 245, 158, 11;
  --qb-navy: #0f172a;
  --qb-blue: #2563eb;
  --qb-green: #0f8f4e;
  --qb-teal: #14b8a6;
  --qb-surface: #ffffff;
  --qb-soft: #f8fafc;
  --qb-border: #e2e8f0;
}
html { scroll-behavior: smooth; }
body { color: var(--qb-navy); background: #fff; }
a { text-underline-offset: .2em; }
.skip-link { position: fixed; top: -5rem; left: 1rem; z-index: 10000; padding: .75rem 1rem; background: #fff; color: #111827; border-radius: .75rem; box-shadow: 0 10px 30px rgba(15,23,42,.18); }
.skip-link:focus { top: 1rem; }
.qb-navbar { background: rgba(255,255,255,.87); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(226,232,240,.8); }
.qb-navbar .navbar-brand { font-weight: 800; letter-spacing: -.04em; }
.qb-navbar .navbar-brand img { width: 36px; height: 36px; }
.qb-navbar .nav-link { font-weight: 600; }
.qb-navbar .nav-link.active { color: var(--qb-blue); }
.qb-launch-pill { border: 1px solid rgba(37,99,235,.18); background: #eff6ff; color: #1e40af; }
.qb-hero { min-height: 980px; }
.qb-hero-copy { max-width: 790px; }
.qb-hero-subtitle { max-width: 720px; font-size: clamp(1.05rem,2vw,1.25rem); }
.qb-hero .display-2 { letter-spacing: -.055em; }
.qb-phone-shot { display: block; object-fit: cover; border-radius: 2.1rem; border: 7px solid rgba(255,255,255,.96); box-shadow: 0 1.8rem 4.5rem rgba(15,23,42,.2); background: #fff; }
.qb-phone-center { width: 322px; }
.qb-phone-side { width: 297px; }
.qb-feature-icon { width: 46px; height: 46px; display: inline-flex; align-items: center; justify-content: center; border-radius: 14px; background: rgba(15,23,42,.1); color: #fff; font-size: 1.35rem; }
.qb-stat-card { min-height: 145px; border: 1px solid rgba(37,99,235,.08); }
.qb-stat-card .display-5 { letter-spacing: -.04em; }
.qb-binded { min-height: 640px; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.qb-binded .binded-item { inset: 0; display: flex; align-items: center; justify-content: center; padding: 2.5rem; }
.qb-binded .binded-item img { max-height: 590px; max-width: 86%; width: auto; border-radius: 2.1rem; border: 7px solid rgba(255,255,255,.94); box-shadow: 0 2rem 4rem rgba(15,23,42,.24); }
.qb-binded .binded-item.dashboard img { max-width: 94%; border-radius: 1.4rem; }
.qb-capability-band { background: var(--qb-navy); color: #fff; overflow: hidden; }
.qb-capability-band .item { min-height: 170px; border-left: 1px solid rgba(255,255,255,.13); }
.qb-capability-band .item:first-child { border-left: 0; }
.qb-capability-band i { color: #60a5fa; }
.qb-usecase { height: 100%; border: 1px solid var(--qb-border); background: #fff; border-radius: 1.5rem; padding: 2rem; transition: transform .25s ease, box-shadow .25s ease; }
.qb-usecase:hover { transform: translateY(-4px); box-shadow: 0 1rem 2.5rem rgba(15,23,42,.08); }
.qb-usecase .icon { width: 58px; height: 58px; border-radius: 18px; display: inline-flex; align-items: center; justify-content: center; font-size: 1.55rem; }
.qb-session-panel { background: linear-gradient(135deg,#0f172a 0%,#172554 65%,#0f766e 130%); color: #fff; }
.qb-session-ticket { background: rgba(255,255,255,.98); color: var(--qb-navy); border-radius: 1.75rem; box-shadow: 0 2rem 5rem rgba(2,6,23,.28); }
.qb-progress { height: .55rem; background: #e2e8f0; border-radius: 999px; overflow: hidden; }
.qb-progress > span { display: block; height: 100%; background: linear-gradient(90deg,#2563eb,#14b8a6); border-radius: inherit; }
.qb-check { width: 28px; height: 28px; flex: 0 0 auto; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: #dcfce7; color: #166534; }
.qb-cta { background: linear-gradient(135deg,#2563eb 0%,#1d4ed8 48%,#0f8f4e 125%); }
.qb-footer { background: #f1f5f9; border-top: 1px solid var(--qb-border); }
.qb-footer .navbar-brand { font-weight: 800; }
.qb-footer a { color: #475569; }
.qb-footer a:hover { color: var(--qb-blue); }
.qb-page-hero { background: radial-gradient(circle at 80% 20%,rgba(20,184,166,.16),transparent 32%), radial-gradient(circle at 12% 5%,rgba(37,99,235,.17),transparent 28%), #f8fafc; padding: 10rem 0 5rem; }
.qb-page-hero h1 { letter-spacing: -.055em; }
.qb-kicker { display: inline-flex; align-items: center; gap: .5rem; color: #1d4ed8; font-weight: 700; font-size: .875rem; text-transform: uppercase; letter-spacing: .1em; }
.qb-kicker::before { content: ''; width: 1.8rem; height: 2px; background: currentColor; }
.qb-screenshot-card { background: #fff; border: 1px solid var(--qb-border); border-radius: 2rem; padding: 1rem; box-shadow: 0 1.5rem 4rem rgba(15,23,42,.1); }
.qb-screenshot-card img { width: 100%; border-radius: 1.4rem; }
.qb-feature-row { border-top: 1px solid var(--qb-border); padding: 1.4rem 0; }
.qb-feature-row:first-child { border-top: 0; }
.qb-icon-box { width: 52px; height: 52px; border-radius: 16px; display: inline-flex; align-items: center; justify-content: center; font-size: 1.45rem; }
.qb-pricing-card { border: 1px solid var(--qb-border); border-radius: 2rem; height: 100%; background: #fff; overflow: hidden; }
.qb-pricing-card.featured { border: 2px solid var(--qb-blue); box-shadow: 0 1.5rem 4rem rgba(37,99,235,.12); }
.qb-price { font-size: clamp(2.5rem,6vw,4rem); font-weight: 800; letter-spacing: -.06em; }
.qb-support-card { border: 1px solid var(--qb-border); border-radius: 1.5rem; padding: 2rem; height: 100%; background: #fff; }
.qb-legal-wrap { max-width: 950px; }
.qb-legal-meta { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; padding: 1rem 1.25rem; border: 1px solid var(--qb-border); border-radius: 1rem; background: #fff; }
.qb-legal-toc { border: 1px solid var(--qb-border); border-radius: 1.5rem; padding: 1.5rem; background: #f8fafc; }
.qb-legal-toc ol { columns: 2; gap: 2rem; margin-bottom: 0; }
.qb-legal-section { scroll-margin-top: 7rem; padding: 2rem 0; border-bottom: 1px solid var(--qb-border); }
.qb-legal-section h2 { margin-bottom: 1rem; }
.qb-legal-section h3 { margin-top: 1.5rem; font-size: 1.1rem; }
.qb-legal-section li { margin-bottom: .55rem; }
.qb-legal-callout { border-left: 4px solid var(--qb-blue); background: #eff6ff; padding: 1rem 1.25rem; border-radius: 0 1rem 1rem 0; }
.legal-summary { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; margin: 1.5rem 0; }
.legal-summary article { border: 1px solid var(--qb-border); border-radius: 1.25rem; padding: 1.25rem; background: #fff; }
.legal-summary strong, .legal-summary span { display: block; }
.legal-summary span { color: #64748b; margin-top: .4rem; font-size: .94rem; }
.legal-toc { border: 1px solid var(--qb-border); border-radius: 1.5rem; padding: 1.5rem; background: #f8fafc; }
.legal-toc ol { columns: 2; gap: 2rem; margin: 1rem 0 0; }
.legal-section { scroll-margin-top: 7rem; padding: 2rem 0; border-bottom: 1px solid var(--qb-border); }
.legal-callout { border-left: 4px solid var(--qb-blue); background: #eff6ff; padding: 1rem 1.25rem; border-radius: 0 1rem 1rem 0; }
.legal-meta { display:flex; flex-wrap:wrap; gap:.75rem 1.5rem; padding:1rem 1.25rem; border:1px solid var(--qb-border); border-radius:1rem; }
.table-responsive table { min-width: 680px; }
.qb-anchor { scroll-margin-top: 7rem; }
.qb-app-badge { opacity: .6; pointer-events: none; }
.qb-note { font-size: .875rem; color: #64748b; }
@media (max-width: 991.98px) {
  .qb-hero { min-height: auto; }
  .qb-navbar .navbar-collapse { margin-top: .75rem; padding: 1rem; background: #fff; border: 1px solid var(--qb-border); border-radius: 1rem; box-shadow: 0 1rem 3rem rgba(15,23,42,.12); }
  .qb-phone-center { width: min(76vw,322px); }
  .qb-binded { min-height: 540px; }
}
@media (max-width: 767.98px) {
  .qb-page-hero { padding-top: 8rem; }
  .qb-binded { min-height: 500px; }
  .qb-binded .binded-item { padding: 1.5rem; }
  .qb-binded .binded-item img { max-height: 470px; }
  .qb-capability-band .item { border-left: 0; border-top: 1px solid rgba(255,255,255,.13); }
  .qb-capability-band .item:first-child { border-top: 0; }
  .legal-summary { grid-template-columns: 1fr; }
  .legal-toc ol, .qb-legal-toc ol { columns: 1; }
}
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; scroll-behavior:auto!important; }
}
.qb-svg-icon { width: 1em; height: 1em; display: inline-block; fill: currentColor; vertical-align: -0.125em; }
