.niche-hero-image { position:relative; aspect-ratio:1; overflow:hidden; border-radius:24px; }
.niche-hero-image img { width:100%; height:100%; object-fit:cover; transition:transform 800ms cubic-bezier(.32,.72,0,1); }
.niche-hero-image:hover img { transform:scale(1.04); }
.niche-hero-image::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 48%,rgba(7,23,39,.72)); pointer-events:none; }
.niche-card { position:relative; min-height:260px; overflow:hidden; border-radius:22px; border:1px solid rgba(7,23,39,.08); box-shadow:0 18px 40px -30px rgba(7,23,39,.48); }
.niche-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform 700ms cubic-bezier(.32,.72,0,1),filter 300ms ease; }
.niche-card::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(7,23,39,.03) 25%,rgba(7,23,39,.9) 100%); }
.niche-card:hover img { transform:scale(1.055); filter:saturate(1.08); }
.niche-card-copy { position:absolute; inset:auto 0 0; z-index:1; padding:24px; color:white; }
.use-card { background:var(--paper); border:1px solid var(--line); border-radius:20px; padding:24px; }
.use-icon { width:40px; height:40px; border-radius:13px; display:grid; place-items:center; background:var(--brand-soft); color:var(--brand-deep); font-family:'JetBrains Mono',monospace; font-size:11px; font-weight:600; }
.workflow-line { position:relative; padding-left:46px; }
.workflow-line::before { content:attr(data-step); position:absolute; left:0; top:0; width:30px; height:30px; border-radius:999px; display:grid; place-items:center; background:var(--ink); color:white; font:600 10px/1 'JetBrains Mono',monospace; }
.workflow-line:not(:last-child)::after { content:''; position:absolute; left:14px; top:34px; bottom:-22px; width:1px; background:var(--mist-line); }
.niche-chip { display:inline-flex; align-items:center; gap:7px; border:1px solid var(--line); background:rgba(255,255,255,.78); padding:7px 11px; border-radius:999px; color:var(--ink-soft); font-size:12px; font-weight:600; }
.niche-chip::before { content:''; width:6px; height:6px; border-radius:999px; background:var(--mint); }
