/* V3 composition adapter. Shared type/space/button values belong in marketing-system.css.
 * This boundary preserves the V2 comparison without copying its cascade into new pages.
 */
body.rb-marketing {
  --home-bg: var(--rb-page);
  --home-ink: var(--rb-ink);
  --home-muted: var(--rb-muted);
  --home-line: var(--rb-line);
  --home-soft: var(--rb-soft);
  --home-purple: var(--rb-accent);
  --home-teal: var(--rb-teal);
  --home-gradient: var(--rb-gradient);
  --home-body-width: var(--rb-container);
  --home-radius: var(--rb-radius);
}
body.rb-marketing :is(.home-topline, .home-nav-row, .home-hero) { width: var(--rb-container); max-width: calc(100% - 24px); }
body.rb-marketing .home-nav-row { padding-inline: 0; }
body.rb-marketing :is(.home-theme, .home-menu-toggle) { width: 44px; height: 44px; }
body.rb-marketing .home-hero { container-type: inline-size; padding-block: var(--rb-content-gap) var(--rb-space-16); min-height: 0; }
body.rb-marketing .home-hero .home-lead { margin-top: var(--rb-space-6); }
body.rb-marketing .home-actions { gap: var(--rb-space-6); margin-top: var(--rb-space-8); }
body.rb-marketing .home-text-link { font: 500 14px/1.5 var(--rb-font-body); gap: var(--rb-space-4); }
body.rb-marketing .home-assurances { font-size: 12px; gap: var(--rb-space-4); margin-top: var(--rb-space-6); flex-wrap: wrap; }
body.rb-marketing .home-how-intro { max-width: 960px; }
body.rb-marketing .home-how-list { gap: var(--rb-space-8); }
body.rb-marketing .home-how-step { gap: var(--rb-space-6); }
body.rb-marketing .home-how-step h3 { margin-bottom: var(--rb-space-2); }
/* Upright step numbers for the alternate homepage copy preview. */
.rb-site .home-how--upright .home-how-number { height: auto; }
.rb-site .home-how--upright .home-how-number text { font-size: 96px; letter-spacing: 0; }
.rb-site .home-how--upright .home-how-number svg {
  position: static;
  width: 100%;
  height: auto;
  transform: none;
}
body.rb-marketing .home-source-strip { padding: var(--rb-space-16); gap: var(--rb-space-8); margin-top: 0; }
body.rb-marketing .home-source-options li { font: 500 12px/1.5 var(--rb-font-body); }
body.rb-marketing :is(.home-features, .home-control-inner, .home-faq) { gap: var(--rb-column-gap); }
body.rb-marketing .home-feature-intro > p:not(.home-eyebrow) { margin-block: var(--rb-space-6) var(--rb-space-8); }
body.rb-marketing .home-feature-grid { padding-top: var(--rb-space-8); gap: var(--rb-space-8); }
body.rb-marketing .home-feature { gap: var(--rb-space-8); }
body.rb-marketing .home-feature-content { padding-bottom: var(--rb-space-8); border-color: var(--rb-line); }
body.rb-marketing .home-feature h3 { margin-bottom: var(--rb-space-3); }
body.rb-marketing .home-persona-heading > p:last-child { margin-top: var(--rb-space-6); color: var(--rb-muted); }
body.rb-marketing .home-persona-tabs { gap: var(--rb-space-4); margin-bottom: var(--rb-space-4); }
body.rb-marketing .home-persona-tabs button { padding: var(--rb-card-padding); font: 400 18px/1.5 var(--rb-font-heading); letter-spacing: -.025em; border-radius: var(--rb-radius); }
body.rb-marketing .home-persona-panel { border-radius: var(--rb-radius); padding: var(--rb-space-3); }
body.rb-marketing .home-persona-copy { padding: var(--rb-space-10); }
body.rb-marketing .home-persona-copy > h3 { margin: 0 0 var(--rb-space-6); }
body.rb-marketing .home-persona-kicker { font: 500 12px/1.5 var(--rb-font-body); margin-bottom: var(--rb-space-4); }
body.rb-marketing .home-persona-copy > p:not(.home-persona-kicker) { margin-bottom: var(--rb-space-8); color: var(--rb-muted); }
body.rb-marketing .home-persona-copy ol { margin: 0; }
body.rb-marketing .home-persona-copy li { padding-block: var(--rb-space-4); border-color: var(--rb-line); }
body.rb-marketing .home-persona-copy h4 { font: 600 16px/1.5 var(--rb-font-body); letter-spacing: 0; margin-bottom: var(--rb-space-2); }
body.rb-marketing .home-persona-copy li p { font: 400 14px/1.75 var(--rb-font-body); margin: 0; color: var(--rb-muted); }
/* UI scenes are illustrations; their compact type is not a page-copy precedent. */
body.rb-marketing .home-persona-scene { padding: var(--rb-card-padding); }
body.rb-marketing .home-persona-scene h3 { font: 400 28px/1.25 var(--rb-font-heading); letter-spacing: -.035em; margin-block: var(--rb-space-8); }
body.rb-marketing .home-pricing-heading > p:last-child { margin-top: var(--rb-space-6); }
body.rb-marketing .home-pricing-grid { gap: var(--rb-space-6); }
body.rb-marketing .home-price-card { padding: var(--rb-space-16) var(--rb-space-6) var(--rb-space-10); border-radius: var(--rb-radius); }
body.rb-marketing .home-price-card h3 { margin-bottom: var(--rb-space-4); white-space: normal; }
body.rb-marketing .home-price-intro { font: 400 14px/1.75 var(--rb-font-body); min-height: 49px; }
body.rb-marketing .home-price-card ul { font: 400 14px/1.75 var(--rb-font-body); margin-bottom: var(--rb-space-8); }
body.rb-marketing .home-price-card li { margin-bottom: var(--rb-space-3); }
body.rb-marketing .home-price-amount { font: 600 52px/1.1 var(--rb-font-heading); letter-spacing: -.045em; }
body.rb-marketing .home-price-unit { font: 400 12px/1.5 var(--rb-font-body); }
body.rb-marketing .home-pricing-footer { margin-top: var(--rb-content-gap); }
body.rb-marketing .home-pricing-footer p { font: 400 14px/1.75 var(--rb-font-body); margin-bottom: var(--rb-space-6); }
body.rb-marketing .home-pricing-footer .home-pricing-enterprise { margin: var(--rb-space-6) 0 0; }
body.rb-marketing .home-control-copy > p:not(.home-eyebrow) { margin-block: var(--rb-space-6); color: var(--rb-muted); }
body.rb-marketing .home-check-list { margin: var(--rb-space-6) 0 var(--rb-space-8); font-size: 14px; }
body.rb-marketing .home-check-list li { margin-block: var(--rb-space-3); }
body.rb-marketing .home-faq h2 { margin-bottom: var(--rb-space-8); }
body.rb-marketing .home-cta { padding-inline: var(--rb-space-6); }
body.rb-marketing .home-cta > div { max-width: var(--rb-container); margin-inline: auto; }
body.rb-marketing .home-cta h2 { max-width: 1100px; margin-inline: auto; }
body.rb-marketing .home-cta p:not(.home-eyebrow) { margin-block: var(--rb-space-6) var(--rb-space-8); }
body.rb-marketing .home-cta-note { font-size: 12px; margin-top: var(--rb-space-6); }
body.rb-marketing .home-footer { padding-top: var(--rb-content-gap); }
body.rb-marketing .home-footer-main { gap: var(--rb-space-8); padding-bottom: var(--rb-content-gap); }
body.rb-marketing .home-footer-brand p { font: 400 14px/1.75 var(--rb-font-body); margin-top: var(--rb-space-6); }
body.rb-marketing .home-footer nav > a { font: 400 14px/1.75 var(--rb-font-body); margin-block: var(--rb-space-2); }
body.rb-marketing .home-footer-bottom { padding-block: var(--rb-space-6); font-size: 12px; }
body.rb-marketing .home-footer-bottom nav > a { font-size: 12px; margin: 0; }

