/* NEXX audit completion layer — additive, URL/SEO/funnel safe. */
:root {
  /* Compact 4px rhythm. The previous audit layer accidentally doubled the
     shared shell scale and made every card, FAQ row and CTA oversized. */
  --nx-space-1: .25rem;
  --nx-space-2: .5rem;
  --nx-space-3: .75rem;
  --nx-space-4: 1rem;
  --nx-space-5: 1.25rem;
  --nx-space-6: 1.5rem;
  --nx-space-8: 2rem;
  --nx-touch: 3rem;
  --nx-wa: #117f3a;
}

/* The audit found local pages that explicitly zeroed the keyboard ring. */
html body :is(a, button, input, select, textarea, summary, [role="button"], [tabindex]):focus-visible {
  outline: 3px solid var(--nx-accent-soft, #67e8f9) !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 2px var(--nx-ink, #060a12) !important;
}

.nx-skip-link {
  position: fixed;
  z-index: 100000;
  top: max(.5rem, env(safe-area-inset-top, 0px));
  left: max(.5rem, env(safe-area-inset-left, 0px));
  min-height: var(--nx-touch);
  display: inline-flex;
  align-items: center;
  padding: .75rem 1rem;
  border-radius: .75rem;
  background: var(--nx-text, #f8fafc);
  color: var(--nx-ink, #060a12);
  font: 700 .875rem/1.2 var(--nx-font-body, system-ui, sans-serif);
  text-decoration: none;
  transform: translateY(calc(-100% - 1.5rem));
  transition: transform .16s ease;
}
.nx-skip-link:focus-visible { transform: translateY(0); }

.nx-audit-breadcrumbs {
  position: relative;
  z-index: 2;
  width: min(72rem, calc(100% - 2rem));
  margin: 0 auto;
  padding-top: calc(5rem + env(safe-area-inset-top, 0px));
  color: var(--nx-muted, #94a3b8);
  font: 600 .8125rem/1.5 var(--nx-font-body, system-ui, sans-serif);
}
.nx-audit-breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .25rem .5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.nx-audit-breadcrumbs li { display: inline-flex; align-items: center; gap: .5rem; }
.nx-audit-breadcrumbs li + li::before { content: "/"; color: var(--nx-faint, #64748b); }
.nx-audit-breadcrumbs a {
  min-height: var(--nx-touch);
  display: inline-flex;
  align-items: center;
  color: var(--nx-accent-soft, #67e8f9);
  text-underline-offset: .2em;
}
.nx-audit-breadcrumbs [aria-current="page"] { color: var(--nx-text, #f1f5f9); }

/* The breadcrumb supplies the fixed-header offset; avoid a second large empty band. */
.nx-has-audit-breadcrumbs :is(.nx-page-hero, .nx-guide-hero, .nx-b2b-hero) { padding-top: var(--nx-space-4); }
.nx-has-audit-breadcrumbs #app > main > :first-child { scroll-margin-top: 7rem; }
.nx-has-audit-breadcrumbs :is(.nx-page-hero, .nx-guide-hero, .nx-b2b-hero) > .nx-shell {
  padding-top: var(--nx-space-4) !important;
}
.nx-has-audit-breadcrumbs #app > article.nx-prose,
.nx-has-audit-breadcrumbs #app > article.nx-bios {
  padding-top: var(--nx-space-4) !important;
}

/* One reading system for guides and legal/service prose. */
.nx-prose :is(p, li),
.nx-guide-article :is(p, li),
.nx-guide-body article :is(p, li) { line-height: 1.6; }
.nx-prose,
.nx-prose article,
.nx-guide-article,
.nx-guide-body article { max-width: 65ch; }
.nx-prose :is(h2, h3),
.nx-guide-article :is(h2, h3) { scroll-margin-top: 7rem; }

/* Consistent 48px targets across desktop and touch layouts. */
html body :is(.nx-page-btn, .nx-btn, .nx-guide-chip, .nx-b2b-channels a, .nx-theme-toggle, .nx-header a, .nx-header button) {
  min-height: var(--nx-touch);
}
html body .nx-guide-link { min-height: var(--nx-touch); display: inline-flex; align-items: center; }
html body header :is(a, button),
html body footer :is(.nx-foot-link, .nx-foot-contact a, .nx-foot-location, a[aria-label], a[href="/directions"]) {
  min-height: var(--nx-touch) !important;
}
html body footer :is(.nx-foot-link, .nx-foot-contact a, a[href="/directions"]) {
  display: flex;
  align-items: center;
}
html body :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) { min-height: var(--nx-touch); }

/* WhatsApp green meets AA with white type; other CTAs stay visibly secondary. */
html body :is(.nx-page-btn--wa, .nx-btn--wa, .nx-sticky-mobile-cta a[href*="wa.me"], a[href*="api.whatsapp.com"]) {
  background: #117f3a !important;
  border-color: #0d6c31 !important;
  color: #fff !important;
}
#b2b-form p.text-slate-500 { color: var(--nx-muted, #94a3b8) !important; }
#b2b-form .nx-b2b-channels a[href*="wa.me"] { color: #4ade80 !important; }
.nx-guide-cta-row .nx-page-btn--primary:not([href*="wa.me"]),
.nx-page-cta .nx-page-btn--primary:not([href*="wa.me"]) {
  background: transparent;
  border-color: color-mix(in srgb, var(--nx-brand, #1d4ed8) 72%, var(--nx-border, #334155));
  color: var(--nx-text, #f1f5f9);
}
.nx-guide-cta-row .nx-page-btn--primary:not([href*="wa.me"]):hover,
.nx-page-cta .nx-page-btn--primary:not([href*="wa.me"]):hover {
  background: color-mix(in srgb, var(--nx-brand, #1d4ed8) 16%, transparent);
}
.nx-sticky-mobile-cta .nx-sticky-mobile-cta__secondary {
  background: transparent !important;
  border: 1px solid color-mix(in srgb, var(--nx-brand, #1d4ed8) 72%, var(--nx-border, #334155)) !important;
  color: var(--nx-text, #f1f5f9) !important;
}

/* Form help, inline errors, progress and result states. */
.nx-field-help,
.nx-field-error {
  display: block;
  margin-top: .5rem;
  font: 600 .8125rem/1.45 var(--nx-font-body, system-ui, sans-serif);
}
.nx-field-help { color: var(--nx-muted, #94a3b8); }
.nx-field-error { color: #fca5a5; }
html body [aria-invalid="true"] {
  border-color: #ef4444 !important;
  box-shadow: 0 0 0 1px #ef4444 !important;
}
html body form[aria-busy="true"] { cursor: progress; }
html body form[aria-busy="true"] :is(input, select, textarea, button) { opacity: .72; }

/* Preserve a usable page when JavaScript is unavailable or still loading. */
.nx-prerender-fallback {
  width: min(72rem, calc(100% - 2rem));
  margin: 0 auto;
  padding: var(--nx-space-4) 0 var(--nx-space-8);
  color: var(--nx-text, #f1f5f9);
  font-family: var(--nx-font-body, system-ui, sans-serif);
}
.nx-prerender-fallback h1 { margin: 0 0 var(--nx-space-2); font-size: clamp(2rem, 7vw, 3.5rem); line-height: 1.08; }
.nx-prerender-fallback h2 { margin: var(--nx-space-4) 0 var(--nx-space-2); font-size: clamp(1.25rem, 4vw, 1.75rem); }
.nx-prerender-fallback p,
.nx-prerender-fallback li { max-width: 65ch; line-height: 1.6; color: var(--nx-muted, #cbd5e1); }
.nx-prerender-fallback a { color: var(--nx-accent-soft, #67e8f9); }
.nx-prerender-fallback__links { display: grid; gap: var(--nx-space-1); padding-left: 1.2rem; }

/* Complete the 8pt cadence without changing content order or page identity. */
.nx-b2b-section,
.nx-guide-body { padding-block: clamp(var(--nx-space-4), 6vw, var(--nx-space-8)); }
.nx-b2b-form-card { gap: var(--nx-space-2); }
.nx-tile-grid,
.nx-guide-list,
.nx-flow { gap: var(--nx-space-2); }

@media (max-width: 767px) {
  body:has(.nx-sticky-mobile-cta) { padding-bottom: calc(5.75rem + env(safe-area-inset-bottom, 0px)); }
  .nx-audit-breadcrumbs {
    width: min(100% - 1rem, 72rem);
    padding-top: calc(4.25rem + env(safe-area-inset-top, 0px));
    overflow-x: auto;
    scrollbar-width: none;
  }
  .nx-audit-breadcrumbs ol { flex-wrap: nowrap; width: max-content; max-width: none; }
  .nx-audit-breadcrumbs li:last-child span {
    max-width: min(65vw, 24rem);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .nx-guide-cta-row,
  .nx-b2b-cta-row { align-items: stretch; }
  .nx-guide-cta-row .nx-page-btn,
  .nx-b2b-cta-row .nx-page-btn { flex: 1 1 100%; }
}

@media (min-width: 768px) {
  .nx-audit-breadcrumbs { padding-top: calc(6.5rem + env(safe-area-inset-top, 0px)); }
}

@media (prefers-reduced-motion: reduce) {
  .nx-skip-link { transition: none; }
}

[data-nx-theme="light"] .nx-audit-breadcrumbs [aria-current="page"] { color: var(--nx-text, #0f172a); }
[data-nx-theme="light"] .nx-field-error { color: #b91c1c; }
[data-nx-theme="light"] .nx-guide-cta-row .nx-page-btn--primary:not([href*="wa.me"]),
[data-nx-theme="light"] .nx-page-cta .nx-page-btn--primary:not([href*="wa.me"]) { color: var(--nx-text, #0f172a); }

/* Light palette completion: keep the dark theme untouched and translate
   legacy dark-page utilities into one accessible daylight scale. */
html[data-nx-theme="light"] {
  --nx-border-strong: rgba(24, 52, 86, .48);
  --nx-faint: #5f6f86;
  --nx-star: #b45309;
  --nx-light-canvas: #eef4fb;
  --nx-light-surface: #ffffff;
  --nx-light-subtle: #e7f0fa;
  --nx-light-elevated: #d8e6f5;
  --nx-light-border: #c5d3e4;
  --nx-light-border-strong: #73839a;
  --nx-light-text: #10213a;
  --nx-light-muted: #4b5b73;
  --nx-light-subdued: #5f6f86;
  --nx-light-link: #0b6678;
  --nx-light-link-hover: #173b87;
  --nx-light-success: #117f3a;
  --nx-light-success-hover: #0d6c31;
}

html[data-nx-theme="light"] body.nx-page {
  background: var(--nx-light-canvas) !important;
  color: var(--nx-light-text);
}

/* SEO service, contact and diagnostic articles still carry dark Tailwind
   utility names in their generated markup. Scope the translation to the
   article so header, footer and branded buttons remain intentional. */
html[data-nx-theme="light"] body.nx-page #app > article {
  color: var(--nx-light-text);
}
html[data-nx-theme="light"] body.nx-page #app > article :is(
  [class~="text-white"],
  [class~="text-slate-200"],
  [class~="text-gray-200"]
) {
  color: var(--nx-light-text) !important;
}
html[data-nx-theme="light"] body.nx-page #app > article :is(
  [class~="text-slate-300"],
  [class~="text-gray-300"],
  [class~="text-slate-400"],
  [class~="text-gray-400"]
) {
  color: var(--nx-light-muted) !important;
}
html[data-nx-theme="light"] body.nx-page #app > article :is(
  [class~="text-slate-500"],
  [class~="text-gray-500"],
  [class~="text-slate-600"],
  [class~="text-gray-600"]
) {
  color: var(--nx-light-subdued) !important;
}
html[data-nx-theme="light"] body.nx-page #app > article :is(
  [class~="text-cyan-300"],
  [class~="text-cyan-400"],
  [class~="text-cyan-400/90"],
  [class~="text-cyan-500"]
) {
  color: var(--nx-light-link) !important;
}
html[data-nx-theme="light"] body.nx-page #app > article a:hover {
  color: var(--nx-light-link-hover);
}
html[data-nx-theme="light"] body.nx-page #app > article :is(
  [class~="border-white/10"],
  [class~="border-white/20"],
  th,
  td
) {
  border-color: var(--nx-light-border) !important;
}

html[data-nx-theme="light"] body.nx-page #app > article .nx-money-actions a {
  min-height: var(--nx-touch);
  background: var(--nx-light-surface) !important;
  border: 1px solid var(--nx-light-border-strong) !important;
  color: var(--nx-light-text) !important;
}
html[data-nx-theme="light"] body.nx-page #app > article .nx-money-actions a:hover {
  background: var(--nx-light-subtle) !important;
  border-color: #64748b !important;
  color: var(--nx-light-text) !important;
}
html[data-nx-theme="light"] body.nx-page #app > article .nx-money-actions a:first-child {
  background: var(--nx-light-success) !important;
  border-color: var(--nx-light-success-hover) !important;
  color: #fff !important;
}
html[data-nx-theme="light"] body.nx-page #app > article .nx-money-actions a:first-child:hover {
  background: var(--nx-light-success-hover) !important;
  color: #fff !important;
}

/* FAQ and About used deliberately dark section utilities before a light theme
   existed. These semantic wrappers let the whole page follow the chosen theme. */
html[data-nx-theme="light"] body.nx-page :is(.nx-faq-page, .nx-about-page) {
  background: var(--nx-light-canvas) !important;
  color: var(--nx-light-text) !important;
}
html[data-nx-theme="light"] body.nx-page :is(.nx-faq-hero, .nx-about-hero) {
  background: linear-gradient(135deg, #dff3f6 0%, #eef6ff 54%, #eee9ff 100%) !important;
  border-bottom: 1px solid var(--nx-light-border);
  color: var(--nx-light-text) !important;
}
html[data-nx-theme="light"] body.nx-page :is(.nx-faq-hero, .nx-about-hero) :is(h1, h2, h3) {
  color: var(--nx-light-text) !important;
}
html[data-nx-theme="light"] body.nx-page :is(.nx-faq-hero, .nx-about-hero) p {
  color: var(--nx-light-muted) !important;
}
html[data-nx-theme="light"] body.nx-page .nx-faq-page .faq-item {
  background: var(--nx-light-surface) !important;
  border-color: var(--nx-light-border) !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .06);
}
html[data-nx-theme="light"] body.nx-page .nx-faq-page .faq-item:hover {
  border-color: var(--nx-light-border-strong) !important;
}
html[data-nx-theme="light"] body.nx-page .nx-faq-page .faq-item button:hover {
  background: var(--nx-light-subtle) !important;
}
html[data-nx-theme="light"] body.nx-page .nx-faq-page .faq-item button:focus-visible {
  outline: 3px solid var(--nx-light-link) !important;
  outline-offset: -3px !important;
}
html[data-nx-theme="light"] body.nx-page .nx-faq-page :is(.faq-item h3, .nx-page-cta h3) {
  color: var(--nx-light-text) !important;
}
html[data-nx-theme="light"] body.nx-page .nx-faq-page :is(.faq-answer, .faq-answer p) {
  color: var(--nx-light-muted) !important;
}
html[data-nx-theme="light"] body.nx-page .nx-faq-page .faq-answer {
  border-color: var(--nx-light-border) !important;
}
html[data-nx-theme="light"] body.nx-page .nx-faq-page [class~="text-gray-500"] {
  color: var(--nx-light-subdued) !important;
}

html[data-nx-theme="light"] body.nx-page .nx-about-page :is(.nx-about-story, .nx-about-team) {
  background: var(--nx-light-subtle) !important;
}
html[data-nx-theme="light"] body.nx-page .nx-about-page :is(.nx-about-values, .nx-about-contact) {
  background: var(--nx-light-canvas) !important;
  border-color: var(--nx-light-border) !important;
}
html[data-nx-theme="light"] body.nx-page .nx-about-page :is(
  [class~="bg-gray-900"],
  [class~="bg-gray-950/80"]
) {
  background: var(--nx-light-surface) !important;
  border-color: var(--nx-light-border) !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .05);
}
html[data-nx-theme="light"] body.nx-page .nx-about-page :is(
  [class~="text-white"],
  [class~="text-gray-200"]
) {
  color: var(--nx-light-text) !important;
}
html[data-nx-theme="light"] body.nx-page .nx-about-page :is(
  [class~="text-gray-300"],
  [class~="text-gray-400"]
) {
  color: var(--nx-light-muted) !important;
}
html[data-nx-theme="light"] body.nx-page .nx-about-page [class~="text-gray-500"] {
  color: var(--nx-light-subdued) !important;
}
html[data-nx-theme="light"] body.nx-page .nx-about-page :is(
  [class~="text-cyan-300"],
  [class~="text-cyan-400"],
  [class~="text-cyan-400/90"]
) {
  color: var(--nx-light-link) !important;
}
html[data-nx-theme="light"] body.nx-page .nx-about-page :is(
  [class~="text-green-300"],
  [class~="text-green-400"]
) {
  color: #166534 !important;
}
html[data-nx-theme="light"] body.nx-page .nx-about-page a:hover {
  color: var(--nx-light-link-hover) !important;
}

html[data-nx-theme="light"] body.nx-page :is(a, button).nx-bios-cta--off {
  background: var(--nx-light-elevated) !important;
  border: 1px solid var(--nx-light-border-strong) !important;
  color: var(--nx-light-muted) !important;
  -webkit-text-fill-color: var(--nx-light-muted) !important;
  opacity: 1;
}

/* A light document may still contain intentionally dark chrome. Reset its
   local tokens so inherited light typography never becomes dark-on-dark. */
html[data-nx-theme="light"] body footer:not(.nx-review__name) {
  --nx-text: #f1f5f9;
  --nx-muted: #cbd5e1;
  --nx-faint: #94a3b8;
  color: #f8fafc;
}
html[data-nx-theme="light"] body footer:not(.nx-review__name) :is(h1, h2, h3, h4, h5, h6) {
  color: #f1f5f9 !important;
}
html[data-nx-theme="light"] body footer:not(.nx-review__name) p {
  color: #cbd5e1 !important;
}
html[data-nx-theme="light"] body footer:not(.nx-review__name) :is(.text-slate-500, .text-gray-500, small) {
  color: #94a3b8 !important;
}
html[data-nx-theme="light"] body footer:not(.nx-review__name) a[href*="wa.me"][class*="bg-"] {
  background: var(--nx-light-success) !important;
  border-color: var(--nx-light-success-hover) !important;
  color: #fff !important;
}

html[data-nx-theme="light"] body .landing-app .nx-review__name {
  color: var(--nx-light-text) !important;
}
html[data-nx-theme="light"] body .landing-app :is(.nx-review__time, .nx-reviews-aggregate__meta) {
  color: var(--nx-light-muted) !important;
}

/* One contrast-safe treatment for remaining light-theme links and states. */
html[data-nx-theme="light"] #b2b-form .nx-b2b-channels a[href*="wa.me"] {
  color: #166534 !important;
}
html[data-nx-theme="light"] body :is(input, select, textarea)::placeholder {
  color: var(--nx-light-subdued);
  opacity: 1;
}
html[data-nx-theme="light"] body :is(input, select, textarea):disabled {
  background: var(--nx-light-elevated) !important;
  color: var(--nx-light-subdued) !important;
  opacity: 1;
}
html[data-nx-theme="light"] body [aria-invalid="true"] {
  background: #fff7f7;
}
html[data-nx-theme="light"] body :is(a, button, input, select, textarea):focus-visible {
  outline-color: var(--nx-light-link);
}

/* The mobile conversion rail is a single light surface. Legacy dark utility
   classes otherwise leave its secondary CTA dark-on-dark in the light theme. */
html[data-nx-theme="light"] .nx-sticky-mobile-cta > div {
  background: rgba(255, 255, 255, .97) !important;
  border-color: #cbd5e1 !important;
  box-shadow: 0 -10px 30px rgba(15, 23, 42, .12) !important;
}
html[data-nx-theme="light"] .nx-sticky-mobile-cta a[href*="wa.me"] {
  background: var(--nx-light-success) !important;
  border: 1px solid var(--nx-light-success-hover) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
html[data-nx-theme="light"] .nx-sticky-mobile-cta__secondary {
  background: #2557d6 !important;
  border: 1px solid #1d4ed8 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
html[data-nx-theme="light"] .nx-sticky-mobile-cta__secondary:hover {
  background: #1d4ed8 !important;
}

/* Keep the map legible: the generic overlay uses --nx-ink, which is a near-white
   canvas in the light theme and previously washed the whole map out. */
html[data-nx-theme="light"] .nx-location__map-ph__cta {
  color: var(--nx-light-text) !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, .92) !important;
  background: linear-gradient(
    135deg,
    rgba(13, 148, 136, .025) 0%,
    rgba(37, 87, 214, .04) 100%
  ) !important;
}
html[data-nx-theme="light"] .nx-location__map-ph__cta i {
  color: #0d6f87 !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, .88) !important;
}
html[data-nx-theme="light"] .nx-location__map-ph--btn:hover .nx-location__map-ph__cta,
html[data-nx-theme="light"] .nx-location__map-ph--btn:focus-visible .nx-location__map-ph__cta {
  background: linear-gradient(
    135deg,
    rgba(13, 148, 136, .055) 0%,
    rgba(37, 87, 214, .075) 100%
  ) !important;
}

/* Final full-sitemap pass: a few legacy standalone pages still wrap their
   content in Tailwind's dark canvas utilities. Keep their hero intentionally
   dark, but let the reading surface follow the selected light theme. */
html[data-nx-theme="light"] body.nx-page #app > [class~="bg-gray-950"] {
  background-color: var(--nx-light-canvas) !important;
  color: var(--nx-light-text) !important;
}
html[data-nx-theme="light"] body.nx-page #app > [class~="bg-gray-950"] > section[class~="bg-gray-900"] {
  background-color: var(--nx-light-canvas) !important;
  color: var(--nx-light-text) !important;
}
html[data-nx-theme="light"] body.nx-page #app > [class~="bg-gray-950"] > section[class~="bg-gray-900"] :is(
  h1, h2, h3, h4, h5, h6,
  th,
  [class~="text-white"],
  [class~="text-gray-100"],
  [class~="text-gray-200"]
) {
  color: var(--nx-light-text) !important;
}
html[data-nx-theme="light"] body.nx-page #app > [class~="bg-gray-950"] > section[class~="bg-gray-900"] :is(
  p, li, td,
  [class~="text-gray-300"],
  [class~="text-gray-400"]
) {
  color: var(--nx-light-muted) !important;
}
html[data-nx-theme="light"] body.nx-page #app > [class~="bg-gray-950"] > section[class~="bg-gray-900"] [class~="text-gray-500"] {
  color: var(--nx-light-subdued) !important;
}
html[data-nx-theme="light"] body.nx-page #app > [class~="bg-gray-950"] > section[class~="bg-gray-900"] [class~="border-gray-800"] {
  border-color: var(--nx-light-border) !important;
}
html[data-nx-theme="light"] body.nx-page #app > [class~="bg-gray-950"] > section[class~="bg-gray-900"] :is(th, td) {
  border-color: var(--nx-light-border) !important;
}
html[data-nx-theme="light"] body.nx-page #app > [class~="bg-gray-950"] > section[class~="bg-gray-900"] a:not(.nx-page-btn):not(.nx-btn) {
  color: var(--nx-light-link) !important;
}
html[data-nx-theme="light"] body.nx-page #app > [class~="bg-gray-950"] > section[class~="bg-gray-900"] a:not(.nx-page-btn):not(.nx-btn):hover {
  color: var(--nx-light-link-hover) !important;
}
html[data-nx-theme="light"] body.nx-page #app > [class~="bg-gray-950"] > section[class~="bg-gray-900"] :is(
  a.nx-page-btn--wa,
  a.nx-page-btn--secondary
) {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Muted utility colors were created for larger desktop copy. Raise them to a
   single AA-safe dark-theme tone for captions, bylines and footer legal text. */
html[data-nx-theme="dark"] body.nx-page :is(
  [class~="text-gray-500"],
  [class~="text-slate-500"],
  [class~="text-slate-600"]
) {
  color: #94a3b8 !important;
}

/* Backgrounded WhatsApp CTAs use one accessible green in both themes. Inline
   WhatsApp links keep the normal link palette. */
html body.nx-page a[href*="wa.me"][class*="bg-"],
html body.nx-page a[href*="api.whatsapp.com"][class*="bg-"] {
  background: #0b7a3d !important;
  border-color: #086532 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
html body.nx-page a[href*="wa.me"][class*="bg-"]:hover,
html body.nx-page a[href*="api.whatsapp.com"][class*="bg-"]:hover {
  background: #086532 !important;
  color: #fff !important;
}

/* Colour-first daylight theme (2026-08-30).
   The dark theme remains the default. In light mode, white is reserved for
   form controls; page bands and cards carry a restrained NEXX colour tint. */
html[data-nx-theme="light"] {
  --nx-ink: #dfeafb;
  --nx-surface: #f8fbff;
  --nx-surface-2: #dce8fa;
  --nx-elevated: #cadcf4;
  --nx-border: rgba(36, 72, 122, .28);
  --nx-border-strong: rgba(24, 57, 102, .58);
  --nx-brand: #285ad7;
  --nx-brand-hover: #1f49b8;
  --nx-brand-deep: #173a84;
  --nx-accent: #087f95;
  --nx-accent-soft: #086579;
  --nx-text: #10233f;
  --nx-muted: #4b607c;
  --nx-faint: #60728a;
  --nx-light-canvas: #dfeafb;
  --nx-light-surface: #f8fbff;
  --nx-light-subtle: #dce8fa;
  --nx-light-elevated: #cadcf4;
  --nx-light-border: #9eb6d5;
  --nx-light-border-strong: #6688b2;
  --nx-light-text: #10233f;
  --nx-light-muted: #4b607c;
  --nx-light-subdued: #60728a;
  --nx-light-link: #086579;
  --nx-light-link-hover: #173a84;
  --nx-day-blue: #d5e5ff;
  --nx-day-mint: #ceeee7;
  --nx-day-lilac: #e2d7ff;
  --nx-day-peach: #ffe0be;
  --nx-day-shadow: 0 14px 34px rgba(30, 68, 122, .15), 0 2px 6px rgba(24, 52, 86, .08);
}

html[data-nx-theme="light"] body.nx-page {
  background:
    radial-gradient(circle at 8% 10%, rgba(8, 127, 149, .2), transparent 25rem),
    radial-gradient(circle at 92% 30%, rgba(109, 63, 192, .2), transparent 28rem),
    linear-gradient(145deg, #d7edf4 0%, #dce6fa 52%, #e8dcfa 100%) !important;
  background-attachment: fixed !important;
}

html[data-nx-theme="light"] body.nx-page :is(.nx-guide, .nx-bios) {
  background: transparent;
}

html[data-nx-theme="light"] body.nx-page .nx-guide-hero {
  background:
    radial-gradient(circle at 12% 2%, rgba(0, 148, 168, .26), transparent 32%),
    radial-gradient(circle at 88% 42%, rgba(104, 78, 205, .27), transparent 34%),
    linear-gradient(135deg, #d2ecef 0%, #d7e4fa 52%, #e5d9fa 100%) !important;
  border-color: #96b2d2;
}

html[data-nx-theme="light"] body.nx-page .nx-guide-body {
  background:
    radial-gradient(circle at 90% 15%, rgba(40, 90, 215, .15), transparent 28rem),
    radial-gradient(circle at 5% 68%, rgba(8, 127, 149, .15), transparent 24rem),
    linear-gradient(180deg, rgba(225, 238, 252, .96), rgba(235, 227, 250, .96)) !important;
}

html[data-nx-theme="light"] body.nx-page :is(.nx-page-cta, .nx-b2b-form-card, .nx-bios-code-card, .nx-bios-owner, .nx-bios-owner__box) {
  background: linear-gradient(145deg, #f3f8ff 0%, #d6e5ff 100%) !important;
  border-color: #8eacd1 !important;
  box-shadow: var(--nx-day-shadow);
}

html[data-nx-theme="light"] body.nx-page .nx-guide-inline-visual__cluster {
  background: linear-gradient(135deg, #cdece5 0%, #d5e4ff 52%, #e2d7ff 100%) !important;
  border-color: #87a9ce;
  box-shadow: 0 10px 26px rgba(38, 75, 128, .13);
}

html[data-nx-theme="light"] body.nx-page .nx-guide-card {
  background: linear-gradient(145deg, #f0f6ff 0%, #d6e5ff 100%);
  border-color: #96b1d2;
  box-shadow: var(--nx-day-shadow);
}

html[data-nx-theme="light"] body.nx-page .nx-guide-card:nth-child(3n + 2) {
  background: linear-gradient(145deg, #edf9f6 0%, #ceeee7 100%);
}

html[data-nx-theme="light"] body.nx-page .nx-guide-card:nth-child(3n + 3) {
  background: linear-gradient(145deg, #f3efff 0%, #e2d7ff 100%);
}

html[data-nx-theme="light"] body.nx-page .nx-guide-card:hover {
  background: linear-gradient(145deg, #eef5ff 0%, #dbe8ff 100%);
  border-color: #6e91c1;
}

html[data-nx-theme="light"] body.nx-page .nx-guide-card__icon {
  background: linear-gradient(135deg, #d9eeff, #dff4ef);
  border: 1px solid #a9c8dd;
  color: #086579;
}

html[data-nx-theme="light"] body.nx-page .nx-faq-item {
  background: linear-gradient(135deg, #eef5ff 0%, #d5e5ff 100%);
  border-color: #95afd0;
  box-shadow: 0 7px 20px rgba(36, 75, 130, .07);
}

html[data-nx-theme="light"] body.nx-page .nx-faq-item:nth-child(3n + 2) {
  background: linear-gradient(135deg, #eefaf7 0%, #ceeee7 100%);
}

html[data-nx-theme="light"] body.nx-page .nx-faq-item:nth-child(3n + 3) {
  background: linear-gradient(135deg, #f3efff 0%, #e2d7ff 100%);
}

html[data-nx-theme="light"] body.nx-page .nx-faq-item[open] {
  border-color: #6f8fc0;
  box-shadow: 0 12px 26px rgba(36, 75, 130, .12);
}

html[data-nx-theme="light"] body.nx-page :is(.nx-guide-search input, .nx-bios-field, input, select, textarea) {
  background: #fbfdff !important;
  border-color: #aebfd5 !important;
  color: var(--nx-light-text) !important;
}

html[data-nx-theme="light"] body.nx-page :is(.nx-guide-chip, .nx-product-strip__link, .nx-b2b-chip) {
  background: linear-gradient(135deg, #f5f9ff, #e4edff);
  border-color: #b5c8e0;
  color: #405a78;
}

html[data-nx-theme="light"] body.nx-page :is(.nx-guide-chip, .nx-product-strip__link, .nx-b2b-chip).is-active {
  background: linear-gradient(135deg, #d9e8ff, #dff4ef);
  border-color: #7396c2;
  color: #173a84;
}

html[data-nx-theme="light"] body.nx-page :is(.nx-page-btn--primary, .nx-page-btn--secondary):not([href*="wa.me"]),
html[data-nx-theme="light"] body.nx-page .nx-bios-cta--primary {
  background: linear-gradient(135deg, #285ad7 0%, #3978e7 100%) !important;
  border-color: #1f49b8 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 10px 24px rgba(40, 90, 215, .24);
}

html[data-nx-theme="light"] body.nx-page :is(.nx-page-btn--primary, .nx-page-btn--secondary):not([href*="wa.me"]):hover,
html[data-nx-theme="light"] body.nx-page .nx-bios-cta--primary:hover {
  background: linear-gradient(135deg, #1f49b8 0%, #2d68d7 100%) !important;
}

html[data-nx-theme="light"] body.nx-page .nx-b2b-hero {
  background:
    radial-gradient(circle at 10% 12%, rgba(8, 127, 149, .27), transparent 32%),
    radial-gradient(circle at 88% 62%, rgba(109, 63, 192, .25), transparent 34%),
    linear-gradient(135deg, #d0ece8 0%, #d5e3fa 54%, #e4d9fa 100%) !important;
}

html[data-nx-theme="light"] body.nx-page .nx-b2b-section {
  background: linear-gradient(180deg, rgba(220, 234, 251, .96), rgba(211, 239, 232, .96));
}

html[data-nx-theme="light"] body.nx-page .nx-b2b-section--alt {
  background: linear-gradient(145deg, #e2d8fb, #d6e4fa) !important;
}

html[data-nx-theme="light"] body.nx-page .nx-tile {
  background: linear-gradient(145deg, #eef5ff, #d5e5ff);
  border-color: #95afd0;
  box-shadow: var(--nx-day-shadow);
}

html[data-nx-theme="light"] body.nx-page .nx-tile:nth-child(3n + 2) {
  background: linear-gradient(145deg, #eefaf7, #ceeee7);
}

html[data-nx-theme="light"] body.nx-page .nx-tile:nth-child(3n + 3) {
  background: linear-gradient(145deg, #f3efff, #e2d7ff);
}

html[data-nx-theme="light"] body.nx-page .nx-bios-hero {
  background:
    radial-gradient(circle at 88% 12%, rgba(111, 79, 210, .28), transparent 34%),
    radial-gradient(circle at 10% 92%, rgba(8, 127, 149, .25), transparent 32%),
    linear-gradient(145deg, #cfe9ec 0%, #d4e2fa 52%, #e2d6fb 100%) !important;
  border-color: #819fca;
  box-shadow: 0 18px 42px rgba(36, 75, 130, .13);
}

html[data-nx-theme="light"] body.nx-page :is(
  .nx-bios-step,
  .nx-bios-sample,
  .nx-bios-offer,
  .nx-bios-payment-choice,
  .nx-bios-summary,
  .nx-bios-checkout-summary,
  .nx-bios-selected,
  .nx-bios-offers__included,
  .nx-bios-inline-example
) {
  background: linear-gradient(145deg, #f7faff 0%, #e5eeff 100%) !important;
  border-color: #b3c7df !important;
  box-shadow: 0 8px 24px rgba(36, 75, 130, .08);
}

html[data-nx-theme="light"] body.nx-page .nx-bios-offer.is-active {
  background: linear-gradient(145deg, #dff4ef 0%, #dde9ff 100%) !important;
  border-color: #497ab4 !important;
}

html[data-nx-theme="light"] .nx-sticky-mobile-cta > div {
  background: linear-gradient(135deg, rgba(244, 249, 255, .98), rgba(229, 239, 255, .98)) !important;
  border-color: #9fb7d4 !important;
}

html[data-nx-theme="light"] body.nx-page .nx-bios-paypal-cta.nx-bios-cta--off {
  background: linear-gradient(135deg, #e8f0ff, #dce8fb) !important;
  border-color: #8fa8c9 !important;
}

html[data-nx-theme="light"] body.nx-page .nx-bios-cta--telegram.nx-bios-cta--off {
  background: linear-gradient(135deg, #e4f5f1, #d7ecea) !important;
  border-color: #7faeae !important;
}

html[data-nx-theme="light"] body.nx-page .nx-bios-cta--off :is(
  .nx-bios-cta__main,
  .nx-bios-cta__methods,
  .nx-bios-paypal-mark,
  .nx-bios-telegram-mark
) {
  color: #405a78 !important;
  -webkit-text-fill-color: #405a78 !important;
}

html[data-nx-theme="light"] body.nx-page .nx-bios-cta--off .nx-bios-cta__methods {
  color: #5b6f88 !important;
  -webkit-text-fill-color: #5b6f88 !important;
  opacity: 1;
}

/* Mobile BIOS decision screen — compact without removing proof or payment
   choices. This late layer also reaches cached standalone HTML pages. */
@media (max-width: 639px) {
  body.nx-page .nx-bios:has(.nx-bios-hero) {
    padding-right: max(0.75rem, env(safe-area-inset-right, 0px));
    padding-left: max(0.75rem, env(safe-area-inset-left, 0px));
  }
  body.nx-page .nx-bios-hero {
    gap: 0.875rem;
    margin-bottom: 1.5rem;
    padding: 1rem;
    border-radius: 14px;
  }
  body.nx-page .nx-bios-hero__eyebrow {
    margin-bottom: 0.55rem;
    font-size: 0.7rem;
    line-height: 1.35;
  }
  body.nx-page .nx-bios-hero h1.nx-h1 {
    margin-bottom: 0.75rem;
    font-size: 1.82rem;
    line-height: 1.06;
  }
  body.nx-page .nx-bios-hero .nx-bios-lead {
    margin-bottom: 0.85rem;
    font-size: 0.925rem;
    line-height: 1.5;
  }
  body.nx-page .nx-bios-hero__owner {
    margin-bottom: 0.75rem;
  }
  body.nx-page .nx-bios-hero__owner .nx-bios-owner {
    gap: 0.65rem;
    margin-bottom: 0.45rem;
    padding: 0.7rem 0.75rem;
    font-size: 0.8125rem;
    line-height: 1.4;
  }
  body.nx-page .nx-bios-hero__owner-note {
    font-size: 0.7rem;
    line-height: 1.4;
  }
  body.nx-page .nx-bios-hero__payment-title {
    margin-bottom: 0.45rem;
  }
  body.nx-page .nx-bios-hero__actions {
    gap: 0.55rem;
  }
  body.nx-page .nx-bios-hero__actions > .nx-bios-cta {
    min-height: 50px;
  }
  body.nx-page .nx-bios-hero__secondary-actions {
    margin-top: 0.55rem;
  }
  body.nx-page .nx-bios-hero__facts {
    padding: 0.75rem;
  }
  body.nx-page .nx-bios-hero__trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem 0.75rem;
    margin-bottom: 0.75rem;
  }
  body.nx-page .nx-bios-hero__trust-item {
    gap: 0.35rem;
    font-size: 0.75rem;
    line-height: 1.35;
  }
  body.nx-page .nx-bios-hero__code {
    gap: 0.2rem 0.45rem;
    margin-bottom: 0.55rem;
    padding-top: 0.65rem;
    font-size: 0.75rem;
    line-height: 1.35;
  }
  body.nx-page .nx-bios-hero__code strong {
    font-size: 0.875rem;
  }
  body.nx-page .nx-bios-hero__note {
    font-size: 0.68rem;
    line-height: 1.4;
  }
}
