.lh-ecosystem { padding: 72px 0; background: #f4f8f6; color: #222; }
.lh-ecosystem-shell { width: min(1280px, calc(100% - 80px)); margin: 0 auto; }
.lh-ecosystem-heading { max-width: 730px; margin-bottom: 28px; }
.lh-ecosystem-heading > span, .lh-ecosystem-kicker, .lh-ecosystem-more-heading > span { color: #205443; font-size: 12px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.lh-ecosystem-heading h2 { margin: 8px 0 9px; color: #222; font-size: clamp(28px, 3vw, 40px); font-weight: 750; line-height: 1.15; letter-spacing: -.04em; }
.lh-ecosystem-heading p { margin: 0; color: #666; font-size: 15px; }
.lh-ecosystem-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.lh-ecosystem-card { min-height: 260px; display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 27px; border: 1px solid #d9e5df; border-radius: 22px; background: #fff; color: #222; text-decoration: none !important; box-shadow: 0 8px 24px rgba(24, 56, 39, .06); }
.lh-ecosystem-card:hover { color: #222; border-color: #8ab8a3; transform: translateY(-2px); }
.lh-ecosystem-card--feature { background: #2f765f; border-color: #2f765f; color: #fff; }
.lh-ecosystem-card--feature:hover { color: #fff; border-color: #205443; }
.lh-ecosystem-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; background: #edf5f2; color: #2f765f; font-size: 17px; }
.lh-ecosystem-card--feature .lh-ecosystem-icon { background: rgba(255,255,255,.18); color: #fff; }
.lh-ecosystem-card--feature .lh-ecosystem-kicker { color: #d9f0e4; }
.lh-ecosystem-card > strong { font-size: 20px; font-weight: 750; line-height: 1.22; letter-spacing: -.025em; }
.lh-ecosystem-card > span:not(.lh-ecosystem-icon):not(.lh-ecosystem-kicker) { color: #666; font-size: 14px; line-height: 1.5; }
.lh-ecosystem-card--feature > span:not(.lh-ecosystem-icon):not(.lh-ecosystem-kicker) { color: #e6f5ec; }
.lh-ecosystem-card em { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 8px; color: inherit; font-size: 13px; font-style: normal; font-weight: 750; }
.lh-ecosystem-more { display: grid; grid-template-columns: minmax(180px, .8fr) repeat(2, minmax(0, 1fr)); align-items: stretch; gap: 12px; margin-top: 20px; }
.lh-ecosystem-more-heading { padding: 17px 10px 17px 0; }
.lh-ecosystem-more-heading h3 { margin: 6px 0 0; color: #222; font-size: 21px; font-weight: 750; line-height: 1.2; }
.lh-ecosystem-more a { display: flex; align-items: center; gap: 12px; padding: 18px; border: 1px solid #e8dfe2; border-radius: 16px; background: #fff; color: #222; text-decoration: none !important; }
.lh-ecosystem-more a:hover { border-color: #8ab8a3; color: #2f765f; }
.lh-ecosystem-more a > i:first-child { width: 34px; flex: 0 0 34px; color: #2f765f; text-align: center; font-size: 20px; }
.lh-ecosystem-more a > span { flex: 1; display: flex; flex-direction: column; gap: 3px; }
.lh-ecosystem-more a strong { font-size: 14px; line-height: 1.25; }
.lh-ecosystem-more a small { color: #777; font-size: 12px; line-height: 1.4; }
.lh-ecosystem-more a > i:last-child { color: #2f765f; font-size: 13px; }
@media (max-width: 900px) { .lh-ecosystem-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .lh-ecosystem-more { grid-template-columns: 1fr 1fr; } .lh-ecosystem-more-heading { grid-column: 1 / -1; } }
@media (max-width: 620px) { .lh-ecosystem { padding: 48px 0; } .lh-ecosystem-shell { width: calc(100% - 38px); } .lh-ecosystem-grid, .lh-ecosystem-more { grid-template-columns: 1fr; } .lh-ecosystem-card { min-height: 220px; padding: 23px; } .lh-ecosystem-more-heading { grid-column: auto; } }