@media (max-width: 1250px) {
  body.rb-marketing .home-source-strip { padding: var(--rb-space-10); }
  body.rb-marketing .home-persona-copy { padding: var(--rb-space-8); }
}
@media (max-width: 1050px) {
  body.rb-marketing .home-how-step { gap: var(--rb-space-4); }
  body.rb-marketing .home-source-strip { padding: var(--rb-space-8); }
  body.rb-marketing .home-feature { gap: var(--rb-space-6); }
  body.rb-marketing .home-persona-tabs button { padding: var(--rb-space-6); }
  body.rb-marketing .home-persona-scene h3 { font-size: 26px; }
}
@media (max-width: 820px) {
  body.rb-marketing .home-feature-grid { padding-top: 0; }
}
@media (max-width: 767px) {
  body.rb-marketing .home-hero { padding-block: var(--rb-space-8); }
  body.rb-marketing .home-how-list { gap: var(--rb-space-8); }
  body.rb-marketing .home-source-strip { padding: var(--rb-space-8) var(--rb-space-6); }
  body.rb-marketing .home-source-options { gap: var(--rb-space-3); }
  body.rb-marketing .home-feature { gap: var(--rb-space-6); }
  body.rb-marketing .home-persona-tabs button { font-size: 16px; padding: var(--rb-space-6); }
  body.rb-marketing .home-persona-panel { padding: var(--rb-space-2); }
  body.rb-marketing .home-persona-copy { padding: var(--rb-space-8) var(--rb-space-4) var(--rb-space-4); }
  body.rb-marketing .home-persona-scene h3 { font-size: 24px; }
  body.rb-marketing .home-price-intro { min-height: 0; }
  body.rb-marketing .home-cta > div { max-width: 100%; }
}
@media (max-width: 600px) {
  body.rb-marketing .home-header-cta { display: none; }
}

