/* V3: the headline opens; the human story follows the workflow. */
.home-hero { --under-nav-pad:clamp(58px,6.4vw,100px); }
.home-hero-copy .t-hero { margin:0; }
.home-story { padding-block:clamp(76px,9vw,144px); text-align:center; position:relative; }
.home-story h2 { font:400 clamp(48px,7.2vw,104px)/1.04 var(--serif); letter-spacing:-.025em; color:var(--forest); margin:0; }
.home-story h2 em { font-weight:400; }
.home-story-intro { max-width:640px; margin:30px auto 0; color:var(--body); font-size:clamp(17px,1.55vw,21px); line-height:1.7; text-wrap:pretty; }
.home-story-book { max-width:990px; margin:52px auto 0; border-top:1px solid var(--line2); border-bottom:1px solid var(--line2); }
.home-story-choices { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.home-story-choices button { display:flex; justify-content:center; align-items:center; gap:12px; border:0; background:transparent; color:var(--muted); padding:24px 4px; min-height:68px; font:500 15px/1.5 var(--sans); cursor:pointer; position:relative; }
.home-story-choices button:after { content:''; position:absolute; top:-1px; inset-inline:0; height:2px; background:var(--forest); opacity:0; }
.home-story-choices button[aria-pressed=true] { color:var(--forest); }
.home-story-choices button[aria-pressed=true]:after { opacity:1; }
.home-story-choices .ic { width:16px; height:16px; opacity:.6; }
.home-story-choices button[aria-pressed=true] .ic { color:var(--amber-ink); opacity:1; }
.home-story-page { padding:25px 34px 42px; transition:none !important; }
.home-story-thought { font:500 clamp(25px,2.9vw,37px)/1.2 var(--display); letter-spacing:-.035em; max-width:720px; margin:auto; }
.home-story-page>p:nth-child(2) { max-width:650px; margin:20px auto 18px; color:var(--body); font-size:16px; line-height:1.75; }
.home-story-page .link { min-height:44px; }
.home-story-close { margin-top:26px; color:var(--muted); font-size:14px; }
.js .home-story-pages { display:grid; min-height:285px; }
.js .home-story-page { grid-area:1 / 1; }
.js .home-story-page:not(.is-current) { visibility:hidden; pointer-events:none; }
html:not(.js) .home-story-choices { display:none; }
html:not(.js) .home-story-page+.home-story-page { border-top:1px solid var(--line); }
.home-reuse-route { display:grid; grid-template-columns:repeat(3,1fr); list-style:none; padding:0; margin:0; gap:36px; text-align:center; }
.home-reuse-route li { position:relative; padding-top:35px; }
.home-reuse-route li:before { content:''; position:absolute; top:5px; height:1px; left:-18px; width:calc(100% + 36px); background:var(--cl); }
.home-reuse-route li:first-child:before { left:50%; width:calc(50% + 18px); }
.home-reuse-route li:last-child:before { width:calc(50% + 18px); }
.home-reuse-dot { width:11px; height:11px; position:absolute; top:0; left:calc(50% - 5px); border-radius:50%; background:var(--forest); box-shadow:0 0 0 6px var(--band); }
.home-reuse-route li:last-child .home-reuse-dot { background:var(--amber); }
.home-reuse-route h3 { font-size:23px; }
.home-reuse-route p { font-size:15px; color:var(--body); line-height:1.75; max-width:32ch; margin:15px auto 0; }
.home-reuse-payoff { max-width:740px; margin:42px auto 0; text-align:center; }
.home-reuse-payoff>p:first-child { font-size:19px; line-height:1.6; }
.home-reuse-payoff>p+ p { margin:15px auto 0; color:var(--muted); font-size:13px; max-width:600px; line-height:1.7; }
.home-platform-link { text-align:center; max-width:740px; margin:42px auto 0; padding-top:30px; border-top:1px solid var(--line2); }
.home-platform-link p { color:var(--body); font-size:15px; line-height:1.7; margin:12px auto; }
.home-platform-link .link { min-height:44px; }
@media (hover:hover) and (pointer:fine) { .home-story-choices button:hover { color:var(--amber-ink); } }
@media(max-width:899px) { .home-story-choices { gap:12px; }.home-story-choices button { font-size:14px; }.home-reuse-route { gap:24px; }.home-reuse-route h3 { font-size:21px; } }
@media(max-width:639px) {
  .home-hero { --under-nav-pad:42px; }
  .home-story h2 { font-size:clamp(45px,12.5vw,74px); }
  .home-story-intro { font-size:17px; margin-top:26px; }
  .home-story-book { margin-top:32px; }
  .home-story-choices { gap:6px; }
  .home-story-choices button { font-size:12px; line-height:1.5; padding:16px 4px; min-height:74px; }
  .home-story-choices .ic { display:none; }
  .home-story-page { padding:20px 2px 30px; }
  .home-story-thought { font-size:27px; max-width:350px; }
  .home-story-page>p:nth-child(2) { font-size:15px; margin-top:18px; }
  .js .home-story-pages { min-height:340px; }
  .home-story-page .link { font-size:13px; }
  .home-reuse-route { grid-template-columns:1fr; gap:0; }
  .home-reuse-route li { padding:5px 0 30px 30px; text-align:left; }
  .home-reuse-route li:before,.home-reuse-route li:first-child:before { width:1px; left:5px; top:12px; height:100%; }
  .home-reuse-route li:last-child:before { display:none; }
  .home-reuse-dot { left:0; top:12px; }
  .home-reuse-route p { max-width:none; margin-top:10px; }
  .home-reuse-route h3 { font-size:24px; }
  .home-reuse-payoff { margin-top:5px; }
  .home-reuse-payoff>p:first-child { font-size:18px; }
  .home-reuse .btn { font-size:13px; }
}
@media(prefers-contrast:more) { .home-story-choices button { color:var(--ink); }.home-story-choices button[aria-pressed=true] { outline:2px solid currentColor; outline-offset:-4px; } }

/* The company uses the same canonical wordmark as navigation and footer. */
.home-masthead .wordmark { --wm-size: 1em; }
.home-masthead .wordmark__o { width: 1.125em; height: 1.125em; }
