/* v87 readability, authority links and contrast correction */
:root {
  --aa-v87-ink: #f8fbff;
  --aa-v87-muted: #d7e2f3;
  --aa-v87-dark: #071126;
  --aa-v87-panel: #10203d;
  --aa-v87-gold: #f4c430;
  --aa-v87-green: #13b86a;
  --aa-v87-light: #fffaf0;
  --aa-v87-light-ink: #14213d;
}

/* FIX (contrast bug): a blanket `body { color: var(--aa-v87-ink) }` was previously here.
   Body/main/article/page-shell sit on a LIGHT background by default (see main-home-v59.css
   :root --background), so forcing near-white (#f8fbff) text made most of the site's copy
   nearly invisible -- worst on mobile where there are fewer wrapping elements to mask it.
   Default text now correctly follows the light-surface ink color; only elements that are
   deliberately dark-backgrounded (.v87-dark-band, and dark hero/theme sections that already
   set their own background + color together elsewhere) use the light ink. */
body { color: var(--aa-v87-light-ink); }
a { text-underline-offset: .18em; }

.v87-readable,
.v87-readable p,
.v87-readable li,
.v87-readable span,
.v87-readable small {
  color: inherit;
}

.v87-light-card,
section[style*="fff"],
article[style*="fff"],
div[style*="fff"],
section[style*="cream"],
article[style*="cream"],
div[style*="cream"] {
  color: var(--aa-v87-light-ink) !important;
}

.v87-light-card *,
section[style*="fff"] *,
article[style*="fff"] *,
div[style*="fff"] *,
section[style*="cream"] *,
article[style*="cream"] *,
div[style*="cream"] * {
  color: inherit;
}

.v87-light-card a,
section[style*="fff"] a,
article[style*="fff"] a,
div[style*="fff"] a,
section[style*="cream"] a,
article[style*="cream"] a,
div[style*="cream"] a {
  color: #9a6a00 !important;
  font-weight: 800;
}

.v87-dark-band {
  color: var(--aa-v87-ink);
}

.v87-dark-band p,
.v87-dark-band li {
  color: var(--aa-v87-muted);
}

.v87-dark-band h1, .v87-dark-band h2, .v87-dark-band h3 {
  color: #fff7d6;
}

/* Sections that are genuinely dark-backgrounded (hero bands, navy themed pages) set
   their own background + color together elsewhere with !important and are unaffected
   by removing the generic main/.article/.page-shell/.v76-home-focus rule above. */

.shell-bottom a[href*="wa.me"],
.shell-actions .shell-whatsapp,
.v87-whatsapp-action {
  background: linear-gradient(135deg, #0aa84f, #25d366) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.42) !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.24), 0 12px 30px rgba(37,211,102,.34), 0 0 22px rgba(37,211,102,.42) !important;
}

.shell-bottom a[href*="wa.me"] svg,
.shell-actions .shell-whatsapp svg {
  stroke: #fff !important;
}

.v87-authority-links {
  margin: clamp(28px, 5vw, 64px) auto;
  padding: clamp(18px, 3vw, 28px);
  width: min(1120px, calc(100% - 32px));
  border: 1px solid rgba(244,196,48,.32);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(9,23,51,.96), rgba(18,39,75,.92));
  color: #f8fbff;
  box-shadow: 0 20px 60px rgba(0,0,0,.28);
}

.v87-authority-links h2 {
  margin: 0 0 8px;
  color: #ffe68a;
  font-size: clamp(1.15rem, 2vw, 1.65rem);
  line-height: 1.2;
}

.v87-authority-links p {
  margin: 0 0 16px;
  color: #dbe6f7;
}

.v87-authority-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
}

.v87-authority-grid a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 48px;
  padding: 12px 14px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 12px;
  background: rgba(255,255,255,.08);
  color: #fff !important;
  font-weight: 800;
  text-decoration: none;
}

.v87-authority-grid a::after {
  content: "Open";
  flex: 0 0 auto;
  color: #11203f;
  background: #f4c430;
  border-radius: 999px;
  padding: 4px 8px;
  font-size: .78rem;
}

@media (max-width: 720px) {
  .v87-authority-links {
    width: min(100% - 20px, 680px);
    border-radius: 14px;
    margin-bottom: 96px;
  }
  .v87-authority-grid {
    grid-template-columns: 1fr;
  }
  .v87-authority-grid a {
    font-size: .94rem;
  }
  .shell-primary span {
    font-size: clamp(.68rem, 2.8vw, .88rem) !important;
    line-height: 1.04 !important;
  }
}