/* A compact introduction keeps the full-width demo in the first screen. */
body.rb-marketing .home-hero--demo {
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
  grid-template-areas: 'copy art' 'conversion conversion';
  gap: var(--rb-space-6) var(--rb-space-12);
  padding-block: var(--rb-space-6) var(--rb-space-12);
}
.home-hero--demo .home-hero-content { grid-area: copy; }
.home-conversion-row { grid-area: conversion; display: grid; grid-template-columns: auto 32px minmax(0, 1fr); align-items: center; gap: var(--rb-space-6); min-width: 0; }
body.rb-marketing .home-conversion-row .home-actions { display: flex; flex-direction: column; align-items: flex-start; gap: var(--rb-space-2); margin: 0; }
.home-conversion-row .home-trial-note br { display: none; }
.home-conversion-row .home-trial-note { max-width: 210px; font-size: 12px; }
.home-conversion-or { display: flex; align-items: center; justify-content: center; align-self: stretch; color: var(--rb-muted); font-size: 13px; }
.home-conversion-row .home-live-demo { grid-area: auto; }
body.rb-marketing .home-hero--demo .home-eyebrow { margin-bottom: var(--rb-space-4) !important; }
body.rb-marketing .home-hero--demo .home-hero-after { margin-top: var(--rb-space-3); font-size: 30px; line-height: 1.25; letter-spacing: -.035em; }
body.rb-marketing .home-hero--demo .home-lead { max-width: 620px; margin-block: var(--rb-space-4) 0; }
body.rb-marketing .home-hero--demo .home-actions { margin-top: var(--rb-space-6); gap: var(--rb-space-6); }
.home-hero--demo .home-trial-note { margin: 0; color: var(--rb-muted); }
body.rb-marketing .home-hero--demo .home-hero-art { grid-area: art; width: 100%; max-width: 300px; margin: 0; justify-self: center; }
body.rb-marketing .home-hero--demo .home-hero-robot { width: 100%; margin: 0; transform: none; }
body.rb-marketing .home-hero--demo .home-floating-note { left: 0; bottom: 0; padding: var(--rb-space-3); gap: var(--rb-space-3); font-size: 10px; }
body.rb-marketing .home-hero--demo .home-floating-note strong { font-size: 12px; }
body.rb-marketing .home-hero--demo .home-note-icon { padding: var(--rb-space-2); }

