/* Public content follows the visitor's selected palette. Component-local
   aliases also cover the tool styles embedded after the shared stylesheets. */
html[data-home-theme] :is(.article-body, .article-extras, .tool-widget-shell) {
  --text: var(--home-text);
  --muted: var(--home-muted);
  --dim: var(--home-muted);
  --panel: var(--home-panel);
  --bg-2: var(--home-surface);
  --line: var(--home-border);
  --cyan: var(--home-accent);
  --blue: var(--home-accent);
  --green: var(--theme-success);
  --gold: var(--theme-warning);
  color: var(--home-text);
}

html[data-home-theme] :is(.article-body, .legal-body) :is(h2, h3, h4, strong, th),
html[data-home-theme] .article-extras h2 {
  color: var(--home-text);
}

html[data-home-theme] :is(.article-body, .legal-body) :is(p, ul, ol, td, figcaption),
html[data-home-theme] :is(.article-meta, .article-author p, .article-extras .eyebrow, .legal-updated),
html[data-home-theme] .article-meta .dot-sep::before {
  color: var(--home-muted);
}

html[data-home-theme] :is(.article-body, .article-author, .related-articles, .legal-body) a,
html[data-home-theme] .article-body li::marker {
  color: var(--home-accent);
  text-decoration-color: currentColor;
}

html[data-home-theme] :is(.article-body, .article-author, .related-articles, .legal-body) a:hover {
  color: var(--home-text);
}

html[data-home-theme] .article-extras {
  background: var(--home-surface);
  border-color: var(--home-border);
}

html[data-home-theme] .related-articles li {
  border-color: var(--home-border);
}

html[data-home-theme] .article-body blockquote {
  color: var(--home-text);
  border-color: var(--home-accent);
}

html[data-home-theme] .article-body :is(pre, code) {
  background: var(--home-surface);
  color: var(--home-text);
}

html[data-home-theme] .article-body pre {
  max-width: 100%;
  overflow-x: auto;
  padding: 16px;
  border: 1px solid var(--home-border);
  border-radius: 8px;
}

html[data-home-theme] .article-body table {
  width: 100%;
  border-collapse: collapse;
  background: var(--home-panel);
}

html[data-home-theme] .article-body :is(th, td) {
  border: 1px solid var(--home-border);
  padding: 10px 12px;
  text-align: left;
}

html[data-home-theme] .article-body :is(thead, .toc, [aria-label='Table of contents']) {
  background: var(--home-surface);
  border-color: var(--home-border);
}

@media (max-width: 600px) {
  html[data-home-theme] .article-body table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
  }
}

/* Widget inputs, generated previews and results share the same paired colors. */
html[data-home-theme] .tool-widget-shell {
  background: var(--home-panel);
  border-color: var(--home-border);
}

html[data-home-theme] .tool-widget-shell :is(input, select, textarea) {
  background-color: var(--home-surface);
  border-color: var(--field-border);
  color: var(--home-text);
  accent-color: var(--home-accent);
}

html[data-home-theme] .tool-widget-shell :is(input, textarea)::placeholder {
  color: var(--home-muted);
  opacity: 1;
}

html[data-home-theme] .tool-widget-shell :is(input, select, textarea, button):focus-visible {
  outline: 2px solid var(--home-accent);
  outline-offset: 3px;
}

