/* Marketing polish: one steady rhythm across every public page. Loaded after the page sheets, so it only evens things out:
   confident bold headings, one button shape, one reading size and calm hover states. Colours and layouts stay as designed. */

/* Headings: bold and tight, in the way of a clean product site. */
html body :is(h1, .h1), html body.marketing-suite :is(h1, .h1) { font-weight: 700 !important; letter-spacing: -.025em; line-height: 1.08; }
html body :is(h2, .h2), html body.marketing-suite :is(h2, .h2) { font-weight: 700 !important; letter-spacing: -.02em; line-height: 1.16; }
html body :is(h3, .h3) { font-weight: 700; letter-spacing: -.01em; line-height: 1.3; }
html body :is(h4, h5, h6) { font-weight: 700; }

/* Reading text: one comfortable size and line height, a softer grey than the headings. */
html body main :is(p, li) { line-height: 1.65; }
html body main p { font-size: max(1rem, 16px); }

/* Buttons: one shape (6px corners), bold labels, a quiet colour change on hover and a visible keyboard focus. */
html body .btn { border-radius: 6px; font-weight: 700; letter-spacing: 0; transition: background-color .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease; }
html body .btn:hover { transform: none; }
html body .btn:focus-visible, html body a:focus-visible, html body button:focus-visible { outline: 3px solid #2baae1; outline-offset: 2px; }

/* Navigation and small labels read as semi-bold, not light. */
html body :is(.site-nav, nav) a { font-weight: 600; }
html body :is(.eyebrow, [class*="eyebrow"], .kicker) { font-weight: 700; letter-spacing: .08em; }

/* Cards sit on a soft, even edge instead of a heavy shadow. */
html body :is(.card, .pricing-card, .plan-card, [class*="feature-card"]) { border-radius: 10px; }

@media (max-width: 640px) {
  html body :is(h1, .h1) { letter-spacing: -.02em; line-height: 1.12; }
  html body main p { font-size: 1rem; }
}
@media (prefers-reduced-motion: reduce) { html body .btn { transition: none; } }