/* One slim row with one live path at a time: your business (search) or a sample, plus the launch action. */
.home-live-demo { grid-area: demo; position: relative; z-index: 3; width: 100%; min-width: 0; scroll-margin-top: var(--rb-space-8); }
.home-live-demo-bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--rb-space-4);
  min-height: 74px;
  padding: var(--rb-space-2) var(--rb-space-2) var(--rb-space-2) var(--rb-space-6);
  border: 1.5px solid color-mix(in srgb, var(--rb-accent) 45%, var(--rb-line));
  border-radius: var(--rb-radius);
  background: var(--rb-page);
  box-shadow: 0 18px 44px -30px color-mix(in srgb, var(--rb-accent) 55%, transparent);
  transition: border-color .2s ease, box-shadow .2s ease;
}
.home-live-demo-bar:focus-within { border-color: var(--rb-accent); box-shadow: 0 0 0 4px color-mix(in srgb, var(--rb-accent) 14%, transparent); }
.home-live-demo-bar.is-chosen { border-color: color-mix(in srgb, var(--rb-teal) 70%, var(--rb-line)); }
.home-live-demo-bar.is-nudged { border-color: var(--rb-accent); animation: home-demo-nudge .4s ease; }

/* Both panes share one grid cell so the swap never changes the row height. */
.home-live-demo-stage { display: grid; min-width: 0; }
/* Sequential swap: the outgoing pane leaves in .15s, then the incoming pane arrives, so they never overlap. */
.home-live-demo-pane { grid-area: 1 / 1; display: flex; align-items: center; gap: var(--rb-space-4); min-width: 0; transition: opacity .22s ease .15s, transform .22s ease .15s, visibility 0s linear .15s; }
.home-live-demo-pane[inert] { visibility: hidden; opacity: 0; pointer-events: none; transition: opacity .15s ease, transform .15s ease, visibility 0s linear .15s; }
.home-live-demo-pane--search[inert] { transform: translateX(-12px); }
.home-live-demo-pane--samples[inert] { transform: translateX(12px); }