html[data-home-theme] .tool-widget-shell .slo-calculator__mode[aria-pressed='true'] {
  background: var(--home-accent);
  color: var(--theme-on-accent, #fff);
}

html[data-home-theme] .tool-widget-shell :is(.sla-calculator__action, .sla-calculator__metric, .sla-calculator__results) {
  background: var(--home-surface);
  border-color: var(--home-border);
  color: var(--home-text);
}

html[data-home-theme] .tool-widget-shell :is(small, .sla-calculator__metric span) {
  color: var(--home-muted);
}

html[data-home-theme] .tool-widget-shell a {
  color: var(--home-accent);
}

/* Lead forms, including the local-hosting and paid landing variants. */
html[data-home-theme] :is(.lead-form-panel, .paid-landing-form) {
  background: var(--home-panel);
  border-color: var(--home-border);
  box-shadow: 0 16px 40px rgba(20, 43, 59, .08);
}

html[data-home-theme] :is(.lead-copy p, .lead-points li, .lead-fit) {
  color: var(--home-muted);
}

html[data-home-theme='light'] .form-notice--success {
  border-color: #88b29a;
  background: #edf8f1;
  color: #1d6b4d;
}

html[data-home-theme='light'] .form-notice--error {
  border-color: #cf979b;
  background: #fff0f1;
  color: #a52d35;
}

html[data-home-theme] .form-actions .button,
html[data-home-theme] .paid-landing-layout .paid-landing-primary,
html[data-home-theme] .paid-final-cta .button {
  border-color: var(--home-accent);
  background: var(--home-accent);
  color: var(--theme-on-accent, #fff);
}

html[data-home-theme] .form-actions .button:hover,
html[data-home-theme] .paid-landing-layout .paid-landing-primary:hover,
html[data-home-theme] .paid-final-cta .button:hover {
  border-color: var(--home-text);
  background: var(--home-text);
  color: var(--theme-on-accent, #fff);
}

html[data-home-theme] :is(.paid-landing-primary, .paid-final-cta .button, .form-actions .button) svg {
  color: inherit;
}

html[data-home-theme] .page :is(.form-actions .button, .paid-landing-primary, .paid-final-cta .button) .icon {
  color: var(--theme-on-accent, #fff);
}

html[data-home-theme] .paid-landing-layout .paid-landing-secondary {
  background: var(--home-panel);
  border-color: var(--home-accent);
  color: var(--home-accent);
}

html[data-home-theme] .paid-landing-layout .paid-landing-secondary svg {
  color: inherit;
}

html[data-home-theme] .paid-landing-hero {
  background: linear-gradient(135deg, var(--home-bg), var(--home-surface));
}

html[data-home-theme] .paid-landing-hero::before {
  content: none;
}

html[data-home-theme] :is(.paid-landing-layout h1, .paid-proof-metric strong, .paid-form-heading h2, .paid-section-heading h2, .paid-evidence-copy h2, .paid-process-heading h2, .paid-final-cta h2, .paid-question-list summary, .paid-deliverable h3, .paid-process-step h3) {
  color: var(--home-text);
}

html[data-home-theme] :is(.paid-landing-lede, .paid-landing-points li, .paid-landing-shopping-note, .paid-landing-fit, .paid-proof-metric span, .paid-form-heading p, .paid-trust-inner p, .paid-section-heading p, .paid-question-list p, .paid-deliverable p, .paid-evidence-copy > p, .paid-evidence-points li, .paid-process-step p) {
  color: var(--home-muted);
}

html[data-home-theme] :is(.paid-landing-eyebrow, .paid-section-kicker, .paid-evidence-kicker, .paid-question-list .paid-text-link, .paid-evidence-copy .paid-text-link),
html[data-home-theme] .paid-process-step::before {
  color: var(--home-accent);
}

html[data-home-theme] :is(.paid-landing-points li, .lead-points li)::before {
  background: var(--home-accent);
}

html[data-home-theme] :is(.paid-proof-metrics, .paid-proof-metric, .paid-form-heading, .paid-question-list, .paid-question-list details, .paid-deliverables, .paid-deliverable, .paid-evidence-points li, .paid-process-step, .paid-final-cta .wrap) {
  border-color: var(--home-border);
}

html[data-home-theme] :is(.paid-trust-strip, .paid-evidence-band) {
  background: var(--home-surface);
  border-color: var(--home-border);
}

html[data-home-theme='light'] .paid-trust-logos img {
  filter: grayscale(1);
  opacity: .82;
}

/* Client-logo evidence panels and illustrations retain their dark image mat. */
html[data-home-theme] :is(.case-file, .about-page .team-card) {
  background: var(--home-panel);
  border-color: var(--home-border);
  box-shadow: 0 8px 24px rgba(20, 43, 59, .04);
}

html[data-home-theme] :is(.case-file-meta h2, .about-page .team-card h3) {
  color: var(--home-text);
}

html[data-home-theme] :is(.case-file-meta .case-scope li, .case-file-body p, .case-outcome span, .about-page .team-bio) {
  color: var(--home-muted);
}

html[data-home-theme] :is(.case-file-meta .case-tag, .case-outcome, .about-page .team-role, .about-page .team-more-link, .about-page .about-inline-link) {
  color: var(--home-accent);
  text-decoration-color: currentColor;
}

html[data-home-theme] .about-page :is(.team-more-link, .about-inline-link):is(:hover, :focus-visible) {
  color: var(--home-text);
}

html[data-home-theme] .bash-page .bash-photo {
  border-color: var(--home-border);
  box-shadow: 0 18px 44px rgba(20, 43, 59, .12);
}

html[data-home-theme] .bash-page .bash-photo-count {
  background: var(--home-panel);
  border-color: var(--home-border);
  color: var(--home-text);
}
