.lw-home-section {
  position: relative;
  isolation: isolate;
  padding: clamp(3.25rem, 6.5vw, 6.25rem) 0;
}

.lw-home-section--surface {
  background: linear-gradient(180deg, #fff 0%, var(--lw-wave-surface) 100%);
}

.lw-home-section--ink {
  background: var(--lw-wave-ink);
  color: #f8fafc;
}

.lw-home-copy {
  width: min(860px, calc(100% - 2rem));
  margin: 0 auto 2rem;
  text-align: center;
}

.lw-home-copy h2,
.lw-home-cta-copy h2 {
  margin: 0;
  color: inherit;
  font: 600 clamp(1.9rem, 4vw, 3.4rem)/1.1 var(--lw-font-display);
  letter-spacing: -0.03em;
}

.lw-home-copy > p:not(.lw-wave-eyebrow),
.lw-home-cta-copy > p:not(.lw-wave-eyebrow) {
  max-width: 720px;
  margin: 1rem auto 0;
  color: var(--lw-wave-muted);
  font: 400 1.05rem/1.7 var(--lw-font-body);
}

.lw-home-section--ink .lw-home-copy > p:not(.lw-wave-eyebrow),
.lw-home-section--ink .lw-home-cta-copy > p:not(.lw-wave-eyebrow),
.lw-home-section--ink .lw-home-cta-copy .lw-wave-eyebrow {
  color: #cbd5e1;
}

.lw-home-section--ink .lw-home-cta-copy h2,
.lw-home-section--ink .lw-wave-eyebrow {
  color: #fff;
}

.lw-home-visual svg .s03-left-chip,
.lw-home-visual svg .s03-right-chip,
.lw-home-visual svg [id$="brainwave-core"] {
  transform-box: fill-box;
  transform-origin: center;
}

.lw-home-visual svg .s04-bucket,
.lw-home-visual svg .s04-step,
.lw-home-visual svg [id$="s04-core"],
.lw-home-visual svg [id$="s04m-core"] {
  transform-box: fill-box;
  transform-origin: center;
}

.lw-home-visual svg .s05-rail,
.lw-home-visual svg [id$="s05-core"],
.lw-home-visual svg [id$="s05m-core"] {
  transform-box: fill-box;
  transform-origin: center;
}

.lw-home-visual svg .s06-node,
.lw-home-visual svg .s06-packet {
  transform-box: fill-box;
  transform-origin: center;
}

.lw-home-s04-stage + .lw-home-copy {
  margin-top: 2.25rem;
}

.lw-home-copy--article {
  text-align: left;
}

.lw-home-copy--article h2,
.lw-home-copy--article .lw-wave-eyebrow {
  text-align: center;
}

.lw-home-copy--article > p:not(.lw-wave-eyebrow) {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
  color: var(--lw-wave-slate);
  text-align: left;
}

.lw-pdf-lead {
  margin: 0 0 0.65rem !important;
  color: var(--lw-wave-ink) !important;
  font: 600 1rem/1.4 var(--lw-font-display) !important;
}

.lw-home-jobs-stage {
  position: relative;
}

.lw-home-visual svg .split-panel,
.lw-home-visual svg .split-click,
.lw-home-visual svg .split-link,
.lw-home-visual svg .split-rec,
.lw-home-visual svg .split-chat,
.lw-home-visual svg .jobs-card,
.lw-home-visual svg [id$="jobs-core"],
.lw-home-visual svg [id$="jobsm-core"],
.lw-home-visual svg .chat-device,
.lw-home-visual svg .chat-link,
.lw-home-visual svg .chat-bubble,
.lw-home-visual svg .chat-cursor,
.lw-home-visual svg .chat-noclick,
.lw-home-visual svg .fork-bar,
.lw-home-visual svg .fork-dest,
.lw-home-visual svg .fork-split,
.lw-home-visual svg .reuse-card,
.lw-home-visual svg .reuse-tray,
.lw-home-visual svg .reuse-copy,
.lw-home-visual svg .week-day,
.lw-home-visual svg .week-chore,
.lw-home-visual svg .week-lane,
.lw-home-visual svg .week-clear,
.lw-home-visual svg .src-page,
.lw-home-visual svg .src-stamp,
.lw-home-visual svg .gate-folder,
.lw-home-visual svg .gate-stamp,
.lw-home-visual svg .gate-out,
.lw-home-visual svg .named-head,
.lw-home-visual svg .named-row,
.lw-home-visual svg .named-mark,
.lw-home-visual svg .id-chip,
.lw-home-visual svg .id-card,
.lw-home-visual svg .id-lock,
.lw-home-visual svg .id-copy,
.lw-home-visual svg .id-mess,
.lw-home-visual svg .q-weak,
.lw-home-visual svg .q-strong,
.lw-home-visual svg .asset-frame,
.lw-home-visual svg .asset-meter,
.lw-home-visual svg .inbox-row,
.lw-home-visual svg .inbox-bucket,
.lw-home-visual svg .inbox-list,
.lw-home-visual svg .quote-drawer,
.lw-home-visual svg .quote-card,
.lw-home-visual svg .quote-piece,
.lw-home-visual svg .quote-mark,
.lw-home-visual svg .bal-left,
.lw-home-visual svg .bal-right,
.lw-home-visual svg .bal-fulcrum,
.lw-home-visual svg .bal-beam,
.lw-home-visual svg .bal-line,
.lw-home-visual svg .pile-note,
.lw-home-visual svg .pile-folder,
.lw-home-visual svg .pile-step,
.lw-home-visual svg .hero-ring,
.lw-home-visual svg .site-chrome,
.lw-home-visual svg .site-block,
.lw-home-visual svg .site-cta,
.lw-home-visual svg .site-pin,
.lw-home-visual svg .site-card,
.lw-home-visual svg .found-bar,
.lw-home-visual svg .found-hub,
.lw-home-visual svg .found-card,
.lw-home-visual svg .found-pin,
.lw-home-visual svg .found-mark,
.lw-home-visual svg .found-dot,
.lw-home-visual svg .time-chip,
.lw-home-visual svg .time-card,
.lw-home-visual svg .time-packet {
  transform-box: fill-box;
  transform-origin: center;
}

.lw-scene-id {
  width: min(1120px, calc(100% - 2rem));
  margin: 0 auto 0.65rem;
  color: var(--lw-wave-muted);
  font: 600 0.72rem/1.2 var(--lw-font-display);
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.lw-scene-meta {
  width: min(760px, calc(100% - 2rem));
  margin: 0.85rem auto 0;
  color: var(--lw-wave-muted);
  font: 400 0.85rem/1.55 var(--lw-font-body);
  text-align: center;
}

.lw-scene-meta code {
  font-size: 0.8em;
}

.lw-scene-index {
  width: min(1120px, calc(100% - 2rem));
  margin: 0 auto 2.25rem;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 0.55rem 0.75rem;
  text-align: left;
}

.lw-scene-index a {
  display: block;
  padding: 0.55rem 0.7rem;
  border: 1px solid var(--lw-wave-border);
  border-radius: 0.7rem;
  background: #fff;
  color: var(--lw-wave-ink);
  font: 600 0.78rem/1.35 var(--lw-font-display);
  text-decoration: none;
}

.lw-scene-index a:hover {
  border-color: var(--lw-wave-blue);
}

.lw-scene-index span {
  display: block;
  color: var(--lw-wave-muted);
  font: 500 0.68rem/1.3 var(--lw-font-body);
}

.lw-scene-copy {
  width: min(760px, calc(100% - 2rem));
  margin: 0.85rem auto 0;
  padding: 0.85rem 0.95rem;
  overflow: auto;
  border: 1px solid var(--lw-wave-border);
  border-radius: 0.75rem;
  background: #f8fafc;
  color: var(--lw-wave-slate);
  font: 400 0.72rem/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  text-align: left;
  white-space: pre;
}

.lw-home-section:has(.lw-scene-fold) {
  padding-top: 1.15rem;
  padding-bottom: 1.5rem;
}

.lw-scene-fold {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  box-sizing: border-box;
  height: 100dvh;
  padding: 1rem 0 1.15rem;
}

.lw-scene-fold .lw-home-copy {
  width: min(860px, calc(100% - 2rem));
  margin: 0 auto 0.7rem;
}

.lw-scene-fold .lw-home-copy h2 {
  font-size: clamp(1.35rem, 2.6vw, 2.05rem);
  line-height: 1.15;
}

.lw-scene-fold .lw-home-copy > p:not(.lw-wave-eyebrow) {
  max-width: 62ch;
  margin-top: 0.4rem;
  font-size: 0.95rem;
  line-height: 1.5;
}

.lw-scene-fold .lw-home-visual-shell,
.lw-scene-fold .lw-home-visual {
  min-height: 0;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lw-scene-fold .lw-home-visual svg {
  width: 100%;
  height: 100%;
  max-height: 100%;
  overflow: hidden;
}

.lw-home-s04-stage,
.lw-home-s05-stage,
.lw-home-s06-stage,
.lw-home-jobs-stage {
  position: relative;
}

.lw-home-split {
  width: min(1120px, calc(100% - 2rem));
  margin: 1.5rem auto 1.25rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.lw-home-split-card {
  padding: 1.15rem 1.1rem;
  border: 1px solid var(--lw-wave-border);
  border-radius: 1rem;
  background: #fff;
  text-align: left;
}

.lw-home-split-card h3 {
  margin: 0 0 0.45rem;
  font: 600 1.05rem/1.3 var(--lw-font-display);
}

.lw-home-split-card p {
  margin: 0;
  color: var(--lw-wave-slate);
  font: 400 0.95rem/1.55 var(--lw-font-body);
}

.lw-home-bridge {
  width: min(760px, calc(100% - 2rem));
  margin: 0 auto;
  color: var(--lw-wave-slate);
  font: 500 1rem/1.65 var(--lw-font-body);
  text-align: center;
}

.lw-home-visual-shell {
  width: 100%;
}

.lw-home-visual {
  width: 100%;
  min-height: 1px;
}

.lw-home-visual svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.lw-home-visual[data-layout="mobile"] {
  width: min(720px, 100%);
  margin-inline: auto;
}

.lw-home-caption-stack {
  position: relative;
  width: min(760px, calc(100% - 2rem));
  margin: 1.25rem auto 0;
  min-height: 8.5rem;
}

.lw-home-caption {
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  margin: 0;
  padding: 0.85rem 1rem;
  border: 1px solid rgb(203 213 225 / 70%);
  border-radius: 0.75rem;
  background: rgb(255 255 255 / 92%);
  color: var(--lw-wave-slate);
  font: 500 0.95rem/1.55 var(--lw-font-body);
  text-align: center;
}

.lw-home-caption strong {
  display: block;
  margin-bottom: 0.2rem;
  color: var(--lw-wave-ink);
  font-family: var(--lw-font-display);
}

.lw-home-promises,
.lw-home-pains,
.lw-home-chips {
  width: min(900px, calc(100% - 2rem));
  margin: 1.5rem auto 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.65rem;
}

.lw-home-promises span,
.lw-home-pains span,
.lw-home-chips span {
  padding: 0.45rem 0.8rem;
  border: 1px solid var(--lw-wave-border);
  border-radius: 999px;
  background: #fff;
  color: var(--lw-wave-slate);
  font: 600 0.8rem/1.2 var(--lw-font-display);
}

.lw-home-link {
  display: inline-flex;
  margin-top: 1.25rem;
  color: var(--lw-wave-blue);
  font: 600 0.95rem/1.4 var(--lw-font-display);
  text-decoration: none;
}

.lw-home-link:hover {
  text-decoration: underline;
}

.lw-home-proof-grid {
  width: min(1180px, calc(100% - 2rem));
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0.85rem;
}

.lw-home-proof-card {
  padding: 1.15rem 1rem 1.25rem;
  border: 1px solid var(--lw-wave-border);
  border-radius: 1rem;
  background: #fff;
}

.lw-home-proof-avatar {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  margin-bottom: 0.85rem;
  border-radius: 50%;
  background: var(--lw-wave-surface);
  color: var(--lw-wave-blue);
  font: 700 0.95rem/1 var(--lw-font-display);
}

.lw-home-proof-card p {
  margin: 0 0 1rem;
  color: var(--lw-wave-slate);
  font: 400 0.92rem/1.55 var(--lw-font-body);
}

.lw-home-proof-card cite {
  display: block;
  color: var(--lw-wave-ink);
  font: 600 0.85rem/1.3 var(--lw-font-display);
  font-style: normal;
}

.lw-home-proof-card cite span {
  display: block;
  margin-top: 0.15rem;
  color: var(--lw-wave-muted);
  font: 400 0.78rem/1.3 var(--lw-font-body);
}

.lw-home-cta-copy {
  width: min(760px, calc(100% - 2rem));
  margin: 0 auto;
  text-align: center;
}

.lw-home-cta-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
  margin-top: 1.75rem;
}

.lw-wave-cta--ghost {
  background: transparent;
  border-color: #94a3b8;
  color: #f8fafc;
}

.lw-wave-cta--ghost:hover {
  background: rgb(255 255 255 / 8%);
  border-color: #e2e8f0;
}

.lw-home-cta-meta,
.lw-home-teaser {
  margin: 1.1rem 0 0;
  color: #94a3b8;
  font: 400 0.92rem/1.6 var(--lw-font-body);
}

.lw-home-cta-meta a,
.lw-home-teaser a {
  color: #67e8f9;
  text-decoration: none;
}

.lw-home-cta-meta a:hover,
.lw-home-teaser a:hover {
  text-decoration: underline;
}

.lw-wave-page.is-static-fallback .lw-home-caption-stack,
.lw-home-section.is-static-fallback .lw-home-caption-stack {
  display: grid;
  gap: 0.65rem;
  min-height: 0;
}

.lw-wave-page.is-static-fallback .lw-home-caption,
.lw-home-section.is-static-fallback .lw-home-caption {
  position: static;
  opacity: 1;
  transform: none;
}

@media (max-width: 1100px) {
  .lw-home-proof-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 767px) {
  .lw-scene-fold {
    height: auto;
    grid-template-rows: auto auto;
    padding: 0.75rem 0 1rem;
  }

  .lw-scene-fold .lw-home-visual-shell,
  .lw-scene-fold .lw-home-visual {
    height: auto;
  }

  .lw-scene-fold .lw-home-visual svg {
    height: auto;
    max-height: none;
  }

  .lw-home-split,
  .lw-home-proof-grid {
    grid-template-columns: 1fr;
  }

  .lw-home-copy h2,
  .lw-home-cta-copy h2 {
    font-size: clamp(1.8rem, 9vw, 2.5rem);
  }

  .lw-home-caption-stack {
    display: grid;
    gap: 0.65rem;
    min-height: 0;
  }

  .lw-home-caption {
    position: static;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lw-home-caption,
  .lw-home-proof-card,
  .lw-home-split-card,
  .lw-page-compare article {
    opacity: 1 !important;
    transform: none !important;
  }
}
