
.lai-process { background: #fff; color: #102543; font-family: Overpass, sans-serif; padding-top: 0; }
.lai-process * { box-sizing: border-box; }
.lai-process__heading { position: relative; text-align: center; padding-top: 120px; margin-bottom: 86px; }
.lai-process__heading::before { content: ''; position: absolute; top: 0; left: 50%; height: 88px; width: 1px; background: #e8ebef; }
.lai-process__heading img { display: block; width: 64px; height: 48px; object-fit: contain; margin: 0 auto 12px; }
.lai-process .lai-process__eyebrow { font-size: 18px; line-height: 1.3; color: #245b92; margin: 0 0 6px; }
.lai-process h2 { max-width: 680px; margin: 0 auto; font-size: 42px; font-weight: 600; line-height: 1.05; letter-spacing: -.7px; }
.lai-process__timeline { position: relative; }
.lai-process__timeline::before { content: ''; position: absolute; top: 20px; left: 0; right: 0; height: 1px; background: #102543; opacity: .8; }
.lai-process__steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 28px; list-style: none; padding-block: 0; margin-block: 0; }
.lai-process__steps li { position: relative; }
.lai-process__number { position: relative; display: grid; place-items: center; width: 56px; height: 42px; border-radius: 12px; background: #102543; color: #fff; font-size: 16px; line-height: 1; margin-bottom: 18px; }
.lai-process h3 { font-size: 26px; font-weight: 600; line-height: 1.15; margin: 0 0 8px; }
.lai-process__steps p { font-size: 18px; color: #748196; line-height: 1.3; margin: 0; }
.lai-process__action { display: flex; justify-content: center; margin-top: 78px; }
.lai-process__action a { display: inline-flex; align-items: center; justify-content: center; gap: 12px; color: #fff; background: #ff681e; border-radius: 12px; padding: 17px 24px; font-size: 18px; line-height: 1.2; text-decoration: none; }
.lai-process__action a:hover { background: #ea5711; color: #fff; }
.lai-process__action a:focus-visible { outline: 2px solid #102543; outline-offset: 4px; }
.lai-process__divider { height: 1px; background: #e8ebef; margin-top: 116px; }
@media(max-width:1100px) { .lai-process h3 { font-size: 23px; } .lai-process__steps { gap: 20px; } }
@media(max-width:900px) {
    .lai-process__heading { padding-top: 130px; margin-bottom: 54px; }
    .lai-process__heading::before { top: 32px; height: 64px; }
    .lai-process h2 { font-size: 34px; line-height: 1.06; max-width: 360px; }
    .lai-process .lai-process__eyebrow { font-size: 16px; margin-bottom: 8px; }
    .lai-process__timeline::before { display: none; }
    .lai-process__steps { display: block; }
    .lai-process__steps li { display: grid; grid-template-columns: 56px minmax(0,1fr); gap: 20px; padding-bottom: 42px; }
    .lai-process__steps li::before { content: ''; position: absolute; top: 20px; bottom: -20px; left: 27px; width: 1px; background: #102543; }
    .lai-process__steps li:last-child::before { display: none; }
    .lai-process__steps li:last-child { padding-bottom: 0; }
    .lai-process__number { margin: 0; }
    .lai-process h3 { font-size: 24px; margin-bottom: 8px; }
    .lai-process__steps p { font-size: 16px; line-height: 1.35; }
    .lai-process__action { margin-top: 54px; }
    .lai-process__divider { margin-top: 64px; }
}

.is-prepared .lai-process__number { background:#fafafa; color:#102543; border:1px solid #dfe2e7; transition:background-color 350ms ease,color 350ms ease,border-color 350ms ease; }
.is-prepared .lai-process__steps li > div { opacity:0; transform:translateY(12px); transition:opacity 600ms ease,transform 600ms cubic-bezier(.22,1,.36,1); }
.is-prepared .lai-process__steps li.is-revealed > div { opacity:1; transform:none; }
.is-prepared .is-revealed .lai-process__number { background:#102543; color:#fff; border-color:#102543; }
@media(min-width:901px) {
 .lai-process__timeline.is-prepared::before { background:#e8ebef; opacity:1; }
 .lai-process__timeline.is-prepared::after { content:''; position:absolute; top:20px; left:0; right:0; height:1px; background:#102543; transform:scaleX(var(--process-progress,0)); transform-origin:left; }
 .lai-process__steps { position:relative; z-index:1; }
}
@media(prefers-reduced-motion:reduce) {
 .is-prepared .lai-process__number,.is-prepared .lai-process__steps li > div { transition:none; }
}
