/* Home v0.3: dedicated owner, small batches, hero slide 3. Batch timeline and filament note: home-v05-sections.css. Builds on v2.css + home3.css. */

/* Hero slide 3: one owner beside a short vertical path */
.hs-owner { position: relative; grid-column: 2; grid-row: 1; width: 100%; max-width: 440px; justify-self: center; min-width: 0; }
.ho-person { display: flex; align-items: center; gap: 12px; padding-bottom: 18px; }
.ho-person b { font-size: 17px; font-weight: 600; }
.ho-avatar { width: 40px; height: 40px; flex: none; border-radius: 50%; background: var(--ink); color: #fff; display: inline-flex; align-items: center; justify-content: center; }
.ho-avatar svg { width: 20px; height: 20px; }
.ho-path { list-style: none; margin: 0 0 0 19px; padding: 0 0 0 28px; border-left: 2px solid var(--accent); }
.ho-path li { position: relative; display: flex; align-items: center; gap: 10px; min-height: 52px; font-size: 18px; font-weight: 500; border-bottom: 1px solid rgba(29,36,42,.1); }
.ho-path li::before { content: ""; position: absolute; left: -36px; top: 50%; width: 12px; height: 12px; margin-top: -6px; border-radius: 50%; background: var(--ground); border: 2px solid var(--accent); }
.ho-path li em { font-style: normal; font-size: 12px; color: var(--muted); border: 1px solid rgba(29,36,42,.3); border-radius: 4px; padding: 0 6px; line-height: 20px; }
.ho-path li.is-opt { color: var(--muted); }
.ho-path li.is-opt::before { border-style: dashed; border-color: var(--muted); }
.ho-path li.is-key { color: var(--accent); font-weight: 600; }
.ho-path li.is-key::before { background: var(--accent); }
.ho-path li.is-key svg { width: 16px; height: 16px; }
.hs-owner .hp-note { margin-top: 12px; }
@media (max-width: 899px) {
  .hs-owner { grid-column: 1; grid-row: 2; max-width: 520px; width: 100%; }
}
@media (max-width: 479px) {
  .ho-path li { min-height: 44px; font-size: 16px; }
}

/* Shared section heading */
.owner h2, .batch h2 { font-size: 48px; line-height: 1.18; font-weight: 600; }

/* Dedicated owner */
.owner { position: relative; background: #F4F5F2; padding: 112px 0 120px; border-top: 1px solid var(--line); }
.anchor-compat { position: absolute; top: 0; left: 0; width: 1px; height: 1px; }
/* #owner scroll story: home-v05-owner.css */

/* Small batches, fast reorders */
.batch { background: var(--white); padding: 112px 0 104px; border-top: 1px solid var(--line); }
.batch-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; align-items: end; }
.batch-lead { font-size: 17px; color: var(--muted); max-width: 30em; }
.batch-demo { margin-top: 56px; display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; }
.batch-who { list-style: none; margin: 72px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.batch-who li { padding-top: 20px; border-top: 1px solid var(--ink); }
.batch-who b { display: block; font-size: 19px; font-weight: 600; }
.batch-who li > span { display: block; margin-top: 8px; font-size: 15px; line-height: 1.6; color: var(--muted); }

.close .hero-act { margin-top: 40px; }

@media (max-width: 1199px) {
  .owner h2, .batch h2 { font-size: 42px; }
}
@media (max-width: 899px) {
  .owner, .batch { padding: 80px 0; }
  .owner h2, .batch h2 { font-size: 36px; }
  .batch-head { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .batch-who { grid-template-columns: minmax(0, 1fr); gap: 0; margin-top: 64px; }
  .batch-who li { display: grid; grid-template-columns: minmax(0, 12em) minmax(0, 1fr); gap: 8px 24px; padding: 18px 0; }
  .batch-who li > span { margin-top: 0; }
}
@media (max-width: 767px) {
  .owner h2, .batch h2 { font-size: 30px; }
  .batch-demo { margin-top: 40px; }
  .batch-who li { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 379px) {
}

/* Hero headings use fixed steps; long Chinese lines only break between phrases. */
@media (min-width: 1100px) and (max-width: 1299px) {
  .hs h1, .hs h2.h1, html[lang="en"] .hs h1, html[lang="en"] .hs h2.h1 { font-size: 50px; }
}
