/* South Africa content pages (service pages, guides, about, partners, privacy): shared layer loaded after each
   page's own inline styles. Same look as the homepage (src/za.css): WhatsApp first, readable tables on a phone,
   a bottom WhatsApp bar on phones once the page's own button has scrolled away. */

:root { --za-green: #0B6E4F; --za-green-dark: #08523B; --za-ink: #111827; --za-line: #E5E7EB; }
html { scroll-padding-top: 76px; }
body { font-family: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; }

/* header: logo image, no one-language picker */
.lp-logo { display: flex; align-items: center; }
.lp-logo img { height: 32px; width: auto; display: block; }
.lp-lang:has(.lp-lang-drop > a:only-child) { display: none; }
.lp-nav-btn.za-wa, .lp-btn-primary.za-wa { display: inline-flex; align-items: center; gap: 8px; background: var(--za-green) !important; color: #fff !important; border-color: var(--za-green) !important; }
.lp-nav-btn.za-wa:hover, .lp-btn-primary.za-wa:hover { background: var(--za-green-dark) !important; }
.za-wa svg { width: 20px; height: 20px; flex-shrink: 0; }
.lp-nav-btn.za-wa svg { width: 17px; height: 17px; }
.za-form-link { font-weight: 600; color: var(--za-green); align-self: center; }

/* bottom bar */
.za-sticky { display: none; }

@media (max-width: 640px) {
  .lp-container { padding-left: 12px !important; padding-right: 12px !important; }
  .lp-hero, .lp-content { padding-left: 16px !important; padding-right: 16px !important; }
  .lp-logo img { height: 26px; }
  .lp-cta-row { flex-direction: column; align-items: stretch; }
  .lp-cta-row .lp-btn-primary { justify-content: center; width: 100%; }
  /* two-column fact tables (a header cell per row): a narrow label column, table semantics kept */
  .lp-table-wrap th[scope="row"] { width: 32%; padding: 10px 8px !important; font-size: .9rem; vertical-align: top; }
  .lp-table-wrap th[scope="row"] + td { padding: 10px 8px !important; font-size: .92rem; }
  .za-sticky { display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 150; padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
    background: #fff; border-top: 1px solid var(--za-line); transform: translateY(110%); visibility: hidden; transition: transform .2s ease, visibility .2s; }
  .za-sticky.is-on { transform: none; visibility: visible; }
  .za-sticky a { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; border-radius: 10px;
    background: var(--za-green); color: #fff; font-weight: 700; text-decoration: none; }
  .lp-footer { padding-bottom: 96px !important; }
  html { scroll-padding-bottom: 88px; }
}

@media (prefers-reduced-motion: reduce) { .za-sticky { transition: none; } }
