/* Keep the main heading scale consistent across homepage sections. */
.home-page{--section-heading-size:clamp(34px,4vw,59px)}
.home-page main .section h2,
.home-page main .cta-section h2{font-size:var(--section-heading-size);line-height:1.06;letter-spacing:-.045em}
.home-page main .section h2 em,
.home-page main .cta-section h2 em{font-weight:inherit}

/* Match the Connected Capabilities composition on the reference site. */
.home-page .progress-section{padding:125px 0;background:#fff}
.home-page .progress-section .container{width:var(--container);max-width:1380px}
.home-page .progress-heading{display:block;text-align:center;margin:0}
.home-page .progress-heading .eyebrow{display:flex;justify-content:center;margin:0 0 25px;font-size:11px;letter-spacing:.16em}
.home-page .progress-heading h2{margin:0;color:var(--forest)}
.home-page .progress-heading h2 em{color:var(--lime)}
.home-page .progress-heading>p{display:none}
.home-page .progress-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:65px;border-top:1px solid var(--line)}
.home-page .progress-flow:before{display:block;left:6%;right:6%;top:103px;background:linear-gradient(90deg,transparent,var(--leaf),var(--leaf),transparent);opacity:.35}
.home-page .progress-flow article,
.home-page .progress-flow article:first-child{display:flex;flex-direction:column;align-items:stretch;min-height:370px;padding:38px 34px 20px;overflow:hidden;background:transparent;color:var(--forest);border:0;border-right:1px solid var(--line);box-shadow:none;transform:none}
.home-page .progress-flow article:first-child{border-left:1px solid var(--line)}
.home-page .progress-flow article:before{display:block;top:-3px;right:auto;left:0;width:0;height:5px;border:0;border-radius:0;background:var(--leaf);opacity:1;transition:width .35s}
.home-page .progress-flow article:hover{background:#f7f9f4;box-shadow:none;transform:translateY(-6px)}
.home-page .progress-flow article:hover:before{width:100%}
.home-page .progress-flow article:after{display:none}
.home-page .progress-flow .flow-no,
.home-page .progress-flow article:first-child .flow-no{top:15px;right:18px;color:#aeb6b1;font:600 9px Manrope,sans-serif;letter-spacing:0}
.home-page .flow-symbol,
.home-page .progress-flow article:first-child .flow-symbol{position:relative;z-index:1;width:112px;height:112px;margin:0 0 28px;border:1px solid rgba(35,140,69,.2);border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:inset 0 0 0 12px #f4f8f1;color:var(--green);transform:none}
.home-page .flow-symbol svg{width:40px;height:40px;stroke-width:1.35}
.home-page .flow-symbol:after{display:block;width:9px;height:9px;top:19px;right:4px;background:var(--leaf);box-shadow:0 0 0 6px #f3f7f0}
.home-page .flow-symbol b{display:block;bottom:-9px;padding:6px 9px;background:var(--forest);color:#fff;font:700 7px Manrope,sans-serif;letter-spacing:.16em}
.home-page .progress-flow article:hover .flow-symbol{background:var(--forest);color:var(--lime);transform:rotate(-5deg)}
.home-page .progress-flow article h3,
.home-page .progress-flow article:first-child h3{font:700 18px Manrope,sans-serif;color:var(--forest);margin:15px 0}
.home-page .progress-flow article p,
.home-page .progress-flow article:first-child p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:calc(2 * 1.75em);max-height:calc(2 * 1.75em);font-size:13px;line-height:1.75;color:var(--muted);margin:0}
.home-page .flow-link,
.home-page .progress-flow article:first-child .flow-link{display:flex;align-items:center;justify-content:space-between;flex:none;width:100%;height:46px;margin-top:auto;padding:0 0 0 14px;border:1px solid #d5e4d6;background:#f7faf5;color:var(--forest);font:700 10px Manrope,sans-serif;letter-spacing:.1em;text-decoration:none;text-transform:uppercase;transition:background .2s,border-color .2s,color .2s}
.home-page .flow-link-icon{display:grid;place-items:center;flex:none;width:44px;height:44px;margin-left:10px;background:var(--forest);color:#fff;transition:background .2s}
.home-page .flow-link svg{width:17px;height:17px}
.home-page .progress-flow article:hover .flow-link,.home-page .flow-link:hover{background:#ebf5e7;border-color:var(--green);color:var(--forest)}
.home-page .flow-link:hover .flow-link-icon{background:var(--green)}
.home-page .flow-link:focus-visible{outline:2px solid var(--green);outline-offset:3px}

@media(max-width:960px){
  .home-page .progress-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-page .progress-flow article:nth-child(3){border-left:1px solid var(--line)}
}
@media(max-width:680px){
  .home-page .progress-section{padding:85px 0}
  .home-page .progress-flow{grid-template-columns:1fr;margin-top:45px}
  .home-page .progress-flow:before{display:none}
  .home-page .progress-flow article,
  .home-page .progress-flow article:first-child,
  .home-page .progress-flow article:nth-child(3){border-left:1px solid var(--line)}
  .home-page .flow-symbol,
  .home-page .progress-flow article:first-child .flow-symbol{width:102px;height:102px}
}
