/* Shared refinements. Preserve the original palette, typography and layouts. */
button, input, select, textarea { font: inherit; }
input, select, textarea { min-width: 0; }
select option, select optgroup { background: #0b1220; color: #fff; }
.brand img, .nav-toggle, .kicker .dot { flex-shrink: 0; }
.brand > div { min-width: 0; }
.nav-toggle { min-width: 44px; min-height: 44px; }
.grid > *, .about-grid > *, .contact-grid > *, .proof > * { min-width: 0; }
.tile p, .pricing-example p { color: rgba(255,255,255,.76); }
.tile p.small, .pricing-example p.small { color: var(--muted); }
.business-services { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }
.business-signals { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 24px; margin-top: 4px; }
section[id], main[id] { scroll-margin-top: 96px; }
a:focus-visible, button:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.news-chip { min-height: 44px; }
.news-empty { grid-column: 1 / -1; }
.news-badge { font-size: 12px; }
.news-link .btn { font-size: 14px; padding: 10px 12px; box-shadow: none; }
.navlinks a[aria-current="page"] { color: white; background: rgba(255,255,255,.07); }

@media (max-width: 980px) {
  header.site-header .navlinks { top: calc(100% - 2px); max-height: calc(100dvh - 90px); overflow-y: auto; background: #0b1220; box-shadow: var(--shadow-soft); }
  .business-services { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  section, .section--alt { padding: 52px 0; }
  .brand .sub { max-width: 23ch; line-height: 1.3; }
  .form .row, .business-signals { grid-template-columns: 1fr; }
  .business-signals { gap: 14px; }
  .lead { font-size: 16px; }
  .contact-grid .btn, .form .btn { white-space: normal; }
  section[id], main[id] { scroll-margin-top: 100px; }
}
