/* /ai-search-report/ — the sign-up card under the hero (30 Oct 2026).
   The form itself reuses the footer box styles in /site-chrome.css (.sf-news*);
   public/site-chrome.js binds it. */
.nl { padding: 8px 0 56px; }
.nl-card {
  display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px;
  max-width: 980px; margin: 0 auto; padding: 28px 24px;
  border: 1px solid #e1e8f0; border-radius: 22px; background: #fff;
  box-shadow: 0 24px 48px -24px rgba(10, 34, 69, 0.18);
}
.nl-kicker { margin: 0 0 8px; font-size: 12px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: #4338ca; }
.nl-copy h2 { margin: 0 0 14px; font-family: "Inter Tight", "Inter", system-ui, sans-serif; font-size: clamp(24px, 3.4vw, 32px); line-height: 1.15; letter-spacing: -0.02em; color: #0a2245; }
.nl-list { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 10px; }
.nl-list li { position: relative; padding-left: 22px; font-size: 16px; line-height: 1.55; color: #2d4663; }
.nl-list li::before { content: ""; position: absolute; left: 0; top: 9px; width: 8px; height: 8px; border-radius: 50%; background: linear-gradient(135deg, #8b5cf6, #3b82f6); }
.nl-copy, .nl-form { min-width: 0; }
.nl-form { align-self: start; margin: 0; }
@media (min-width: 820px) {
  .nl-card { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); padding: 36px; gap: 36px; }
}
