/* Shared light theme for the public premium experience. */
[data-bs-theme="light"] body {
  background: #f6f3ef;
  color: #171411;
}

[data-bs-theme="light"] :is(.about-premium,.services-premium,.academy,.contact-premium,.faq-premium,.sd-page,.fd-page) {
  color: #171411 !important;
  background: #f6f3ef !important;
}

/* Heroes intentionally keep a dark photographic treatment for contrast. */
[data-bs-theme="light"] :is(.ap-hero,.sp-hero,.ac-hero,.cp-hero,.fq-hero,.sd-hero,.fd-hero) {
  color: #fff !important;
}
[data-bs-theme="light"] :is(.ap-hero,.sp-hero,.ac-hero,.cp-hero,.fq-hero,.sd-hero,.fd-hero) p,
[data-bs-theme="light"] :is(.ap-hero,.sp-hero,.ac-hero,.cp-hero,.fq-hero,.sd-hero,.fd-hero) .fd-hero-summary {
  color: #d4d0cc !important;
}
[data-bs-theme="light"] :is(.ap-breadcrumb,.sp-breadcrumb,.ac-breadcrumb,.cp-breadcrumb,.fq-breadcrumb,.sd-breadcrumb,.fd-breadcrumb) a {
  color: #f4f1ed !important;
}
[data-bs-theme="light"] :is(.ap-breadcrumb,.sp-breadcrumb,.ac-breadcrumb,.cp-breadcrumb,.fq-breadcrumb,.sd-breadcrumb,.fd-breadcrumb) span {
  color: #aaa49e !important;
}

/* Page surfaces. */
[data-bs-theme="light"] :is(.ap-story,.ap-metrics,.ap-values,.ap-cta,.sp-catalog,.sp-process,.sp-why,.sp-cta,.ac-benefits,.ac-programs,.ac-path,.ac-cta,.cp-main,.cp-map-section,.fq-main,.fq-cta,.sd-overview,.sd-process,.sd-cta,.fd-main,.fd-cta) {
  color: #171411 !important;
  background-color: #f6f3ef !important;
}

/* Cards and panels. */
[data-bs-theme="light"] :is(.ap-metric-grid,.ap-value-card,.sp-card,.sp-process-grid,.sp-step,.sp-why-panel,.sp-benefit,.ac-benefit-grid,.ac-benefit,.ac-card,.ac-path-copy,.ac-step,.cp-aside,.cp-form-card,.fq-sidebar,.fq-item,.sd-cap,.sd-step-grid,.sd-step,.fd-panel,.fd-sidebar-card,.fd-info,.fd-outcome) {
  color: #1c1814 !important;
  background: #fff !important;
  border-color: #ded8d1 !important;
  box-shadow: 0 18px 50px rgba(49, 35, 23, .07);
}
[data-bs-theme="light"] :is(.ap-metric,.sp-step,.ac-benefit,.sd-step) {
  border-color: #ded8d1 !important;
}
[data-bs-theme="light"] :is(.ap-metric:hover,.sp-step:hover,.ac-benefit:hover,.sp-benefit:hover,.sd-step:hover,.fd-outcome:hover) {
  background: #fff8f2 !important;
  border-color: rgba(255,105,0,.38) !important;
}

/* Typography. */
[data-bs-theme="light"] :is(.ap-content h2,.ap-section-head h2,.ap-value-card h3,.ap-metric strong,.sp-head h2,.sp-card h3,.sp-step h3,.sp-why-panel h2,.sp-benefit h3,.ac-head h2,.ac-card h3,.ac-path-copy h2,.ac-step h3,.cp-aside h2,.cp-form-card h2,.cp-section-head h2,.fq-content-head h2,.fq-empty h3,.fq-no-results h3,.sd-content h2,.sd-capabilities h3,.sd-head h2,.sd-step h3,.fd-panel h2,.fd-sidebar-card h3,.fd-info strong) {
  color: #171411 !important;
}
[data-bs-theme="light"] :is(.ap-copy,.ap-section-head p,.ap-value-card li,.ap-metric span,.sp-head p,.sp-description,.sp-step p,.sp-why-panel p,.sp-benefit p,.ac-head p,.ac-description,.ac-benefit p,.ac-path-copy p,.ac-step p,.cp-aside-copy,.cp-form-intro,.cp-section-head p,.fq-help-mini p,.fq-empty p,.fq-no-results p,.sd-description,.sd-head p,.sd-step p,.fd-description,.fd-sidebar-card p,.fd-outcome) {
  color: #625b54 !important;
}

