.page_products__1_4_t{margin-top:40px;padding:8px;max-width:1300px;margin-left:auto;margin-right:auto}.page_products__1_4_t>p{font-size:.95rem;color:var(--color-text-muted);margin-bottom:6px}.page_productGrid__afRwQ{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),360px));justify-content:center;gap:20px;margin:32px auto;text-align:left}.page_productCard__ijCfI{display:flex;flex-direction:column;gap:14px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;padding:28px 24px;height:100%;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.page_productCard__ijCfI:hover{transform:translateY(-4px);box-shadow:0 8px 28px rgba(0,0,0,.08);border-color:var(--color-brand)}.page_productCardHeader__vhhpo{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.page_productCardTitle__RcaVe{font-size:1.05rem;font-weight:700;color:var(--color-text)}.page_comingSoonBadge__u2k9U{border-radius:999px;border:1px solid var(--color-brand);background:color-mix(in srgb,var(--color-brand) 10%,transparent);color:var(--color-brand)}.page_comingSoonBadge__u2k9U,.page_openSourceBadge__aez8N{display:inline-block;padding:4px 12px;font-size:.75rem;font-weight:700;white-space:nowrap}.page_openSourceBadge__aez8N{border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text-muted)}.page_productCardDesc__gfbmt{font-size:.875rem;color:var(--color-text-muted);line-height:1.7}.page_productCardLink__6XmF7{display:inline-flex;align-items:center;justify-content:center;margin-top:auto;align-self:flex-start;padding:10px 28px;border-radius:50px;background:linear-gradient(135deg,var(--color-brand),var(--color-brand-hover));color:#fff;text-decoration:none;font-weight:700;font-size:.875rem;letter-spacing:.04em;transition:all .3s ease;box-shadow:0 4px 15px color-mix(in srgb,var(--color-brand) 40%,transparent)}.page_productCardLink__6XmF7:hover{transform:translateY(-2px);box-shadow:0 8px 28px color-mix(in srgb,var(--color-brand) 55%,transparent)}