/*
 * Global readability / contrast hardening
 * Scope: shared DE / EN / ES layouts and page-specific premium sections.
 * Goal: ensure text remains clearly readable on dark surfaces across desktop and mobile.
 */

/* Shared strategic dark sections */
:where(.lt-section--dark, .lt-card--dark) {
  color: #e8f1f8;
}

:where(.lt-section--dark, .lt-card--dark) :is(h1, h2, h3, h4, h5, h6, strong, summary) {
  color: #ffffff !important;
}

:where(.lt-section--dark, .lt-card--dark) :is(p, li, .lt-lead, .lt-note, .lt-muted, .lt-small) {
  color: #d5e3ee !important;
}

.lt-section--dark .lt-eyebrow,
.lt-card--dark .lt-eyebrow {
  color: #b8def8 !important;
}

.lt-section--dark .lt-eyebrow::before,
.lt-card--dark .lt-eyebrow::before {
  background: #7fc1f4 !important;
}

.lt-section--dark .lt-list li::before,
.lt-card--dark .lt-list li::before {
  color: #93e1be !important;
}

.lt-section--dark a:not(.lt-btn):not(.lt-contact-option):not(.lt-proof-link),
.lt-card--dark a:not(.lt-btn):not(.lt-contact-option):not(.lt-proof-link) {
  color: #c5e6ff;
}

.lt-section--dark a:not(.lt-btn):not(.lt-contact-option):not(.lt-proof-link):hover,
.lt-card--dark a:not(.lt-btn):not(.lt-contact-option):not(.lt-proof-link):hover {
  color: #ffffff;
}

/* IT-Consulting premium dark surfaces */
:where(.ltc-section--dark, .ltc-contact-panel) {
  color: #ebf7f3;
}

:where(.ltc-section--dark, .ltc-contact-panel) :is(h1, h2, h3, h4, h5, h6, strong) {
  color: #ffffff !important;
}

:where(.ltc-section--dark, .ltc-contact-panel) :is(p, li, .ltc-lead, .ltc-note, .ltc-muted, .ltc-overline) {
  color: #d5ebe4 !important;
}

.ltc-section--dark :is(.ltc-section-head p, .ltc-analysis-intro > p, .ltc-trust-copy > p, .ltc-faq-intro > p),
.ltc-contact-panel :is(.ltc-contact-meta, .ltc-contact-meta p, .ltc-contact-panel__note, .ltc-contact-panel__hint) {
  color: #d5ebe4 !important;
}

.ltc-section--dark .ltc-eyebrow:not(.ltc-eyebrow--light),
.ltc-contact-panel .ltc-overline {
  color: #bde9d9 !important;
}

.ltc-section--dark .ltc-eyebrow::before {
  background: #8ad7bf !important;
}

.ltc-section--dark a:not(.ltc-btn),
.ltc-contact-panel a:not(.ltc-btn) {
  color: #d5f3ea;
}

.ltc-section--dark a:not(.ltc-btn):hover,
.ltc-contact-panel a:not(.ltc-btn):hover {
  color: #ffffff;
}

/* About page dark storytelling blocks */
#lt-ueber-mich-page :is(.lt-about-content__section--dark, .lt-about-content__highlight, .lt-about-content__closing) :is(h2, h3, h4, p, li, strong, span) {
  color: #ffffff !important;
}

#lt-ueber-mich-page .lt-about-content__section--dark .lt-about-content__meta,
#lt-ueber-mich-page .lt-about-content__highlight .lt-about-content__meta,
#lt-ueber-mich-page .lt-about-content__closing .lt-about-content__meta {
  color: #dbe8f2 !important;
}

/* Contact / premium info cards on dark gradients */
:where(.lt-kontakt-hero__method, .lt-contact-panel--dark, .ltrf-proof-app) :is(h2, h3, h4, p, li, strong, span) {
  color: #ffffff;
}

/* Keep form fields readable if placed on dark panels */
:where(.lt-section--dark, .lt-card--dark, .ltc-section--dark, .ltc-contact-panel) input,
:where(.lt-section--dark, .lt-card--dark, .ltc-section--dark, .ltc-contact-panel) textarea,
:where(.lt-section--dark, .lt-card--dark, .ltc-section--dark, .ltc-contact-panel) select {
  color: #10252b;
}