/* Form and contact data. */
[data-bs-theme="light"] .cp-field label { color: #625b54 !important; }
[data-bs-theme="light"] :is(.cp-field input,.cp-field textarea) {
  color: #171411 !important;
  background: #fbfaf8 !important;
  border-color: #d8d2cb !important;
}
[data-bs-theme="light"] :is(.cp-field input,.cp-field textarea)::placeholder { color: #938b83 !important; }
[data-bs-theme="light"] :is(.cp-field input,.cp-field textarea):focus {
  background: #fff !important;
  border-color: #ff6900 !important;
}
[data-bs-theme="light"] .cp-contact-item { border-color: #e6e0da !important; }
[data-bs-theme="light"] .cp-contact-item strong { color: #302a25 !important; }
[data-bs-theme="light"] .cp-socials a { color: #625b54 !important; border-color: #d8d2cb !important; }

/* FAQ accordion. */
[data-bs-theme="light"] .fq-item .accordion-button,
[data-bs-theme="light"] .fq-item .fq-answer {
  color: #211c18 !important;
  background: #fff !important;
}
[data-bs-theme="light"] .fq-item .accordion-button:not(.collapsed) { background: #fff5ed !important; }
[data-bs-theme="light"] .fq-answer { color: #625b54 !important; }
[data-bs-theme="light"] .fq-toggle { color: #625b54 !important; border-color: #d7d0c9 !important; }
[data-bs-theme="light"] .fq-search input {
  color: #fff !important;
  background: rgba(8,8,8,.78) !important;
}

/* Orange CTA panels stay dark for a clear visual endpoint. */
[data-bs-theme="light"] :is(.ap-cta-box,.sp-cta-box,.ac-cta-box,.fq-cta-box,.sd-cta-box,.fd-cta-box) {
  color: #fff !important;
  background: linear-gradient(110deg,#291307,#18110d 58%,#111) !important;
}
[data-bs-theme="light"] :is(.ap-cta-box,.sp-cta-box,.ac-cta-box,.fq-cta-box,.sd-cta-box,.fd-cta-box) p { color: #c8c0ba !important; }

/* Homepage premium sections. */
[data-bs-theme="light"] :is(.home-services-premium,.home-solutions-premium,.home-portfolio-premium,.home-training-premium,.home-testimonials-premium,.home-strengths-premium,.home-partners-premium) {
  color: #171411;
  background-color: #f6f3ef;
}
[data-bs-theme="light"] :is(.service-premium-card,.solution-premium-card,.portfolio-premium-card,.training-premium-card,.testimonial-premium-card,.strength-premium-card,.partner-premium-card) {
  color: #171411 !important;
  background: #fff !important;
  border-color: #ded8d1 !important;
}

@media (prefers-reduced-motion: reduce) {
  [data-bs-theme="light"] * { scroll-behavior: auto !important; }
}

/* Portfolio and case study: explicit two-theme contrast rules. */
[data-bs-theme="light"] :is(.work-page,.case-page) {
  color: #171411 !important;
  background: #f6f3ef !important;
}
[data-bs-theme="light"] :is(.wk-portfolio,.wk-approach,.wk-cta,.cs-story,.cs-related,.cs-cta) {
  color: #171411 !important;
  background: #f6f3ef !important;
}
[data-bs-theme="light"] :is(.wk-hero,.cs-hero) {
  color: #fff !important;
  background-color: #090909 !important;
}
[data-bs-theme="light"] :is(.wk-hero p,.cs-lead,.wk-breadcrumb span,.cs-breadcrumb span,.wk-meta span,.cs-meta span) {
  color: #c9c4bf !important;
}
[data-bs-theme="light"] :is(.wk-breadcrumb a,.cs-breadcrumb a) { color: #f4f1ed !important; }
[data-bs-theme="light"] :is(.wk-metric-grid,.wk-toolbar,.wk-approach-copy,.wk-value,.cs-panel,.cs-sidebar-card,.cs-result,.cs-related-card) {
  color: #171411 !important;
  background: #fff !important;
  border-color: #ded8d1 !important;
  box-shadow: 0 18px 50px rgba(49,35,23,.07) !important;
}
[data-bs-theme="light"] :is(.wk-metric,.cs-detail) { border-color: #e5dfd8 !important; }
[data-bs-theme="light"] :is(.wk-metric strong,.wk-head h2,.wk-approach-copy h2,.wk-value h3,.cs-panel h2,.cs-result h3,.cs-head h2,.cs-related-body h3) {
  color: #171411 !important;
}
[data-bs-theme="light"] :is(.wk-metric span,.wk-head p,.wk-approach-copy p,.wk-value p,.wk-count,.cs-description,.cs-result p,.cs-detail small,.cs-trust span) {
  color: #625b54 !important;
}
[data-bs-theme="light"] .cs-detail strong { color: #302a25 !important; }
[data-bs-theme="light"] .wk-toolbar { background: rgba(255,255,255,.92) !important; }
[data-bs-theme="light"] .wk-filter { color: #625b54 !important; }
[data-bs-theme="light"] :is(.wk-filter:hover,.wk-filter.active) {
  color: #b74700 !important;
  border-color: rgba(255,105,0,.3) !important;
  background: #fff1e7 !important;
}
[data-bs-theme="light"] :is(.wk-card,.cs-preview-frame) {
  background: #111 !important;
  border-color: #d7cfc7 !important;
}
[data-bs-theme="light"] :is(.wk-card h3,.wk-card-content,.wk-category,.wk-card-index,.cs-preview-label) { color: #fff !important; }
[data-bs-theme="light"] :is(.wk-description,.wk-meta,.cs-preview-label small) { color: #c8c2bc !important; }
[data-bs-theme="light"] :is(.wk-cta-box,.cs-cta-box) {
  color: #fff !important;
  background: linear-gradient(110deg,#291307,#18110d 58%,#111) !important;
}
[data-bs-theme="light"] :is(.wk-cta-box p,.cs-cta-box p) { color: #c8c0ba !important; }

[data-bs-theme="dark"] :is(.work-page,.case-page,.wk-portfolio,.wk-approach,.wk-cta,.cs-story,.cs-related,.cs-cta) {
  color: #fff !important;
  background-color: #080808 !important;
}
[data-bs-theme="dark"] :is(.wk-metric-grid,.wk-toolbar,.wk-approach-copy,.wk-value,.cs-panel,.cs-sidebar-card,.cs-result,.cs-related-card) {
  color: #fff !important;
  background: #121212 !important;
  border-color: #2d2d2d !important;
}
[data-bs-theme="dark"] :is(.wk-head h2,.wk-approach-copy h2,.wk-value h3,.wk-metric strong,.cs-panel h2,.cs-result h3,.cs-head h2,.cs-related-body h3,.cs-detail strong) {
  color: #fff !important;
}
[data-bs-theme="dark"] :is(.wk-head p,.wk-approach-copy p,.wk-value p,.wk-metric span,.wk-count,.cs-description,.cs-result p,.cs-detail small,.cs-trust span) {
  color: #999 !important;
}
[data-bs-theme="dark"] .wk-filter { color: #999 !important; }
[data-bs-theme="dark"] :is(.wk-filter:hover,.wk-filter.active) {
  color: #fff !important;
  border-color: rgba(255,105,0,.3) !important;
  background: rgba(255,105,0,.1) !important;
}
