/* Final: a connected process and the people behind the product. */
/* Home chapters share a rhythm; same-colour neighbours split one gap. */
body[data-page="home"] { --section-y:72px; --head-gap:44px; --home-inner-gap:32px; }
.home-story { padding-block:64px; }
.js .home-story-pages { min-height:0; }
.home-reuse,.home-compare { padding-bottom:var(--home-inner-gap); }
.home-compare,.home-ask-section { padding-top:var(--home-inner-gap); }
.home-trust-section,.final-company { padding-bottom:var(--home-inner-gap); }
.final-company,.home-plan-section { padding-top:var(--home-inner-gap); }
.home-closing-cta { padding-bottom:48px; }
.home-closing-cta .home-final { padding-block:48px; }
.home-company-end { padding-top:48px; }
.home-company-end .home-definition { margin-top:40px; }
.home-company-end .home-founders { margin-top:40px; }
.home-founders h3 a { display:inline-flex; align-items:center; justify-content:center; gap:10px; font:inherit; letter-spacing:inherit; min-height:44px; margin:0; }
.home-founders h3 img { flex:none; width:20px; height:20px; }
.home-founders h3 a:focus-visible { outline:2px solid var(--focus); outline-offset:5px; border-radius:4px; }
@media(hover:hover) and (pointer:fine) { .home-founders h3 a:hover { color:var(--amber-ink); } }
.final-workflow { padding-bottom:24px; }
.final-workflow .section-head { max-width:820px; margin-bottom:var(--head-gap); }
.final-workflow .section-head .lead { max-width:680px; }
.final-steps { display:grid; grid-template-columns:repeat(9,minmax(0,1fr)); gap:14px; padding:0; margin:0; list-style:none; }
.final-steps li { min-width:0; position:relative; }
.final-steps li:not(:last-child)::after { content:""; position:absolute; top:19px; left:calc(50% + 29px); width:calc(100% - 44px); height:2px; background:var(--cl); }
.final-step { display:flex; flex-direction:column; align-items:center; text-align:center; gap:0; height:100%; border-radius:10px; padding:0 2px 10px; }
.final-step-number { display:grid; place-items:center; width:40px; height:40px; border:1px solid var(--line2); border-radius:50%; font:400 14px/1 var(--sans); color:var(--amber-ink); flex:none; }
.final-step h3 { font-size:clamp(16px,1.2vw,19px); line-height:1.3; letter-spacing:-.025em; margin-top:24px; min-height:2.6em; display:flex; align-items:center; justify-content:center; }
.final-step p { font-size:14px; color:var(--body); line-height:1.65; margin-top:9px; max-width:18ch; }
.final-step-arrow { display:block; color:var(--amber-ink); font-size:20px; line-height:1; margin-top:auto; padding-top:22px; }
.final-step:focus-visible { outline:2px solid var(--focus); outline-offset:5px; }
.final-step:focus-visible .final-step-number { background:var(--amber-soft); border-color:var(--amber-ink); }
.final-workflow .home-platform-link { margin-top:32px; padding-top:24px; }
.final-workflow .home-platform-link p { max-width:66ch; }
.final-company { background:var(--paper); }
.final-company-layout { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:clamp(48px,7vw,110px); align-items:center; }
.final-company-perspective { text-align:center; }
.final-company-mark { width:clamp(200px,23vw,320px); margin:auto; color:var(--charcoal); }
.final-company-mark svg { width:100%; height:auto; display:block; }
.final-company-story h2 { font-size:clamp(40px,4.1vw,64px); line-height:1.05; letter-spacing:-.048em; }
.final-company-story>p { font-size:16px; line-height:1.85; color:var(--body); max-width:64ch; margin-top:16px; text-wrap:pretty; }
.final-company-story>.final-company-lead { font-size:clamp(20px,1.75vw,26px); line-height:1.5; color:var(--ink); margin-top:24px; }
@media(hover:hover) and (pointer:fine) {
  .final-step:hover .final-step-number { background:var(--amber-soft); border-color:var(--amber-ink); }
}
@media(max-width:1199px) {
  body[data-page="home"] { --section-y:56px; --head-gap:32px; --home-inner-gap:28px; }
  .home-story { padding-block:48px; }
  .home-closing-cta { padding-bottom:40px; }
  .home-company-end { padding-top:40px; }
  .final-steps { grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px 24px; max-width:820px; margin:auto; }
  .final-steps li:nth-child(3n)::after { display:none; }
  .final-steps li:not(:last-child)::after { width:calc(100% - 34px); }
  .final-step { padding-bottom:12px; }
  .final-step h3 { font-size:19px; min-height:0; margin-top:17px; }
  .final-step p { max-width:23ch; }
  .final-step-arrow { padding-top:14px; }
  .final-company-layout { grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr); gap:40px; }
}
@media(max-width:767px) {
  .final-company-layout { grid-template-columns:1fr; gap:28px; }
  .final-company-perspective { display:flex; align-items:center; justify-content:center; gap:20px; }
  .final-company-mark { width:140px; margin:0; flex:none; }
  .final-company-story { max-width:600px; margin:auto; text-align:center; }
  .final-company-story h2 { font-size:clamp(35px,7.9vw,52px); }
  .final-company-story>p { font-size:16px; line-height:1.75; }
  .final-company-story>.final-company-lead { font-size:21px; }
}
@media(max-width:599px) {
  body[data-page="home"] { --section-y:40px; --head-gap:28px; --home-inner-gap:20px; }
  .final-workflow { padding-bottom:20px; }
  .home-story { padding-block:40px; }
  .home-story-intro { margin-top:20px; }
  .home-story-book { margin-top:28px; }
  .home-closing-cta { padding-bottom:28px; }
  .home-closing-cta .home-final { padding-block:32px; }
  .home-company-end { padding-top:32px; }
  .home-company-end .home-definition { margin-top:28px; }
  .home-company-end .home-founders { margin-top:28px; }
  .home-hero-actions { width:min(480px,calc(100% - 2 * var(--gutter))); }
  .home-hero-actions .btn { font-size:14px; padding-inline:16px; min-height:52px; }
  .home-trial-note { font-size:13px; }
  .final-workflow .section-head { margin-bottom:28px; }
  .final-steps { grid-template-columns:1fr; gap:0; max-width:480px; }
  .final-steps li:not(:last-child)::after,.final-steps li:nth-child(3n)::after { display:block; top:44px; left:19px; width:1px; height:calc(100% - 12px); background:var(--line2); }
  .final-step { display:grid; grid-template-columns:40px minmax(0,1fr) 18px; align-items:start; gap:0 16px; text-align:left; padding:0 0 24px; }
  .final-step-number { grid-column:1; grid-row:1 / span 2; }
  .final-step h3 { grid-column:2; justify-content:flex-start; margin-top:3px; font-size:19px; }
  .final-step p { grid-column:2; max-width:none; margin-top:5px; font-size:14px; }
  .final-step-arrow { grid-column:3; grid-row:1 / span 2; padding-top:9px; margin:0; font-size:18px; }
  .final-steps li:last-child .final-step { padding-bottom:0; }
  .final-company-perspective { gap:10px; }
  .final-company-mark { width:105px; }
}

.final-workflow-actions { align-items:center; gap:16px 30px; }
.final-workflow-actions .link { min-height:44px; }
