/* Company history timeline. */
.page-home .panel-company-history { background: #fff; }
.page-home .panel-company-history > .home-panel__inner { box-sizing: border-box; }
.page-home .company-history { width: 100%; max-width: 1420px; margin: 0 auto; }
.page-home .company-history__header { margin-bottom: 42px; text-align: center; }
.page-home .company-history__eyebrow { margin: 0 0 12px; color: #1e5eff; font-size: 16px; line-height: 1.2; font-weight: 900; letter-spacing: .04em; }
.page-home .company-history__title { margin: 0 0 18px; color: #20242a; font-size: 48px; line-height: 1.15; font-weight: 900; }
.page-home .company-history__lead { margin: 0; color: #343a43; font-size: 20px; line-height: 1.5; font-weight: 500; }
.page-home .company-history__timeline { position: relative; display: grid; grid-template-columns: 1fr 1fr; grid-auto-rows: 92px; gap: 0 88px; width: min(100%, 1180px); margin: 0 auto; padding: 0; list-style: none; }
.page-home .company-history__timeline::before { content: ""; position: absolute; top: 12px; bottom: 12px; left: 50%; width: 2px; background: linear-gradient(180deg, rgba(30,94,255,.18), #1e5eff 14%, #1e5eff 86%, rgba(30,94,255,.18)); transform: translateX(-50%); }
.page-home .company-history__event { position: relative; min-height: 64px; margin-bottom: 8px; }
.page-home .company-history__event:nth-child(odd) { grid-column: 1; padding-right: 14px; text-align: right; }
.page-home .company-history__event:nth-child(even) { grid-column: 2; padding-left: 14px; text-align: left; transform: translateY(46px); }
.page-home .company-history__marker { position: absolute; top: 8px; width: 14px; height: 14px; border: 4px solid #fff; border-radius: 50%; background: #1e5eff; box-shadow: 0 0 0 2px #9fc2ff, 0 5px 12px rgba(30,94,255,.22); transition: transform 240ms cubic-bezier(.22,1,.36,1), border-color 220ms ease, background-color 220ms ease, box-shadow 240ms ease; }
.page-home .company-history__marker::after { content: ""; position: absolute; top: 50%; left: 50%; width: 5px; height: 5px; border-radius: 50%; background: #fff; box-shadow: 0 0 10px rgba(255,255,255,.98); opacity: 0; transform: translate(-50%,-50%) scale(.4); transition: opacity 180ms ease, transform 240ms cubic-bezier(.22,1,.36,1); }
.page-home .company-history__event:last-child .company-history__marker { border-color: #1e5eff; background: #1e5eff; box-shadow: 0 0 0 4px rgba(30,94,255,.2), 0 0 20px rgba(30,94,255,.58); animation: finf-history-marker-pulse 1.05s ease-in-out infinite; }
.page-home .company-history__event:last-child .company-history__marker::after { opacity: 1; animation: finf-history-light-pulse 1.05s ease-in-out infinite; }
@keyframes finf-history-marker-pulse {
    0%, 100% { box-shadow: 0 0 0 3px rgba(30,94,255,.16), 0 0 12px rgba(30,94,255,.38); transform: scale(1.05); }
    50% { box-shadow: 0 0 0 6px rgba(30,94,255,.26), 0 0 26px rgba(30,94,255,.78); transform: scale(1.16); }
}
@keyframes finf-history-light-pulse {
    0%, 100% { opacity: .3; transform: translate(-50%,-50%) scale(.65); }
    50% { opacity: 1; transform: translate(-50%,-50%) scale(1.25); }
}
@media (prefers-reduced-motion: reduce) {
    .page-home .company-history__event:last-child .company-history__marker,
    .page-home .company-history__event:last-child .company-history__marker::after { animation: none; }
}
.page-home .company-history__event:nth-child(odd) .company-history__marker { right: -51px; }
.page-home .company-history__event:nth-child(even) .company-history__marker { left: -51px; }
.page-home .company-history__date { display: inline-block; margin-bottom: 4px; color: #1e5eff; font-size: 16px; line-height: 1.25; font-weight: 900; }
.page-home .company-history__content p { margin: 0; color: #2f343a; font-size: 17px; line-height: 1.42; font-weight: 700; word-break: keep-all; }
@media (min-width: 861px) {
    html body.page-home #section-history > .home-panel__inner { min-height: min(900px, 100svh) !important; display: grid !important; align-items: center !important; padding: 68px 0 0 !important; }
    html body.page-home #section-history .company-history { transform: translateY(-55px); }
}
@media (max-width: 860px) {
    html body.page-home #section-history > .home-panel__inner { width: min(calc(100% - 40px), 620px) !important; min-height: calc(100svh - var(--home-header-height, 60px)) !important; padding: 84px 0 46px !important; }
    .page-home .company-history__header { margin-bottom: 28px; }
    .page-home .company-history__eyebrow { margin-bottom: 8px; font-size: 12px; }
    .page-home .company-history__title { margin-bottom: 10px; font-size: 32px; }
    .page-home .company-history__lead { font-size: 14px; line-height: 1.5; }
    .page-home .company-history__timeline { display: block; width: 100%; padding-left: 24px; }
    .page-home .company-history__timeline::before { left: 6px; transform: none; }
    .page-home .company-history__event,
    .page-home .company-history__event:nth-child(odd),
    .page-home .company-history__event:nth-child(even) { min-height: 0; margin: 0 0 16px; padding: 0 0 0 10px; text-align: left; transform: none; }
    .page-home .company-history__event:nth-child(odd) .company-history__marker,
    .page-home .company-history__event:nth-child(even) .company-history__marker { top: 5px; left: -24px; right: auto; width: 10px; height: 10px; border-width: 3px; }
    .page-home .company-history__date { margin-bottom: 2px; font-size: 13px; }
    .page-home .company-history__content p { font-size: 14px; line-height: 1.38; }
}
