/* =====================================================
 * Light theme global overrides
 * Forces white UI across shared components
 * ===================================================== */

html {
  color-scheme: light;
}

body {
  background: var(--bg-primary);
  color: var(--text-primary);
}

/* Navbar */
.navbar {
  background: rgba(255, 255, 255, 0.88);
  border-bottom: 1px solid var(--border-subtle);
}

.navbar--scrolled {
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: var(--shadow-sm) !important;
  border-bottom-color: var(--border-default) !important;
}

.navbar__link:hover,
.navbar__link--active {
  color: var(--text-primary);
}

.navbar__toggle {
  color: var(--text-primary);
}

/* Mobile nav */
.mobile-nav {
  background: transparent !important;
  color: var(--text-primary);
}

.mobile-nav__panel {
  background:
    radial-gradient(ellipse 80% 50% at 90% 0%, rgba(15, 118, 110, 0.12) 0%, transparent 55%),
    radial-gradient(ellipse 60% 40% at 0% 100%, rgba(196, 94, 18, 0.10) 0%, transparent 50%),
    linear-gradient(165deg, #ffffff 0%, #f7fafb 48%, #fff9f3 100%) !important;
}

.mobile-nav__link,
.mobile-nav__label {
  color: var(--text-primary) !important;
}

.mobile-nav__close {
  color: var(--text-primary);
}

/* Sections */
.section,
.neural-grid-bg {
  background-color: var(--bg-primary);
  color: var(--text-primary);
}

.neural-grid-bg {
  background-image:
    linear-gradient(var(--grid-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--grid-line) 1px, transparent 1px),
    var(--gradient-glow);
  background-size: 72px 72px, 72px 72px, auto;
}

.section--bg-services,
.section--bg-process,
.section--bg-industries,
.section--bg-portfolio,
.section--bg-cases,
.section--bg-blog,
.section--bg-contact {
  background: var(--bg-secondary) !important;
}

.section--bg-process,
.section--bg-portfolio,
.section--bg-blog {
  background: var(--bg-primary) !important;
}

/* Typography helpers */
.section-title,
.section-subtitle,
.hero__title,
.hero__subtitle {
  color: var(--text-primary);
}

/* Kill dark-theme gradient text clipping on titles */
.hero__title,
.section-title,
.cta-strip__title,
.footer__cta-title {
  background: none !important;
  -webkit-text-fill-color: unset !important;
  background-clip: border-box !important;
  color: var(--text-primary) !important;
}

.section-subtitle,
.hero__subtitle {
  color: var(--text-secondary);
}

.section-label {
  color: var(--accent-2) !important;
}

.text-accent {
  color: var(--accent-primary) !important;
  -webkit-text-fill-color: var(--accent-primary) !important;
  background: none !important;
}

/* Buttons */
.btn--primary {
  background: var(--text-primary);
  border-color: var(--text-primary);
  color: var(--text-inverse);
}

.btn--primary:hover {
  background: var(--accent-2);
  border-color: var(--accent-2);
  color: var(--text-inverse);
  box-shadow: none;
  transform: translateY(-1px);
}

.btn--ghost {
  background: transparent;
  color: var(--text-primary);
  border-color: var(--border-strong);
}

.btn--ghost:hover {
  background: var(--bg-secondary);
  border-color: var(--text-primary);
  color: var(--text-primary);
}

/* Cards / nodes / industries */
.node-card,
.industry-card,
.case-card,
.blog-card,
.stack-layer,
.app-card {
  background: var(--bg-primary) !important;
  border: 1px solid var(--border-default) !important;
  color: var(--text-primary);
  box-shadow: none !important;
}

.node-card:hover,
.industry-card:hover,
.case-card:hover,
.blog-card:hover {
  border-color: var(--accent-2-border) !important;
  box-shadow: var(--shadow-md) !important;
}

.node-card__title,
.industry-card__title,
.case-card__title,
.blog-card__title,
.app-card__name {
  color: var(--text-primary) !important;
}

.node-card__desc,
.industry-card__desc,
.case-card__excerpt,
.blog-card__excerpt,
.app-card__desc {
  color: var(--text-secondary) !important;
}

.node-card__tech,
.industry-card__stats,
.case-card__stat-label {
  color: var(--accent-2) !important;
}

.node-card__link,
.blog-card__read {
  color: var(--accent-primary) !important;
}

/* Proof / CTA */
.proof-strip {
  background: var(--bg-secondary) !important;
  border-color: var(--border-subtle) !important;
}

.proof-strip__label {
  color: var(--text-secondary) !important;
}

.cta-strip {
  background: var(--bg-secondary) !important;
  border-color: var(--border-subtle) !important;
}

.cta-strip__title {
  color: var(--text-primary) !important;
}

.cta-strip__desc {
  color: var(--text-secondary) !important;
}

/* Forms */
.form__input,
.form__select,
.form__textarea {
  background: var(--bg-primary) !important;
  border: 1px solid var(--border-default) !important;
  color: var(--text-primary) !important;
}

.form__input:focus,
.form__select:focus,
.form__textarea:focus {
  border-color: var(--accent-2) !important;
  outline: none;
  box-shadow: 0 0 0 3px var(--accent-2-muted);
}

.form__label {
  color: var(--text-primary) !important;
}

/* Accordion */
.accordion__item {
  background: var(--bg-primary) !important;
  border: 1px solid var(--border-default) !important;
}

.accordion__trigger {
  color: var(--text-primary) !important;
}

.accordion__content {
  color: var(--text-secondary) !important;
}

/* Footer — light */
.footer {
  background: var(--bg-secondary) !important;
  color: var(--text-primary) !important;
  border-top: 1px solid var(--border-default);
}

.footer__orb {
  display: none !important;
}

.footer__cta {
  background: var(--bg-primary) !important;
  border: 1px solid var(--border-default) !important;
  box-shadow: none !important;
}

.footer__cta-title,
.footer__column-title,
.footer__brand-desc,
.footer__copyright,
.footer__location {
  color: var(--text-primary) !important;
}

.footer__brand-desc,
.footer__copyright,
.footer__location {
  color: var(--text-secondary) !important;
}

.footer__link,
.footer__bottom-link {
  color: var(--text-secondary) !important;
}

.footer__link:hover,
.footer__bottom-link:hover {
  color: var(--accent-2) !important;
}

.footer__cta-btn {
  background: var(--text-primary) !important;
  color: var(--text-inverse) !important;
}

.footer__cta-btn:hover {
  background: var(--accent-2) !important;
}

.footer__social-link {
  border-color: var(--border-default) !important;
  color: var(--text-primary) !important;
}

.footer__divider {
  background: var(--border-default) !important;
}

/* Flow timeline */
.flow-timeline__step {
  background: var(--bg-primary) !important;
  border: 1px solid var(--border-default) !important;
}

.flow-timeline__title {
  color: var(--text-primary) !important;
}

.flow-timeline__desc,
.flow-timeline__duration {
  color: var(--text-secondary) !important;
}

/* Contact */
.contact__info-label {
  color: var(--text-tertiary) !important;
}

.contact__info-value,
.contact__info-value a {
  color: var(--text-primary) !important;
}

/* Stack layers legacy */
.stack-layer__label {
  color: var(--accent-primary) !important;
}

.stack-layer__tag {
  background: var(--bg-secondary) !important;
  border: 1px solid var(--border-default) !important;
  color: var(--text-secondary) !important;
}

/* Clientele / logo strip */
.tb,
#clientele {
  background: var(--bg-primary) !important;
}

.tb__logo {
  filter: grayscale(1) brightness(0.25) !important;
  opacity: 0.6 !important;
}

.tb__logo:hover {
  filter: none !important;
  opacity: 1 !important;
}
