/* Karaoke-first homepage. Existing design tokens provide light and dark themes. */
body.landing-page--home { font-family: var(--font-body); background: var(--landing-paper); line-height: 1.5; }
.landing-page--home a { text-decoration: none; }
.landing-page--home .landing-shell--home { --home-night: #111827; --home-blue: var(--landing-accent); background: var(--landing-paper); }
.landing-page--home :is(h1,h2,h3) { font-family: inherit; }
.landing-page--home .landing-home-content > section { width: min(calc(100% - 6rem), var(--shell-width)); margin-inline: auto; padding: 7rem 0; scroll-margin-top: 5rem; }
.landing-page--home .landing-home-content > section + section { border-top: 1px solid var(--landing-rule); }
.landing-page--home .landing-home-content h2 { margin: .9rem 0 0; font-size: clamp(2.4rem,4.5vw,4.25rem); line-height: 1.02; letter-spacing: -.045em; font-weight: 650; }
.landing-page--home .landing-home-content h3 { font-size: 1.45rem; line-height: 1.2; letter-spacing: -.025em; font-weight: 600; }
.landing-page--home .landing-home-content p { color: var(--landing-ink-soft); font-size: 1.075rem; line-height: 1.6; }
.landing-page--home .landing-text-link { color: var(--landing-accent); font-weight: 600; }
.landing-page--home .landing-shell--home .landing-button--framed { padding: 0; border: 0; background: transparent; }
.landing-page--home .landing-shell--home .landing-button--framed::before,.landing-page--home .landing-shell--home .landing-button--framed::after { display:none; }
.landing-page--home .landing-shell--home .landing-button--framed > span { display:inline-flex; min-height:3rem; align-items:center; padding:.8rem 1.5rem; border-radius:var(--radius-round); background:var(--color-accent); color:var(--color-accent-ink); font-weight:600; white-space:nowrap; }
.landing-page--home .landing-shell--home .landing-button--quiet > span { background:rgb(255 255 255 / .92); color:#16181d; box-shadow:inset 0 0 0 1px rgb(22 24 29 / .32); }

/* The photographic hero is intentionally dark in either site theme. */
.landing-page--home .landing-shell--home .landing-hero {
  --color-accent: #0071e3;
  --color-accent-ink: #fff;
  --landing-focus: #9fc5ff;
  min-height: max(42rem, 100dvh);
  padding: 6rem max(3rem, calc((100vw - 70rem)/2)) 4rem;
  display: flex;
  align-items: center;
  color-scheme: dark;
  color: #fff;
  background: #101114;
}
.landing-page--home .landing-shell--home .landing-hero::before {
  background: linear-gradient(90deg, rgb(8 12 20 / .92), rgb(8 12 20 / .62) 48%, rgb(8 12 20 / .1) 82%);
}
.landing-page--home .landing-shell--home .landing-hero::after { content: none; }
.landing-page--home .landing-shell--home .landing-hero__visual { background: #101114; }
.landing-page--home .landing-shell--home .landing-hero__visual img {
  opacity: 1; filter: none; mix-blend-mode: normal; mask-image: none;
  animation: none; transform: none; will-change: auto; object-position: 60% center;
}
.landing-page--home .landing-shell--home .landing-hero__copy { width:100%; max-width:43rem; margin:0; align-items:flex-start; text-align:left; }
.landing-page--home .landing-shell--home .landing-hero__copy .landing-kicker { color:#b9d3ff!important; letter-spacing:.02em; text-transform:none; }
.landing-page--home .landing-shell--home .landing-hero h1 { max-width:11ch; margin:1.25rem 0 0; color:#fff; font-size:clamp(3.5rem,6vw,5.5rem); line-height:.98; letter-spacing:-.055em; }
.landing-page--home .landing-shell--home .landing-hero__lede { max-width:34rem; margin-top:1.35rem; color:rgb(255 255 255 / .88); font-size:clamp(1.15rem,2vw,1.4rem); }
.landing-page--home .landing-shell--home .landing-hero .landing-actions { margin-top:1.75rem; gap:.75rem; }
.landing-page--home .landing-hero__trial { max-width:35rem; margin-top:1rem; color:rgb(255 255 255 / .78)!important; font-size:.875rem!important; font-weight:400; }
.landing-page--home .landing-shell--home .landing-hero .landing-button--quiet > span { background:rgb(255 255 255 / .12); color:#fff; box-shadow:inset 0 0 0 1px rgb(255 255 255 / .48); }

.home-section-intro { max-width:48rem; }
.home-process__steps { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin:4rem 0 0; padding:0; list-style:none; }
.home-process__steps li { min-height:15rem; padding:2rem 2.5rem 2rem 0; border-top:1px solid var(--landing-rule); }
.home-process__steps li + li { padding-left:2.5rem; border-left:0; }
.home-process__steps span,.home-audiences__list article > span { display:block; margin-bottom:2.25rem; color:var(--landing-accent); font-family:var(--font-mono); font-size:.78rem; font-weight:600; }
.home-process__steps p { margin-top:.75rem; }

.home-control-story,.home-practice { display:grid; grid-template-columns:minmax(0,.9fr) minmax(26rem,1.1fr); gap:clamp(3rem,8vw,8rem); align-items:center; }
.home-control-story__copy > p:not(.landing-kicker),.home-practice__copy > p:not(.landing-kicker) { margin-top:1.5rem; }
.home-control-list { margin:2rem 0 0; }
.home-control-list div { display:grid; grid-template-columns:5rem 1fr; gap:1rem; padding:1rem 0; border-top:1px solid var(--landing-rule); }
.home-control-list dt { color:var(--landing-ink); font-weight:600; }.home-control-list dd { margin:0; color:var(--landing-ink-soft); }
.home-track-demo { min-width:0; }
.home-track-demo iframe { display:block; width:100%; height:38rem; border:1px solid var(--landing-rule); border-radius:var(--radius-large); background:var(--landing-surface-raised); box-shadow:var(--shadow-overlay); }

.home-practice__steps { margin:0;padding:0;list-style:none;border-top:1px solid var(--landing-rule); }
.home-practice__steps li { display:grid;grid-template-columns:5rem 1fr;gap:1rem;padding:1.25rem 0;border-bottom:1px solid var(--landing-rule); }
.home-practice__steps strong { color:var(--landing-ink); }.home-practice__steps span { color:var(--landing-ink-soft); }

.landing-page--home .landing-live-demo__intro { max-width:48rem; }.landing-page--home .landing-live-demo__intro > p:last-child { margin-top:1.25rem; }.landing-page--home .landing-live-demo__frame { height:min(42rem,75vh);margin-top:3rem;overflow:hidden;border:1px solid var(--landing-rule);border-radius:var(--radius-large);background:var(--landing-surface-raised);box-shadow:var(--shadow-overlay); }.landing-page--home .landing-live-demo__frame iframe { width:100%;height:100%;border:0; }.home-demo-caption { display:flex;justify-content:space-between;gap:2rem;align-items:center;margin-top:1rem; }.home-demo-caption p { font-size:.8rem!important; }

.home-audiences__list { display:grid; grid-template-columns:repeat(2,1fr); gap:1.5rem; margin-top:3rem; }
.home-audiences__list article,
.home-audiences__list article:nth-child(even) {
  padding:clamp(1.75rem,3vw,3rem); border:0; border-radius:var(--radius-large);
  background:var(--landing-surface); box-shadow:var(--shadow-surface);
}
.home-audiences__list article > span { margin-bottom:1.5rem; }
.home-audiences__list p { margin-top:.75rem; }
.home-sharing { display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);align-items:start; }.home-sharing p + p { margin-top:1.25rem; }.home-sharing__note { padding-top:1.25rem;border-top:1px solid var(--landing-rule);font-size:.85rem!important; }
.landing-page--home .landing-home-content > .landing-final-signup { display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:end;padding-block:6rem; }.landing-final-signup__copy > p:last-child { max-width:42rem;margin-top:1.25rem; }.landing-final-signup__actions { display:flex;align-items:center;gap:1.5rem; }

html[data-home-motion-ready] .landing-page--home [data-home-reveal] { opacity:0;transform:translateY(1.25rem);transition:opacity .65s ease,transform .65s var(--landing-ease-out); }.landing-page--home [data-home-reveal="scale"] { transform:scale(.985); }.landing-page--home [data-home-revealed] { opacity:1!important;transform:none!important; }
@media(max-width:63.999rem){.home-control-story,.home-practice{gap:3rem}.home-process__steps li{padding-right:1.5rem}.home-process__steps li+li{padding-left:1.5rem}.home-audiences__list article{padding-right:2rem}.home-audiences__list article:nth-child(even){padding-left:2rem}}
@media(max-width:47.999rem){.landing-page--home .landing-home-content>section{width:calc(100% - 3rem);padding-block:4.5rem}.landing-page--home .landing-shell--home .landing-hero{min-height:max(42rem,100dvh);padding:6rem 1.5rem 3rem;align-items:flex-end}.landing-page--home .landing-shell--home .landing-hero::before{background:linear-gradient(0deg,rgb(8 12 20 / .96),rgb(8 12 20 / .45) 74%)}.landing-page--home .landing-shell--home .landing-hero__visual img{object-position:68% center}.landing-page--home .landing-shell--home .landing-hero h1{font-size:clamp(3rem,13vw,4.1rem)}.home-process__steps,.home-control-story,.home-practice,.home-audiences__list,.home-sharing,.landing-page--home .landing-home-content>.landing-final-signup{grid-template-columns:1fr}.home-process__steps li,.home-process__steps li+li,.home-audiences__list article,.home-audiences__list article:nth-child(even){min-height:0;padding:2rem 0;border-left:0}.home-process__steps span{margin-bottom:1.25rem}.home-control-story{gap:3rem}.home-track-demo iframe{height:34rem}.home-demo-caption{display:block}.landing-page--home .landing-home-content>.landing-final-signup{align-items:start}.landing-final-signup__actions{align-items:flex-start;flex-direction:column}}
@media(max-width:47.999rem){
  .home-audiences__list article,
  .home-audiences__list article:nth-child(even) { padding:1.75rem; }
}
@media(prefers-reduced-motion:reduce){.landing-page--home [data-home-reveal]{opacity:1;transform:none;transition:none}}
