@import url("/tokens.css");

:root {
  --muted:var(--ink-soft);
  --line:var(--rule);
  --line-strong:var(--rule-strong);
  --accent:var(--flame-deep);
  --accent-fill:var(--flame-solid);
  --accent-hover:var(--flame-solid-hover);
  --accent-soft:var(--flame-wash);
  --accent-line:color-mix(in oklch,var(--accent) 40%,var(--line));
  --tint:var(--paper-sunk);
  --inverse:var(--on-flame);
  --inverse-muted:oklch(var(--lcc-dark-text-secondary));
  --inverse-line:oklch(var(--lcc-dark-border-strong));
  --brand-shadow:oklch(var(--lcc-shadow) / .12);
  --radius:16px;
  font-family:var(--font-sans);
  color:var(--ink);
  background:var(--paper);
  font-synthesis:none;
}

* {
  box-sizing:border-box;
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:24px;
}
body {
  margin:0;
  font-size:16px;
  line-height:1.6;
}
button,input,select {
  font:inherit;
}
button,a,input,select {
  -webkit-tap-highlight-color:transparent;
}
a {
  color:inherit;
  text-underline-offset:4px;
}
a:hover {
  color:var(--accent);
}
button {
  cursor:pointer;
}
img {
  max-width:100%;
  display:block;
}
button:disabled {
  cursor:wait;
}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible {
  outline:2px solid var(--focus-ring);
  outline-offset:3px;
}
h1,h2,h3,h4,p,figure {
  margin:0;
}
h1,h2,h3,h4 {
  line-height:1.15;
  letter-spacing:-.035em;
}
h1 {
  font-size:clamp(2.75rem,4.1vw,4rem);
  font-weight:600;
}
h1 em {
  font-style:normal;
  color:var(--accent);
}
h2 {
  font-size:clamp(2rem,3vw,2.75rem);
  font-weight:550;
}
h3 {
  font-size:1.15rem;
  font-weight:600;
  letter-spacing:-.02em;
}
h4 {
  font-size:1.2rem;
  font-weight:600;
}
p {
  color:var(--muted);
}
[hidden] {
  display:none!important;
}
.wrap {
  width:min(1216px,calc(100% - 80px));
  margin-inline:auto;
}
.skip {
  position:fixed;
  left:16px;
  top:-100px;
  background:oklch(var(--lcc-dark-surface-canvas));
  color:var(--inverse);
  padding:12px;
  z-index:20;
}
.skip:focus {
  top:12px;
}
.site-header {
  min-height:104px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  border-bottom:1px solid var(--line);
}
.brand {
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  line-height:1.17;
  font-size:.9rem;
  letter-spacing:-.01em;
}
.brand img {
  width:36px;
  height:36px;
  object-fit:contain;
}
.brand strong {
  font-size:1.12rem;
  font-weight:650;
}
.site-header nav {
  display:flex;
  gap:30px;
  align-items:center;
  font-size:.875rem;
  font-weight:500;
}
.site-header nav a {
  text-decoration:none;
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:20px;
  min-height:48px;
  background:var(--accent-fill);
  border:1px solid var(--accent-fill);
  border-radius:12px;
  color:var(--inverse);
  text-decoration:none;
  padding:13px 20px;
  font-size:.9rem;
  font-weight:600;
  line-height:1.4;
  text-align:center;
  transition:background .15s;
}
.button:hover {
  color:var(--on-button-hover);
  background:var(--accent-hover);
  border-color:var(--accent);
}
.button.small {
  min-height:42px;
  padding:10px 16px;
}
.button.secondary {
  background:transparent;
  color:var(--ink);
  border-color:var(--line-strong);
}
.button.secondary:hover {
  background:var(--tint);
}
.button:disabled {
  opacity:.65;
}
.text-link {
  font-size:.9rem;
  font-weight:600;
  text-decoration:underline;
  text-decoration-color:var(--line-strong);
}
.actions {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:20px;
  margin-top:25px;
}
.eyebrow {
  font-size:.75rem;
  text-transform:uppercase;
  letter-spacing:.11em;
  font-weight:650;
  color:var(--accent);
  margin-bottom:18px;
}
.status-dot {
  display:inline-block;
  width:6px;
  height:6px;
  background:var(--accent);
  border-radius:50%;
  margin-right:7px;
  vertical-align:2px;
}
.hero {
  display:grid;
  grid-template-columns:1.08fr 1fr;
  gap:60px;
  align-items:center;
  padding-block:70px 64px;
}
.hero-lede {
  font-size:1.125rem;
  line-height:1.7;
  margin-top:25px;
  max-width:510px;
}
.hero-copy .fine {
  margin-top:17px;
}
.fine {
  font-size:.8125rem;
  line-height:1.6;
}
.hero-visual {
  min-width:0;
  align-self:center;
}
.visual-label {
  display:flex;
  justify-content:space-between;
  gap:16px;
  font-size:.75rem;
  letter-spacing:.04em;
  color:var(--muted);
  margin-bottom:13px;
}
.visual-label span:first-child {
  font-weight:700;
  color:var(--ink);
}
.host-window {
  background:var(--surface);
  border:1px solid var(--line-strong);
  border-radius:12px;
  box-shadow:0 18px 55px var(--brand-shadow);
  overflow:hidden;
}
.window-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border-bottom:1px solid var(--line);
  padding:12px 17px;
  font-size:.75rem;
  background:var(--tint);
  color:var(--muted);
}
.window-dots {
  color:var(--line-strong);
  letter-spacing:3px;
}
.live-label {
  font-size:.75rem;
  color:var(--accent);
  font-weight:700;
}
.host-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:20px 22px;
  border-bottom:1px solid var(--line);
}
.host-toolbar strong {
  display:block;
  font-size:.9375rem;
  line-height:1.5;
}
.mini-label {
  display:block;
  letter-spacing:.075em;
  font-size:.75rem;
  font-weight:600;
  color:var(--muted);
  line-height:1.6;
}
.pill {
  display:inline-block;
  border:1px solid var(--line);
  padding:3px 8px;
  border-radius:12px;
  font-size:.75rem;
  font-weight:550;
  line-height:1.5;
  white-space:normal;
  background:var(--paper);
  color:var(--muted);
}
.pill.verified {
  border-color:var(--line);
  background:var(--tint);
  color:var(--ink);
}
.pill.attention {
  border-color:var(--accent-line);
  background:var(--accent-soft);
  color:var(--accent);
}
.host-content {
  padding:18px 22px;
}
.mic-line {
  font-size:.75rem;
  color:var(--ink);
  display:flex;
  align-items:center;
  gap:6px;
}
.mic-line>span:last-child {
  margin-left:auto;
  color:var(--muted);
}
.audio-bars {
  letter-spacing:-1px;
  margin-right:3px;
}
.viewer-question {
  margin-top:24px;
}
.viewer-question p {
  font-size:.875rem;
  font-weight:500;
  margin-top:5px;
  color:var(--ink);
}
.answer-card {
  border:1px solid var(--line);
  background:var(--tint);
  padding:17px;
  margin-top:13px;
  border-radius:8px;
}
.answer-card p {
  color:var(--ink);
  font-size:1.3125rem;
  line-height:1.35;
  letter-spacing:-.02em;
  margin:12px 0 15px;
  font-weight:550;
}
.answer-source {
  font-size:.75rem;
  color:var(--muted);
}
.unknown-line {
  padding:17px 0 0;
}
.unknown-line p {
  font-size:.75rem;
  margin-top:7px;
  color:var(--ink);
}
.unknown-line p span {
  display:block;
  color:var(--muted);
}
.window-foot {
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:11px 22px;
  font-size:.75rem;
  background:var(--tint);
  border-top:1px solid var(--line);
  color:var(--muted);
}
.visual-note {
  border-left:2px solid var(--accent);
  padding-left:13px;
  margin:18px 0 0 20px;
  font-size:.8125rem;
  line-height:1.5;
}
.platform-strip {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:24px 0;
  border-block:1px solid var(--line);
  font-size:.75rem;
}
.platform-strip>span:first-child {
  font-size:.75rem;
  letter-spacing:.12em;
  font-weight:650;
  color:var(--muted);
}
.platform-strip p {
  color:var(--ink);
  font-weight:500;
}
.platform-strip>span:not(:first-child) {
  color:var(--muted);
}
.strip-tail {
  font-size:.75rem;
}
.section {
  padding-block:80px;
}
.problem {
  display:grid;
  grid-template-columns:.9fr 1.5fr;
  gap:70px;
}
.problem-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px 40px;
}
.problem-grid article>span {
  font-size:.75rem;
  color:var(--accent);
}
.problem-grid h3 {
  margin:6px 0 9px;
}
.problem-grid p {
  font-size:.9rem;
  line-height:1.65;
}
.tinted {
  background:var(--tint);
  border-block:1px solid var(--line);
}
.section-heading {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:60px;
  margin-bottom:35px;
}
.section-heading>p {
  max-width:370px;
  font-size:.9375rem;
}
.steps {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:32px 50px;
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:steps;
}
.steps li {
  border-top:1px solid var(--line);
  padding-top:16px;
}
.steps li>span {
  font-size:.75rem;
  color:var(--accent);
  font-weight:600;
}
.steps h3 {
  margin:9px 0;
}
.steps p {
  font-size:.875rem;
  max-width:300px;
}
.walkthrough-tabs {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border:1px solid var(--line);
  border-radius:9px 9px 0 0;
  background:var(--tint);
  overflow:hidden;
}
.walkthrough-tabs button {
  border:0;
  border-right:1px solid var(--line);
  background:transparent;
  text-align:left;
  padding:18px 22px;
  color:var(--muted);
  font-size:.75rem;
  display:flex;
  align-items:center;
  gap:10px;
}
.walkthrough-tabs button:last-child {
  border-right:0;
}
.walkthrough-tabs button span {
  font-size:.875rem;
  font-weight:600;
}
.walkthrough-tabs button[aria-selected=true] {
  background:var(--surface);
  color:var(--accent);
  box-shadow:inset 0 3px var(--accent);
}
.walkthrough-tabs button:focus-visible {
  outline-offset:-5px;
}
.walkthrough-panel {
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:45px;
  padding:38px;
  border:1px solid var(--line);
  border-top:0;
  border-radius:0 0 12px 12px;
  background:var(--surface);
  align-items:center;
  min-height:438px;
}
.walkthrough-copy h3 {
  font-size:1.65rem;
  line-height:1.2;
  margin-bottom:18px;
}
.walkthrough-copy p:not(.eyebrow) {
  font-size:.875rem;
  margin-bottom:13px;
}
.sample-label {
  font-size:.75rem;
  letter-spacing:.05em;
  color:var(--muted);
  display:block;
  margin-top:28px;
}
.software-card {
  background:var(--paper);
  border:1px solid var(--line-strong);
  border-radius:9px;
  min-width:0;
  overflow:hidden;
}
.software-heading {
  padding:19px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-bottom:1px solid var(--line);
}
.software-heading h4 {
  font-size:1rem;
  margin-top:4px;
}
.facts {
  margin:0;
  padding:0 20px;
}
.facts>div {
  display:grid;
  grid-template-columns:.9fr 1.3fr;
  gap:22px;
  padding:13px 0;
  border-bottom:1px solid var(--line);
  font-size:.75rem;
}
.facts>div:last-child {
  border:0;
}
.facts dt {
  color:var(--muted);
}
.facts dd {
  margin:0;
  color:var(--ink);
  font-weight:500;
}
.software-bottom {
  padding:13px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-size:.75rem;
  border-top:1px solid var(--line);
  color:var(--muted);
  background:var(--tint);
}
.sample-answer {
  padding:20px;
}
.sample-answer h4 {
  font-size:1.1rem;
  margin:8px 0 12px;
}
.sample-answer.unknown {
  background:var(--accent-soft);
  border-top:1px solid var(--line);
}
.sample-answer p {
  font-size:.8125rem;
}
.host-table {
  padding:0 15px;
}
.host-table [role=row] {
  display:grid;
  grid-template-columns:.95fr 1.25fr 1fr;
  gap:12px;
  padding:11px 0;
  border-bottom:1px solid var(--line);
  font-size:.75rem;
}
.host-table [role=row]:last-child {
  border-bottom:0;
}
.host-table small {
  font-size:.75rem;
  display:block;
  color:var(--muted);
  margin-top:2px;
}
.table-heading {
  color:var(--muted);
}
.text-live {
  color:var(--ink);
}
.summary-stats {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin:0;
  padding:20px;
  border-bottom:1px solid var(--line);
}
.summary-stats dt {
  font-size:.75rem;
  color:var(--muted);
}
.summary-stats dd {
  font-size:1.75rem;
  line-height:1.2;
  letter-spacing:-.06em;
  margin:6px 0 0;
}
.trial-section {
  background:oklch(var(--lcc-dark-surface-canvas));
  border-radius:16px;
  padding:45px 48px;
  color:var(--inverse);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
}
.trial-section .eyebrow {
  color:var(--inverse-muted);
}
.trial-section p {
  color:var(--inverse-muted);
  font-size:.9375rem;
  margin:20px 0;
}
.trial-section .text-link {
  color:var(--inverse);
  text-decoration-color:var(--inverse-line);
}
.trial-details {
  border-top:1px solid var(--inverse-line);
}
.trial-details>div {
  border-bottom:1px solid var(--inverse-line);
  padding:12px 0;
}
.trial-details span {
  font-size:.75rem;
  letter-spacing:.12em;
  display:block;
  color:var(--inverse-muted);
  margin-bottom:3px;
}
.trial-details strong {
  font-size:.875rem;
  font-weight:500;
}
.trial-details p {
  font-size:.8125rem;
  margin-bottom:0;
}
.faq-section {
  display:grid;
  grid-template-columns:.75fr 1fr;
  gap:80px;
}
.faq-section .text-link {
  display:inline-block;
  margin-top:22px;
}
.faq details {
  border-bottom:1px solid var(--line);
}
.faq details:first-child {
  border-top:1px solid var(--line);
}
.faq summary {
  cursor:pointer;
  padding:16px 30px 16px 0;
  position:relative;
  list-style:none;
  font-size:.9375rem;
  font-weight:550;
}
.faq summary::-webkit-details-marker {
  display:none;
}
.faq summary:after {
  content:'+';
  position:absolute;
  right:2px;
  top:13px;
  font-size:1.3rem;
  font-weight:400;
  color:var(--accent);
}
.faq details[open] summary:after {
  content:'−';
}
.faq details p {
  font-size:.875rem;
  padding:0 20px 20px 0;
}
.apply-section {
  background:var(--tint);
  padding-block:70px;
  border-block:1px solid var(--line);
}
.apply-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:95px;
  align-items:center;
}
.apply-grid>div>p:not(.eyebrow) {
  margin-top:22px;
  max-width:420px;
}
.apply-grid .actions {
  align-items:flex-start;
  flex-direction:column;
  gap:12px;
}
form {
  min-width:0;
}
#beta-form {
  background:var(--surface);
  padding:28px;
  border:1px solid var(--line);
  border-radius:12px;
}
#beta-form h3 {
  margin-bottom:22px;
}
.form-row {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:15px;
}
label {
  display:block;
  font-size:.875rem;
  font-weight:500;
  margin-bottom:16px;
}
input:not([type=hidden]),select {
  display:block;
  width:100%;
  margin-top:6px;
  border:1px solid var(--line-strong);
  border-radius:12px;
  background:var(--surface);
  color:var(--ink);
  padding:10px 12px;
  min-height:46px;
  font-size:1rem;
}
#beta-form .button {
  width:100%;
  margin-top:15px;
  justify-content:space-between;
}
.honeypot {
  position:absolute;
  left:-10000px;
  width:1px;
  height:1px;
  overflow:hidden;
}
.form-status {
  font-size:.875rem;
  margin-top:12px;
}
.form-status:empty {
  display:none;
}
.form-status.error,.error {
  color:var(--accent);
}
.form-status.success {
  color:var(--ink);
  border-left:2px solid var(--ink);
  padding-left:12px;
}
.site-footer {
  display:grid;
  grid-template-columns:1fr auto;
  gap:30px;
  padding-block:40px 30px;
}
.site-footer p {
  font-size:.75rem;
  margin-top:15px;
}
.site-footer nav {
  display:flex;
  align-items:flex-start;
  gap:25px;
  font-size:.8125rem;
}
.site-footer nav a {
  text-decoration:none;
}
.site-footer .footer-note {
  grid-column:1/-1;
  border-top:1px solid var(--line);
  margin:0;
  padding-top:23px;
  font-size:.75rem;
}
.nav-toggle {
  border:1px solid var(--line-strong);
  color:var(--ink);
  background:var(--surface);
  border-radius:12px;
  padding:10px 12px;
  font-size:.875rem;
}
.nav-toggle span {
  margin-left:8px;
}
.note {
  padding:16px 20px;
  border:1px solid var(--line);
  border-radius:8px;
  font-size:.875rem;
  background:var(--surface);
}
/* Shared download and onboarding surfaces. */
.page-header {
  padding-block:45px 30px;
  max-width:820px;
}
.page-header h1 {
  font-size:clamp(2.1rem,4vw,3.2rem);
}
.page-header>p:not(.eyebrow) {
  margin-top:18px;
  max-width:700px;
}
.page-body {
  padding-bottom:70px;
}
.portal-nav {
  display:flex;
  gap:24px;
  font-size:.875rem;
  align-items:center;
}
.notice {
  padding:20px 24px;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:10px;
  margin-bottom:24px;
}
.notice h2 {
  font-size:1.3rem;
  margin-bottom:8px;
}
.notice p+p {
  margin-top:10px;
}
.notice .actions {
  margin-top:16px;
}
.activation-box {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:25px;
  padding:24px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--tint);
  margin-bottom:26px;
}
.activation-box h2 {
  font-size:1.1rem;
  margin-bottom:8px;
}
.activation-box code {
  font-family:var(--font-mono);
  font-size:1.7rem;
  color:var(--ink);
  letter-spacing:.06em;
  overflow-wrap:anywhere;
}
.activation-box p {
  font-size:.875rem;
}
.activation-copy {
  min-width:0;
}
.release-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin:25px 0;
}
.release-card {
  display:flex;
  flex-direction:column;
  background:var(--surface);
  border:1px solid var(--line);
  padding:24px;
  border-radius:10px;
  min-width:0;
}
.release-card h3 {
  font-size:1.25rem;
  margin:12px 0 8px;
}
.release-card>p {
  font-size:.875rem;
}
.release-meta {
  margin:20px 0;
}
.release-meta>div {
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:7px 0;
  border-bottom:1px solid var(--line);
  font-size:.8125rem;
}
.release-meta dt {
  color:var(--muted);
}
.release-meta dd {
  margin:0;
  text-align:right;
}
.checksum {
  font-size:.75rem;
  margin-bottom:15px;
  overflow-wrap:anywhere;
}
.checksum code {
  display:block;
  font-size:.75rem;
  margin-top:5px;
  line-height:1.7;
}
.release-action {
  margin-top:auto;
  display:grid;
  gap:10px;
}
.release-action .button {
  width:100%;
}
.release-state {
  font-size:.8125rem;
}
.release-instructions {
  font-size:.8125rem;
  margin-bottom:20px;
  white-space:pre-line;
  overflow-wrap:anywhere;
}
.download-title {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
}
.download-title h2,.guide-heading {
  font-size:1.7rem;
  margin:30px 0 12px;
}
.download-title a {
  font-size:.875rem;
}
.arch-guide {
  padding:20px 24px;
  background:var(--tint);
  border:1px solid var(--line);
  border-radius:10px;
}
.arch-guide h2 {
  font-size:1.125rem;
  margin-bottom:8px;
}
.arch-guide p {
  font-size:.875rem;
}
.arch-guide strong {
  color:var(--ink);
}
.setup-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:35px;
}
.setup-list {
  list-style:none;
  counter-reset:setup;
  margin:0;
  padding:0;
}
.setup-list li {
  counter-increment:setup;
  position:relative;
  padding:20px 0 20px 50px;
  border-bottom:1px solid var(--line);
}
.setup-list li:before {
  content:counter(setup,decimal-leading-zero);
  position:absolute;
  left:0;
  top:20px;
  color:var(--accent);
  font-size:.875rem;
  font-weight:600;
}
.setup-list h3 {
  font-size:1.0625rem;
  margin-bottom:7px;
}
.setup-list p {
  font-size:.9375rem;
}
.guide-column {
  max-width:850px;
}
.setup-troubleshoot {
  margin-top:40px;
}
.setup-troubleshoot h2 {
  font-size:1.7rem;
  margin-bottom:20px;
}
.setup-troubleshoot h3 {
  margin:24px 0 8px;
}
.download-footer {
  margin-top:30px;
  border-top:1px solid var(--line);
  padding-top:22px;
  font-size:.875rem;
}
.loading-text {
  font-size:.9375rem;
}
.connection-state {
  padding:14px 18px;
  background:var(--accent-soft);
  border-radius:8px;
  margin-bottom:20px;
  font-size:.875rem;
  color:var(--accent);
}
@media(min-width:1450px) {
  .hero {
    gap:80px;
  }
}
@media(max-width:1050px) {
  .site-header nav {
    gap:20px;
  }
  .hero {
    gap:32px;
  }
  .hero h1 {
    font-size:3.1rem;
  }
  .hero .button {
    font-size:.8125rem;
  }
  .platform-strip .strip-tail {
    display:none;
  }
  .problem {
    gap:35px;
    grid-template-columns:.8fr 1.2fr;
  }
  .walkthrough-panel {
    padding:28px;
    gap:28px;
  }
  .apply-grid {
    gap:45px;
  }
  .trial-section {
    gap:40px;
  }
  .release-grid {
    gap:12px;
  }
  .release-card {
    padding:20px;
  }
}
@media(max-width:800px) {
  .wrap {
    width:calc(100% - 40px);
  }
  .site-header {
    min-height:84px;
    flex-wrap:wrap;
    gap:0;
    padding-block:17px;
  }
  .site-header nav {
    width:100%;
    flex-wrap:wrap;
    gap:15px;
    padding-top:20px;
  }
  .site-header nav[data-enhanced=true] {
    display:none;
  }
  .site-header nav[data-open=true] {
    display:flex;
    flex-direction:column;
    align-items:stretch;
    padding:20px 0 0;
    gap:0;
  }
  .site-header nav[data-open=true] a {
    padding:12px 6px;
  }
  .site-header nav[data-open=true] .button {
    margin-top:8px;
  }
  .hero {
    padding-block:45px;
    grid-template-columns:1fr;
    gap:38px;
  }
  .hero h1 {
    font-size:clamp(2.75rem,8vw,4rem);
    max-width:620px;
  }
  .hero-lede {
    max-width:560px;
  }
  .hero-visual {
    width:100%;
    max-width:580px;
    justify-self:center;
  }
  .hero .button {
    font-size:.9rem;
  }
  .visual-label {
    font-size:.75rem;
  }
  .mini-label {
    font-size:.75rem;
  }
  .hero-visual .pill {
    font-size:.75rem;
  }
  .mic-line,.answer-source,.window-foot {
    font-size:.75rem;
  }
  .platform-strip {
    justify-content:center;
    flex-wrap:wrap;
    gap:8px 16px;
    padding:20px 0;
  }
  .platform-strip>span:first-child {
    flex-basis:100%;
    text-align:center;
    margin-bottom:5px;
  }
  .section {
    padding-block:52px;
  }
  .problem {
    grid-template-columns:1fr;
    gap:30px;
  }
  .problem h2 br {
    display:none;
  }
  .section-heading {
    align-items:flex-start;
    flex-direction:column;
    gap:18px;
    margin-bottom:26px;
  }
  .section-heading>p {
    max-width:580px;
  }
  .steps {
    gap:24px;
    grid-template-columns:repeat(2,1fr);
  }
  .walkthrough-tabs {
    grid-template-columns:repeat(2,1fr);
  }
  .walkthrough-tabs button {
    padding:16px;
  }
  .walkthrough-tabs button:nth-child(2) {
    border-right:0;
  }
  .walkthrough-tabs button:nth-child(-n+2) {
    border-bottom:1px solid var(--line);
  }
  .walkthrough-panel {
    grid-template-columns:1fr;
    min-height:0;
    padding:24px;
  }
  .sample-label {
    margin-top:18px;
  }
  .walkthrough-copy h3 br {
    display:none;
  }
  .trial-section {
    grid-template-columns:1fr;
    padding:30px;
    gap:25px;
  }
  .trial-section h2 br {
    display:none;
  }
  .trial-section p {
    margin:16px 0;
  }
  .faq-section {
    grid-template-columns:1fr;
    gap:28px;
  }
  .apply-section {
    padding-block:45px;
  }
  .apply-grid {
    grid-template-columns:1fr;
    gap:30px;
  }
  .site-footer {
    grid-template-columns:1fr;
    gap:25px;
  }
  .site-footer nav {
    gap:20px;
    flex-wrap:wrap;
  }
  .release-grid {
    grid-template-columns:1fr;
  }
  .release-card {
    padding:24px;
  }
  .release-meta {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 22px;
  }
  .release-card .button {
    max-width:420px;
  }
  .activation-box {
    align-items:flex-start;
    flex-direction:column;
    gap:15px;
  }
  .setup-grid {
    grid-template-columns:1fr;
    gap:0;
  }
  .portal-nav {
    gap:15px;
    font-size:.8125rem;
  }
  .download-title {
    align-items:flex-start;
    flex-direction:column;
    gap:0;
  }
  .download-title h2 {
    margin-bottom:5px;
  }
}
@media(max-width:420px) {
  .wrap {
    width:calc(100% - 32px);
  }
  .hero h1 {
    font-size:2.6rem;
  }
  .hero .actions {
    align-items:stretch;
    flex-direction:column;
  }
  .hero .actions .text-link {
    text-align:center;
  }
  .hero-lede {
    font-size:1rem;
  }
  .eyebrow {
    font-size:.75rem;
  }
  .problem-grid {
    gap:24px;
  }
  .problem-grid h3 {
    font-size:1.05rem;
  }
  .host-toolbar {
    padding:16px;
  }
  .host-content {
    padding:16px;
  }
  .mic-line {
    flex-wrap:wrap;
  }
  .mic-line>span:last-child {
    margin-left:0;
    flex-basis:100%;
    padding-left:0;
  }
  .visual-label {
    font-size:.75rem;
    gap:10px;
  }
  .answer-card p {
    font-size:1.2rem;
  }
  .walkthrough-panel {
    padding:20px 16px;
  }
  .facts {
    padding:0 15px;
  }
  .facts>div {
    gap:15px;
  }
  .software-heading {
    padding:16px;
  }
  .software-heading .pill {
    font-size:.75rem;
  }
  .software-bottom {
    padding:12px 15px;
    flex-wrap:wrap;
  }
  .host-table [role=row] {
    gap:8px;
    grid-template-columns:.85fr 1.05fr 1fr;
  }
  .form-row {
    grid-template-columns:1fr;
    gap:0;
  }
  #beta-form {
    padding:22px;
  }
  .trial-section {
    padding:26px;
  }
  .release-meta {
    grid-template-columns:1fr;
  }
  .site-header .portal-nav {
    width:100%;
    padding-top:15px;
  }
  .page-header {
    padding-top:32px;
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto;
  }
  * {
    transition:none!important;
  }
}
/* Reading text remains comfortably sized;
compact screen samples use metadata sizes. */
.problem-grid p,.steps p,.section-heading>p,.walkthrough-copy p:not(.eyebrow),.trial-section>div>p:not(.eyebrow),.faq summary,.faq details p,.setup-list p,.notice p {
  font-size:1rem;
}
.hero-visual .pill,.viewer-question p,.mic-line {
  font-size:.875rem;
}
.actual-capture {
  margin-top:22px;
  border:1px solid var(--line);
  border-radius:8px;
  padding:0 20px;
  background:var(--surface);
}
.actual-capture summary {
  padding:16px 0;
  cursor:pointer;
  font-size:.9375rem;
  font-weight:600;
}
.actual-capture summary span {
  display:block;
  font-size:.75rem;
  font-weight:400;
  color:var(--muted);
  margin-top:3px;
}
.actual-capture figure {
  padding-bottom:20px;
}
.actual-capture img {
  width:100%;
  height:auto;
  border-radius:12px;
}
.actual-capture figcaption {
  font-size:.8125rem;
  color:var(--muted);
  margin-top:12px;
}

/* Same restrained controls as desktop; responsive placement retains navigation. */
.site-header { flex-wrap:wrap; }
.site-header>.theme-toggle { margin-left:auto; }
.site-header nav { margin-left:auto; }
code { font-family:var(--font-mono); }
.form-message.error { color:var(--danger); }
.pill.attention { background:var(--warn-wash); color:var(--warn); border-color:color-mix(in oklch,var(--warn) 45%,var(--line)); }
.trial-section :focus-visible { outline-color:oklch(var(--lcc-dark-focus-ring)); }
@media (max-width:700px) {
  .site-header>.theme-toggle { order:2; margin:0; }
  .site-header>.nav-toggle { margin-left:auto; }
  .site-header nav { order:3; }
}

@media(max-width:800px) { #primary-nav .theme-toggle { margin-top:18px; } }
