/* The Crew Dispatch brand overrides - palette only, layout comes from style.css */
:root {
  --primary: #0f6fbf;
  --secondary: #c2571a;
  --gradient: linear-gradient(90deg,#0f6fbf,#2a8fd6,#c2571a);
}
.site-logo__accent { background: var(--primary); }
.card__badge--blue { color: #0f6fbf; }

/* newsletter block (not part of the base sheet) */
.newsletter { background: var(--bg-light); border-top: 1px solid var(--grey-border);
  border-bottom: 1px solid var(--grey-border); }
.newsletter__inner { max-width: 640px; margin: 0 auto; padding: 3rem 1.5rem; text-align: center; }
.newsletter h2 { font-family: var(--font-display); font-size: clamp(1.4rem, 3vw, 2rem); margin-bottom: .4rem; }
.newsletter__sub { font-family: var(--font-ui); font-size: .85rem; color: var(--text-light); margin-bottom: 1.2rem; }
.newsletter__form { display: flex; gap: .5rem; flex-wrap: wrap; justify-content: center; }
.newsletter__form input { flex: 1 1 240px; min-width: 0; padding: .8rem 1rem; font-family: var(--font-ui);
  font-size: .9rem; border: 1px solid var(--grey-border); border-radius: 4px; background: #fff; }
.newsletter__form button { padding: .8rem 1.4rem; font-family: var(--font-ui); font-size: .8rem;
  font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #fff; border: 0;
  border-radius: 4px; background: var(--gradient); cursor: pointer; }
.site-footer__links { font-family: var(--font-ui); font-size: .72rem; letter-spacing: .04em;
  color: var(--grey-mid); margin: .6rem 0; }
.site-footer__links a:hover { color: var(--primary); }

/* sections render without JS: style.css hides .fade-section until an observer
   flips it, which leaves the page blank for bots and screenshots */
.category-section.fade-section { opacity: 1; transform: none; }