.home-live-demo-icon { flex: none; display: flex; width: 22px; color: var(--rb-accent); }
.home-live-demo-search, .home-live-demo-selection { flex: 1; min-width: 0; }
.home-live-demo-search[hidden], .home-live-demo-selection[hidden] { display: none; }
.home-live-demo-pane:has(.home-live-demo-selection:not([hidden])) .home-live-demo-icon { display: none; }
.home-live-demo-label { display: flex; align-items: center; gap: 6px; color: var(--rb-ink); font: 600 12px/1.5 var(--rb-font-body); white-space: nowrap; }
.home-live-demo-label-long { margin-left: -6px; overflow: hidden; color: var(--rb-muted); font-weight: 500; text-overflow: ellipsis; }
.home-live-demo-live { position: relative; flex: none; width: 7px; height: 7px; border-radius: 50%; background: #2fb67c; }
.home-live-demo-live::after { content: ''; position: absolute; inset: -4px; border: 2px solid #2fb67c; border-radius: inherit; opacity: 0; animation: home-demo-ping 2.2s ease-out infinite; }
.home-live-demo-input, .home-live-demo-bar gmp-place-autocomplete { display: block; width: 100%; min-width: 0; min-height: 32px; padding: 0; border: 0; border-radius: var(--rb-radius-control); background: var(--rb-page); color: var(--rb-ink); font: 400 16px/1.5 var(--rb-font-body); color-scheme: light; }
/* The bar's focus ring marks the field; a second offset outline would collide with the label. */
body.rb-marketing .home-live-demo-input:focus-visible, body.rb-marketing .home-live-demo-bar gmp-place-autocomplete:focus-visible { outline: 0; }
.home-live-demo-input:disabled { opacity: 1; cursor: progress; }
.home-live-demo-input::placeholder { color: var(--rb-muted); opacity: 1; }
.rb-dark :is(.home-live-demo-input, .home-live-demo-bar gmp-place-autocomplete) { color-scheme: dark; }

.home-live-demo-selection { display: flex; align-items: center; gap: var(--rb-space-3); }
.home-live-demo-selection > div { min-width: 0; }
.home-live-demo-check { flex: none; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: color-mix(in srgb, var(--rb-teal) 16%, transparent); color: var(--rb-teal); }
.home-live-demo-check svg { width: 15px; }
.home-live-demo-selection strong, .home-live-demo-selection [data-demo-business-address] { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.home-live-demo-selection strong { color: var(--rb-ink); font: 600 16px/1.4 var(--rb-font-body); }
.home-live-demo-selection [data-demo-business-address] { color: var(--rb-muted); font-size: 12px; }
.home-live-demo-reset { flex: none; min-height: 44px; margin-left: auto; padding: 0 var(--rb-space-2); border: 0; border-radius: var(--rb-radius-control); background: none; color: var(--rb-accent); font: 500 14px/1.5 var(--rb-font-body); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }

/* Path switches: quiet secondary controls that lock or fade while the other path is in use. */
.home-live-demo-switch, .home-live-demo-back {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: var(--rb-space-2);
  min-height: 44px;
  padding: 0 var(--rb-space-4);
  border: 1px solid var(--rb-line);
  border-radius: 999px;
  background: var(--rb-page);
  color: var(--rb-ink);
  font: 600 13px/1.2 var(--rb-font-body);
  white-space: nowrap;
  cursor: pointer;
  transition: opacity .25s ease, border-color .2s ease, background .2s ease, color .2s ease;
}
.home-live-demo-switch-hint { color: var(--rb-muted); font-weight: 500; }
.home-live-demo-back svg { width: 16px; height: 16px; color: var(--rb-accent); }
:is(.home-live-demo-switch, .home-live-demo-back):hover:not(:disabled) { border-color: color-mix(in srgb, var(--rb-accent) 60%, var(--rb-line)); background: color-mix(in srgb, var(--rb-accent) 6%, var(--rb-page)); }
body.rb-marketing :is(.home-live-demo-switch, .home-live-demo-back, .home-live-demo-reset):focus-visible { outline-offset: 2px; }
.is-typing .home-live-demo-switch { opacity: .4; }
.home-live-demo-switch:disabled { opacity: .35; cursor: not-allowed; }
:is([data-search-error], [data-search-off]) .home-live-demo-back { display: none; }

/* Sample chips scroll sideways when space runs out; inset rings keep focus visible inside the scroller. */
.home-live-demo-samples { flex: 1; min-width: 0; }
.home-live-demo-chips {
  --fade-start: 0px;
  --fade-end: 0px;
  display: flex;
  gap: var(--rb-space-2);
  margin-top: 2px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
  mask-image: linear-gradient(90deg, transparent, #000 var(--fade-start), #000 calc(100% - var(--fade-end)), transparent);
}
.home-live-demo-chips::-webkit-scrollbar { display: none; }
.home-live-demo-chips[data-fade-start="true"] { --fade-start: 28px; }
.home-live-demo-chips[data-fade-end="true"] { --fade-end: 28px; }
.home-live-demo-chip { position: relative; flex: none; scroll-snap-align: start; }
.home-live-demo-chip input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.home-live-demo-chip span { display: flex; align-items: center; gap: 6px; min-height: 34px; padding: 0 var(--rb-space-3); border: 1px solid var(--rb-line); border-radius: 999px; background: var(--rb-page); color: var(--rb-ink); font: 500 14px/1.2 var(--rb-font-body); white-space: nowrap; transition: border-color .2s ease, background .2s ease, box-shadow .2s ease; }
.home-live-demo-chip:hover span { border-color: color-mix(in srgb, var(--rb-accent) 60%, var(--rb-line)); }
.home-live-demo-chip input:checked + span { border-color: var(--rb-accent); background: var(--rb-surface-lavender); font-weight: 600; }
.home-live-demo-chip input:checked + span::before { content: ''; width: 9px; height: 5px; margin-top: -3px; border: solid var(--rb-accent); border-width: 0 0 2px 2px; transform: rotate(-45deg); }
body.rb-marketing .home-live-demo-chip input:focus-visible { outline: 0; }
.home-live-demo-chip input:focus-visible + span { border-color: var(--rb-focus); box-shadow: inset 0 0 0 2px var(--rb-focus); }

body.rb-marketing .home-live-demo-bar .home-live-demo-launch { min-height: 56px; gap: var(--rb-space-4); background: var(--rb-cta-secondary); color: #fff; border: 1px solid rgba(255, 255, 255, .2); font-weight: 600; white-space: nowrap; }
body.rb-marketing .home-live-demo-bar .home-live-demo-launch:is(:hover, :focus-visible) { background: var(--rb-cta-secondary-hover); border-color: rgba(255, 255, 255, .35); }
body.rb-marketing .home-live-demo-bar .home-live-demo-launch:focus-visible { outline-offset: 3px; }

.home-live-demo-meta { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--rb-space-1) var(--rb-space-6); margin-top: var(--rb-space-2); padding-inline: var(--rb-space-2); font: 500 12px/1.5 var(--rb-font-body); color: var(--rb-muted); }
.home-live-demo-assurance { display: flex; flex-wrap: wrap; gap: var(--rb-space-1) var(--rb-space-4); margin: 0; padding: 0; list-style: none; }
.home-live-demo-assurance li { display: flex; align-items: center; gap: 6px; }
.home-live-demo-assurance li::before { content: ''; width: 8px; height: 4px; margin-top: -2px; border: solid var(--rb-teal); border-width: 0 0 1.5px 1.5px; transform: rotate(-45deg); }
body.rb-marketing .home-live-demo-status { margin: 0; text-align: right; }
.home-live-demo-status:empty { display: none; }
.home-live-demo-status[data-tone="prompt"] { color: var(--rb-accent); font-weight: 600; }
.home-live-demo-status a { color: var(--rb-accent); font-weight: 600; text-underline-offset: 3px; }
@keyframes home-demo-ping { 0% { opacity: .7; transform: scale(.6); } 100% { opacity: 0; transform: scale(1.6); } }
@keyframes home-demo-nudge { 25% { transform: translateX(-4px); } 50% { transform: translateX(4px); } 75% { transform: translateX(-2px); } }
@media (prefers-reduced-motion: reduce) {
  .home-live-demo-live::after, .home-live-demo-bar.is-nudged { animation: none; }
  .home-live-demo-pane, .home-live-demo-pane[inert] { transform: none; transition: none; }
}
@media (max-width: 1440px) {
  body.rb-marketing .home-hero--demo .home-hero-art { max-width: 280px; }
}
@media (max-width: 1250px) {
  .home-live-demo-label-long, .home-live-demo-switch-hint { display: none; }
}
@media (max-width: 1050px) {
  body.rb-marketing .home-hero--demo { gap: var(--rb-space-6); }
  .home-conversion-row { grid-template-columns: minmax(0, 1fr); gap: var(--rb-space-2); }
  body.rb-marketing .home-conversion-row .home-actions { flex-direction: row; align-items: center; gap: var(--rb-space-3); margin: 0; }
  .home-conversion-row .home-trial-note br { display: initial; }
  .home-conversion-row .home-trial-note { max-width: none; }
  .home-conversion-or { gap: var(--rb-space-3); }
  .home-conversion-or::before, .home-conversion-or::after { content: ''; flex: 1; height: 1px; background: var(--rb-line); }
  body.rb-marketing .home-hero--demo .home-hero-after { font-size: 26px; }
  body.rb-marketing .home-hero--demo .home-actions { gap: var(--rb-space-4); }
  .home-live-demo-bar { gap: var(--rb-space-3); padding-left: var(--rb-space-4); }
  .home-live-demo-pane { gap: var(--rb-space-3); }
  .home-live-demo-icon { display: none; }
  body.rb-marketing .home-live-demo-bar .home-live-demo-launch { padding-inline: var(--rb-space-4); gap: var(--rb-space-3); }
  .home-live-demo-back { padding-inline: var(--rb-space-3); }
  .home-live-demo-back-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
}
@media (max-width: 767px) {
  body.rb-marketing .home-hero--demo { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'copy' 'conversion' 'art'; gap: var(--rb-space-4); padding-block: var(--rb-space-4) var(--rb-space-8); }
  body.rb-marketing .home-hero--demo .home-hero-after { font-size: 22px; }
  body.rb-marketing .home-hero--demo .home-eyebrow { font-size: 12px; }
  body.rb-marketing .home-hero--demo .home-actions { gap: var(--rb-space-3); flex-wrap: nowrap; margin-top: var(--rb-space-4); }
  body.rb-marketing .home-hero--demo .home-actions .rb-button { flex: none; padding-inline: var(--rb-space-4); gap: var(--rb-space-3); }
  .home-hero--demo .home-trial-note { font-size: 11px; }
  .home-live-demo-bar { grid-template-columns: minmax(0, 1fr); gap: var(--rb-space-2); padding: var(--rb-space-2) var(--rb-space-2) var(--rb-space-2) var(--rb-space-3); }
  .home-live-demo-pane { gap: var(--rb-space-2); }
  .home-live-demo-switch { padding-inline: var(--rb-space-3); font-size: 12px; }
  .home-live-demo-label { font-size: 11px; }
  .home-live-demo-chip span { min-height: 36px; }
  body.rb-marketing .home-live-demo-bar .home-live-demo-launch { min-height: 48px; font-size: 15px; }
  .home-live-demo-meta { padding-inline: var(--rb-space-1); font-size: 11px; }
  .home-live-demo-assurance { gap: var(--rb-space-1) var(--rb-space-3); }
  body.rb-marketing .home-live-demo-status { text-align: left; }
  .home-live-demo-selection strong, .home-live-demo-selection [data-demo-business-address] { white-space: normal; overflow-wrap: break-word; }
  /* Locked anyway while a business is chosen; on phones its width is better spent on the name. */
  .home-live-demo-pane:has(.home-live-demo-selection:not([hidden])) .home-live-demo-switch { display: none; }
  .home-live-demo-reset { font-size: 13px; }
}
@media (max-width: 360px) {
  body.rb-marketing .home-hero--demo { gap: var(--rb-space-2); padding-top: var(--rb-space-2); }
  body.rb-marketing .home-hero--demo .home-lead { margin-top: var(--rb-space-2); }
  body.rb-marketing .home-hero--demo .home-hero-after { margin-top: var(--rb-space-2); }
  body.rb-marketing .home-hero--demo .home-eyebrow { display: none; }
  body.rb-marketing .home-hero--demo .home-hero-after { font-size: 20px; }
  .home-hero--demo .home-trial-note { font-size: 10px; }
  .home-live-demo-assurance li:last-child { display: none; }
}
