html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__cards-grid.openms-lib-developers__cards-grid{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;grid-auto-rows:auto!important;grid-template-rows:none!important;gap:1rem!important;align-items:stretch!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__group{grid-column:1/-1!important;display:flex;align-items:center;gap:.85rem;margin:1rem 0 0!important;font-family:var(--openms-font-body);font-size:.75rem!important;font-weight:700!important;letter-spacing:.14em;text-transform:uppercase;color:var(--openms-blue)!important;-webkit-text-fill-color:var(--openms-blue)!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__group:first-child{margin-top:0!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__group::after{content:"";flex:auto;height:1px;background:rgba(var(--openms-navy-rgb),.12)}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--link.openms-lib-developers__card{grid-column:span 3!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured.openms-lib-developers__card{grid-column:span 6!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--build-src.openms-lib-developers__card{grid-column:span 6!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--review.openms-lib-developers__card{grid-column:1/-1!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card.openms-lib-developers__card{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:.9rem!important;box-sizing:border-box;min-height:0!important;padding:1.35rem 1.4rem!important;background:var(--openms-white,#fff)!important;background-color:var(--openms-white,#fff)!important;border:1px solid rgba(var(--openms-navy-rgb),.1)!important;border-radius:1rem!important;box-shadow:none!important;transform:none!important;text-decoration:none!important;transition:border-color .2s ease,box-shadow .2s ease!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card.openms-lib-developers__card:hover,html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card.openms-lib-developers__card:focus-within{border-color:rgba(var(--openms-navy-rgb),.35)!important;box-shadow:0 .35rem 1rem rgba(var(--openms-blue-rgb),.1)!important;transform:none!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card-icon.openms-lib-developers__card-icon{display:grid!important;place-items:center;flex:none;width:auto!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;border-radius:0;background:0 0!important;background-color:initial!important;color:var(--openms-blue)!important;-webkit-text-fill-color:var(--openms-blue)!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card-icon :is(i,svg){width:1.85rem!important;height:1.85rem!important;font-size:1.75rem!important;line-height:1;color:inherit!important;-webkit-text-fill-color:currentColor!important;fill:currentColor!important;opacity:1!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card-icon svg path{color:inherit!important;fill:currentColor!important;opacity:1!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card-body.openms-lib-developers__card-body{display:flex!important;flex-direction:column!important;flex:auto;align-items:flex-start!important;gap:.4rem!important;width:100%;min-width:0;padding:0!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card-title.openms-lib-developers__card-title{margin:0!important;font-family:var(--openms-font-heading);font-size:var(--openms-card-title-size)!important;font-weight:var(--openms-card-title-weight,700)!important;line-height:1.3!important;letter-spacing:.01em!important;text-transform:uppercase!important;color:rgba(var(--openms-dark-rgb),.72)!important;-webkit-text-fill-color:rgba(var(--openms-dark-rgb),.72)!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card-subtitle.openms-lib-developers__card-subtitle{margin:0!important;font-size:.9375rem!important;line-height:1.5!important;color:rgba(var(--openms-dark-rgb),.72)!important;-webkit-text-fill-color:rgba(var(--openms-dark-rgb),.72)!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--link .openms-lib-developers__card-link.openms-lib-developers__card-link{display:inline-flex;align-items:center;gap:.35rem;margin-top:auto!important;padding-top:.6rem;font-size:var(--openms-text-min,.8125rem)!important;font-weight:700!important;color:var(--openms-blue)!important;-webkit-text-fill-color:var(--openms-blue)!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--link .openms-lib-developers__card-link span{display:inline-block;transition:transform .2s ease}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--link:hover .openms-lib-developers__card-link span{transform:translateX(3px)}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured.openms-lib-developers__card{justify-content:space-between;background:radial-gradient(120% 140% at 0% 0%,rgba(var(--openms-blue-rgb),.35) 0%,rgba(var(--openms-blue-rgb),0) 55%),var(--openms-navy)!important;border-color:var(--openms-navy)!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured.openms-lib-developers__card:hover,html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured.openms-lib-developers__card:focus-within{border-color:var(--openms-navy)!important;box-shadow:0 .6rem 1.5rem rgba(var(--openms-navy-rgb),.22)!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured .openms-lib-developers__card-icon.openms-lib-developers__card-icon{background:0 0!important;color:var(--openms-white)!important;-webkit-text-fill-color:var(--openms-white)!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured .openms-lib-developers__card-title.openms-lib-developers__card-title{font-size:1.3rem!important;color:var(--openms-white)!important;-webkit-text-fill-color:var(--openms-white)!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured .openms-lib-developers__card-subtitle.openms-lib-developers__card-subtitle{font-size:1rem!important;color:rgba(255,255,255,.84)!important;-webkit-text-fill-color:rgba(255,255,255,.84)!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured .openms-lib-developers__card-link.openms-lib-developers__card-link{padding:.6rem 1.15rem!important;border:2px solid var(--openms-white)!important;border-radius:999px!important;background:var(--openms-white)!important;background-color:var(--openms-white)!important;color:var(--openms-navy)!important;-webkit-text-fill-color:var(--openms-navy)!important;box-shadow:0 0 rgba(255,255,255,.22)!important;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured:is(:hover,:focus-within) .openms-lib-developers__card-link.openms-lib-developers__card-link{transform:scale(var(--openms-btn-hover-scale,1.03))!important;box-shadow:0 0 0 var(--openms-btn-glow-size,6px)rgba(255,255,255,.22)!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card-title-row{display:flex!important;flex-wrap:wrap;align-items:center;justify-content:flex-start!important;gap:.5rem .75rem;width:100%}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__badge{display:inline-flex!important;overflow:hidden;border-radius:999px;line-height:0}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__badge img{display:block;height:1.35rem;width:auto}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__platforms.openms-lib-developers__platforms{display:flex!important;flex-wrap:wrap;gap:.75rem!important;margin-top:auto!important;padding-top:.6rem;width:auto}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__platform-btn.openms-lib-developers__platform-btn.openms-lib-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:.45rem;box-sizing:border-box;width:auto!important;min-height:var(--openms-btn-min-height,2.75rem)!important;height:auto!important;padding:var(--openms-btn-padding,.7rem 1.25rem)!important;border:2px solid rgba(var(--openms-navy-rgb),.72)!important;border-radius:999px!important;background:0 0!important;background-color:initial!important;color:var(--openms-navy)!important;-webkit-text-fill-color:var(--openms-navy)!important;font-size:var(--openms-btn-font-size,var(--openms-text-min))!important;font-weight:600!important;box-shadow:0 0 rgba(var(--openms-navy-rgb),.18)!important;transform:none!important;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s,background-color .22s!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__platform-btn.openms-lib-developers__platform-btn.openms-lib-btn:is(:hover,:focus-visible,:active){background:rgba(var(--openms-navy-rgb),.08)!important;background-color:rgba(var(--openms-navy-rgb),.08)!important;border-color:rgba(var(--openms-navy-rgb),.78)!important;color:var(--openms-navy)!important;-webkit-text-fill-color:var(--openms-navy)!important;transform:scale(var(--openms-btn-hover-scale,1.03))!important;box-shadow:0 0 0 var(--openms-btn-glow-size,6px)rgba(var(--openms-navy-rgb),.18)!important;outline:none!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__platform-btn :is(i,svg,path,span){color:inherit!important;-webkit-text-fill-color:currentColor!important;fill:currentColor}@media(min-width:768px){html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--review.openms-lib-developers__card{flex-direction:row!important;align-items:center!important;gap:1.1rem!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--review .openms-lib-developers__card-body.openms-lib-developers__card-body{display:grid!important;grid-template-columns:minmax(0,1fr)auto;grid-template-areas:"title cta" "sub cta";align-items:center!important;column-gap:1.5rem;row-gap:.3rem}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--review .openms-lib-developers__card-title-row{grid-area:title}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--review .openms-lib-developers__card-subtitle.openms-lib-developers__card-subtitle{grid-area:sub}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--review .openms-lib-developers__platforms.openms-lib-developers__platforms{grid-area:cta;margin-top:0!important;padding-top:0;justify-content:flex-end}}@media(min-width:768px) and (max-width:1023px){html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__cards-grid.openms-lib-developers__cards-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured.openms-lib-developers__card,html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--build-src.openms-lib-developers__card{grid-column:1/-1!important}}@media(max-width:767px){html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__cards-grid.openms-lib-developers__cards-grid{grid-template-columns:minmax(0,1fr)!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card.openms-lib-developers__card{grid-column:1/-1!important}}@media(max-width:560px){html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__platforms.openms-lib-developers__platforms{flex-direction:column;align-items:stretch;width:100%}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__platform-btn.openms-lib-developers__platform-btn.openms-lib-btn{width:100%!important;justify-content:center}}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card-title span{font:inherit!important;letter-spacing:inherit!important;text-transform:uppercase!important;color:inherit!important;-webkit-text-fill-color:currentColor!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card-title-row .openms-lib-developers__card-title.openms-lib-developers__card-title{flex:initial!important;width:auto!important;max-width:100%}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--link .openms-lib-developers__card-link span,html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--link:is(:hover,:focus-within,:focus-visible) .openms-lib-developers__card-link span{color:inherit!important;-webkit-text-fill-color:currentColor!important;opacity:1!important;visibility:visible!important}html body #for-developers#for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card:not(.openms-lib-developers__card--featured):is(:hover,:focus-within,:focus-visible) .openms-lib-developers__card-icon,html body #for-developers#for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card:not(.openms-lib-developers__card--featured):is(:hover,:focus-within,:focus-visible) .openms-lib-developers__card-icon :is(i,svg,path){color:var(--openms-blue)!important;-webkit-text-fill-color:var(--openms-blue)!important;fill:var(--openms-blue)!important;opacity:1!important}html body #for-developers#for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured:is(:hover,:focus-within,:focus-visible) .openms-lib-developers__card-icon,html body #for-developers#for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured:is(:hover,:focus-within,:focus-visible) .openms-lib-developers__card-icon :is(i,svg,path){color:var(--openms-white)!important;-webkit-text-fill-color:var(--openms-white)!important;fill:var(--openms-white)!important;opacity:1!important}html body #for-developers#for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__platform-btn :is(i,svg,path){color:var(--openms-navy)!important;-webkit-text-fill-color:var(--openms-navy)!important;fill:var(--openms-navy)!important;opacity:1!important}html body #for-developers#for-developers.openms-lib-developers--grouped .openms-lib-developers__card--featured .openms-lib-developers__card-subtitle.openms-lib-developers__card-subtitle{margin-bottom:.9rem!important}