/* Shared decorative icons: stroke follows currentColor so they work in both themes. */
.feature-icon { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; flex-shrink: 0; border: 1px solid var(--hairline); border-radius: var(--r-md); background: var(--surface-card); color: var(--ink); }
.feature-icon svg { display: block; width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.feature-heading { display: flex; align-items: center; gap: 14px; }
.feature-heading > span:last-child { min-width: 0; }
.feature-heading .feature-icon { width: 1.2em; height: 1.2em; border-radius: var(--r-sm); }
.feature-heading .feature-icon svg { width: .72em; height: .72em; }
.ox-card > .ox-number { margin-bottom: 16px; }
.ox-card .feature-heading { align-items: center; gap: 12px; }
.ox-case h2.feature-heading { max-width: none; }
@media (max-width: 768px) { .feature-heading { gap: 12px; } }
