/* Footer cross-links to sister products (same cards as the app footer; shared by every landing page): raised graphite, the product's own colour glows in on hover */
footer .other-products { flex-basis: 100%; margin: 0 0 32px; padding-bottom: 32px; border-bottom: 1px solid var(--graphite-line, rgba(255, 255, 255, 0.12)); }
footer .other-products .footer-h { margin: 0 0 12px; font-size: 13px; color: var(--on-graphite-muted); font-weight: 500; }
footer ul.product-grid { list-style: none; margin: 0; padding: 0; }
footer ul.product-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
footer a.product-card { position: relative; isolation: isolate; display: flex; align-items: center; gap: 16px; padding: 16px 18px; overflow: hidden;
  border: 1px solid var(--graphite-line, rgba(255, 255, 255, 0.12)); border-radius: 14px; background: var(--graphite-raised, #191a22); color: var(--on-graphite-muted); text-decoration: none;
  transition: border-color 220ms ease-out, transform 220ms ease-out, box-shadow 220ms ease-out; }
.product-card::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: 0; transition: opacity 260ms ease-out;
  background: radial-gradient(120% 140% at 0% 0%, color-mix(in srgb, var(--accent) 26%, transparent), transparent 60%); }
.product-card::after { content: ""; position: absolute; inset: 0; pointer-events: none; transform: translateX(-130%);
  background: linear-gradient(105deg, transparent 40%, rgba(255, 255, 255, 0.07) 50%, transparent 60%); }
footer a.product-card:hover, footer a.product-card:focus-visible { color: var(--on-graphite); text-decoration: none; transform: translateY(-2px);
  border-color: color-mix(in srgb, var(--accent) 55%, transparent); box-shadow: 0 10px 30px -12px color-mix(in srgb, var(--accent) 50%, transparent); }
.product-card:hover::before, .product-card:focus-visible::before { opacity: 1; }
.product-card:hover::after { transform: translateX(130%); transition: transform 700ms ease-out; }
.product-lockup { display: flex; flex: none; align-items: center; gap: 10px; }
.product-lockup img { width: 36px; height: 36px; border-radius: 24%; display: block; }
.product-wordmark { display: block; height: 18px; background: #fff; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: left center; mask-position: left center; }
.product-tagline { flex: 1; min-width: 0; font-size: 13px; line-height: 1.4; }
.product-card-arrow { flex: none; color: var(--on-graphite-muted); transition: color 220ms, transform 220ms ease-out; }
.product-card:hover .product-card-arrow { color: var(--accent); transform: translate(2px, -2px); }
@media (max-width: 760px) {
  footer ul.product-grid { grid-template-columns: minmax(0, 1fr); }
  footer a.product-card { flex-direction: column; align-items: flex-start; gap: 12px; }
  .product-card-arrow { position: absolute; top: 18px; right: 18px; }
}
@media (prefers-reduced-motion: reduce) { footer a.product-card, .product-card::after, .product-card-arrow { transition: none; } footer a.product-card:hover { transform: none; } }
