/* Reference palette: shared #979797 background; white text;
   light panels #F1F1F1 with #555555 text. Keep brand lime accents. */
:root:not([data-theme="light"]) {
  --bg: #979797;
  --bg-alt: #979797;
  --bg-card: #DCDEDA;
  --white: #FFFFFF;
  --text: #FFFFFF;
  --text-dim: #FFFFFF;
  --muted: #FFFFFF;
  --line: rgba(255,255,255,.25);
  --nav-bg-scrolled: rgba(255,255,255,.2);
  --nav-border-scrolled: rgba(255,255,255,.2);
}
.bg-aura { background: transparent; }
.nav.is-scrolled .nav__inner {
  background: rgba(255,255,255,.2);
  box-shadow: none;
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
}
/* Reference sections share their animated background rather than dark panels. */
:root:not([data-theme="light"]) .testimonial { background: transparent; }
:root:not([data-theme="light"]) .footer__card { background: transparent; color: #fff; border-color: transparent; }
:root:not([data-theme="light"]) :is(.footer__col h4,.footer__msg,.footer__contact-label,.footer__reviews,.footer__legal,.footer__bottom,.footer__address) { color: #fff; }
:root:not([data-theme="light"]) .footer__contact-list a { color: #fff; }
/* Neutralize the dark/green placeholder treatment in the audiovisual section. */
.video-player { background: #DCDEDA; }
.video-player__poster-img { background: linear-gradient(135deg, #B2B2AF, #DCDEDA); filter: none; }
.video-player__shadow { background: linear-gradient(transparent 50%, rgba(85,85,85,.18)); }
/* Menus follow the reference's light surface, with dark readable copy. */
.megamenu__inner, .mobile-menu {
  --text: #555555;
  --text-dim: #555555;
  --white: #555555;
  color: #555555;
}
.megamenu__inner, .mobile-menu__bg { background: #F1F1F1; }
.megamenu__inner { box-shadow: 0 20px 60px -35px rgba(85,85,85,.3); }
.mm-aside { background: rgba(85,85,85,.04); }
.mm-list a:hover strong { color: #555; }
.mobile-menu__close { color: #555; }
#processo .expertise__card[data-card="2"] .expertise__card__inner { background: #DDDEDA; }
#processo .expertise__card__num { color: #555; }
#processo .expertise__card__arrow, #processo .expertise__card__explore { color: #555; }
/* Same neutral palette on touch screens; no black or green background wash. */
@media (max-width: 920px), (pointer: coarse) {
  .bg-aura { background: transparent; }
  .nav.is-scrolled .nav__inner { background: rgba(255,255,255,.2); }
  .mobile-menu__bg { background: #F1F1F1; }
}

/* Lime is a small interaction accent, not a surface or headline color. */
:root { --gold: #B9FF47; --gold-soft: #CEFF7D; --gold-deep: #A5E63F; }
.goo-btn__pill, .goo-btn__node { background: #EFEFEF; color: #555; }
.goo-btn:hover .goo-btn__pill, .goo-btn:hover .goo-btn__node { background: #fff; }
.display em, .footer__giant em {
  background: none;
  -webkit-background-clip: initial;
  background-clip: initial;
  -webkit-text-fill-color: currentColor;
  color: inherit;
}
.service__arrow, .video-play, .video-actions__btn--primary,
.tabbar__icon--featured, .badge { background: #EFEFEF; color: #555; box-shadow: none; }
.video-play:hover, .video-actions__btn--primary:hover,
.blog__arrow:hover { background: #fff; color: #555; border-color: #fff; }
.service__num, .service:hover .service__num, .process__num,
.cases__stars, .rating__stars, .footer__stars, .testimonial__quote,
.video-quote__mark, .mobile-menu__link span { color: inherit; }
.footer__socials a, .footer__ico, .mobile-menu__socials a {
  background: rgba(255,255,255,.2); color: inherit;
}
.footer__socials a:hover, .mobile-menu__socials a:active {
  background: #EFEFEF; color: #555;
}
.nav__link:hover, .nav__link.is-current, .link-arrow:hover,
.case:hover .case__title, .post:hover .post__title,
.footer__col a:hover, .footer__contact-list a:hover, .footer__legal a:hover,
.mobile-menu__link:active, .video-actions__btn:hover,
.tabbar__item.is-active, [data-theme="light"] .tabbar__item.is-active { color: inherit; }
.nav__link.is-current::after { transform: scaleX(1); }
.theme-toggle:hover { color: inherit; border-color: currentColor; }
.mm-list a:hover { background: rgba(85,85,85,.06); }
.mobile-menu__close:hover { background: #DDDEDA; color: #555; border-color: #DDDEDA; }
.mm-thumb::before, .case__media::before, .service__thumb::before,
.post__media::before, .float-img::before {
  background: linear-gradient(135deg, #979797, #DCDEDA);
}
.video-quote__avatar, .testimonial-cta__media { background: linear-gradient(135deg, #979797, #DCDEDA); }
.cta, [data-theme="light"] .cta { background: var(--bg); }
.metrics__card::before, .process__step::before { background: rgba(255,255,255,.45); }
.metrics__card:hover, .process__step:hover { border-color: rgba(255,255,255,.4); }
.numbers__value { color: inherit; }
.chat-fab { --fab-bg: #25D366; --fab-bg-hover: #20BD5A; }
.chat-fab__core, .chat-fab:hover .chat-fab__core { color: #fff; box-shadow: 0 8px 24px rgba(37,211,102,.25); }
.chat-fab__ring, .chat-fab:hover .chat-fab__ring { background: rgba(37,211,102,.25); }
/* Keep lime only on the cursor, tiny section/card markers and focus rings. */
.cursor.is-large { width: 64px; height: 64px; box-shadow: none; }
a:focus-visible, button:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }

/* Day: neutral pearl surfaces and graphite type, with the same terrain. */
:root[data-theme="light"] {
  --bg: #EEEEEC;
  --bg-alt: #E7E7E5;
  --bg-card: #F7F7F5;
  --text: #353535;
  --text-dim: #585858;
  --muted: #585858;
  --navy: #353535;
  --ink: #353535;
  --line: rgba(53,53,53,.18);
  --nav-bg-scrolled: rgba(247,247,245,.88);
  --nav-border-scrolled: rgba(53,53,53,.14);
}
[data-theme="light"] .terrain { opacity: .8; filter: grayscale(1); }
[data-theme="light"] :is(.hero__bg,.cta-final) { background: transparent; }
[data-theme="light"] :is(.section--dark,.testimonial,.footer,.clients-section) { background: transparent; }
[data-theme="light"] .footer__card { background: transparent; color: var(--text); border-color: transparent; }
[data-theme="light"] :is(.eyebrow--hero,.footer__giant,.footer__col h4,.footer__msg,.footer__contact-list a,.footer__address,.video-quote__author-info strong,.video-actions__btn,.marquee-row__track) { color: var(--text); }
[data-theme="light"] :is(.a-mesa__label,.a-mesa__title,.a-mesa__control,.footer__contact h4) { color: var(--text); }
[data-theme="light"] .a-mesa__label::before { background: var(--text); }
[data-theme="light"] :is(.footer__legal,.footer__reviews,.hero__scroll) { color: var(--text-dim); }
[data-theme="light"] #processo :is(.expertise__label,.expertise__title,.expertise__desc) { color: var(--text); }
[data-theme="light"] #processo .expertise__dot::before { background: #929292; }
[data-theme="light"] #processo .expertise__dot.is-active { border-color: var(--text); }
[data-theme="light"] #processo .expertise__dot.is-active::before { background: var(--text); }
[data-theme="light"] .nav { background: transparent; backdrop-filter: none; }
[data-theme="light"] .nav.is-scrolled .nav__inner {
  background: rgba(247,247,245,.24);
  border-color: rgba(255,255,255,.35);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  box-shadow: none;
}
[data-theme="light"] :is(.goo-btn__pill,.goo-btn__node,.service__arrow,.video-actions__btn--primary) { background: #D7D7D4; color: #353535; }
[data-theme="light"] .goo-btn:hover :is(.goo-btn__pill,.goo-btn__node) { background: #C9C9C6; }
[data-theme="light"] :is(.footer__ico,.footer__socials a) { background: rgba(53,53,53,.07); }
[data-theme="light"] .footer__giant { border-color: var(--line); }
[data-theme="light"] .tabbar__icon--featured .icon-sun { color: #353535; }
[data-theme="light"] .hero__clients .logo-item img { filter: brightness(0); opacity: .72; }
@media (hover: hover) {
  [data-theme="light"] .hero__clients .logo-item:hover img { filter: none; opacity: 1; }
}
[data-theme="light"] body { background: var(--bg); }
[data-theme="light"] .footer__col a { color: var(--text); }
[data-theme="light"] .nav.is-scrolled { background: transparent; }

[data-theme="light"] .footer__cta-title { color: var(--text); }

/* Night experiment: all-black editorial surface. Day mode stays unchanged. */
:root:not([data-theme="light"]) {
  --bg: #000000;
  --bg-alt: #050505;
  --bg-card: #111111;
  --text: #f4f4f1;
  --text-dim: #b8b8b3;
  --muted: #a3a39f;
  --line: rgba(255,255,255,.16);
  --nav-bg-scrolled: rgba(0,0,0,.56);
  --nav-border-scrolled: rgba(255,255,255,.12);
}

:root:not([data-theme="light"]) body { background: #000; }
:root:not([data-theme="light"]) :is(.hero__bg, .section--dark, .clients-section, .testimonial, .cta-final, .footer) {
  background-color: transparent;
}
:root:not([data-theme="light"]) .bg-aura {
  background: radial-gradient(circle at 50% 12%, rgba(255,255,255,.045), transparent 38%), #000;
}
:root:not([data-theme="light"]) .terrain {
  opacity: .88;
  filter: grayscale(1) brightness(.46) contrast(1.96);
}
:root:not([data-theme="light"]) .nav.is-scrolled .nav__inner {
  background: rgba(0,0,0,.56);
  border-color: rgba(255,255,255,.12);
  box-shadow: 0 18px 55px rgba(0,0,0,.22);
}
:root:not([data-theme="light"]) :is(.megamenu__inner, .mobile-menu) {
  --text: #f4f4f1;
  --text-dim: #b8b8b3;
  --white: #f4f4f1;
  color: #f4f4f1;
}
:root:not([data-theme="light"]) :is(.megamenu__inner, .mobile-menu__bg) {
  background: rgba(10,10,10,.96);
}
:root:not([data-theme="light"]) .megamenu__inner {
  border-color: rgba(255,255,255,.12);
  box-shadow: 0 28px 80px rgba(0,0,0,.46);
}
:root:not([data-theme="light"]) .mm-aside { background: rgba(255,255,255,.04); }
:root:not([data-theme="light"]) .mm-list a:hover { background: rgba(255,255,255,.07); }
:root:not([data-theme="light"]) .mm-list a:hover strong,
:root:not([data-theme="light"]) .mobile-menu__close { color: #f4f4f1; }
:root:not([data-theme="light"]) .mobile-menu__close:hover {
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.16);
  color: #fff;
}
:root:not([data-theme="light"]) .footer__card {
  background: rgba(255,255,255,.025);
  border-color: rgba(255,255,255,.08);
}
:root:not([data-theme="light"]) .footer__socials a,
:root:not([data-theme="light"]) .footer__ico,
:root:not([data-theme="light"]) .mobile-menu__socials a {
  background: rgba(255,255,255,.09);
}

@media (max-width: 920px), (pointer: coarse) {
  :root:not([data-theme="light"]) .mobile-menu__bg { background: #080808; }
}

/* All-black cards in night mode. */
:root:not([data-theme="light"]) #processo .expertise__card__inner,
:root:not([data-theme="light"]) #processo .expertise__card[data-card] .expertise__card__inner {
  background: #080808 !important;
  border: 1px solid rgba(255,255,255,.11);
  box-shadow: 0 24px 70px rgba(0,0,0,.5);
}
:root:not([data-theme="light"]) #processo .expertise__card[data-card="0"] .expertise__card__inner { background: #050505 !important; }
:root:not([data-theme="light"]) #processo .expertise__card[data-card="1"] .expertise__card__inner { background: #0b0b0b !important; }
:root:not([data-theme="light"]) #processo .expertise__card[data-card="2"] .expertise__card__inner { background: #121212 !important; }
:root:not([data-theme="light"]) #processo .expertise__card[data-card="3"] .expertise__card__inner { background: #181818 !important; }
:root:not([data-theme="light"]) #processo .expertise__card__face,
:root:not([data-theme="light"]) #processo .expertise__card[data-card] .expertise__card__face {
  background: #070707;
}
:root:not([data-theme="light"]) #processo :is(.expertise__card__title, .expertise__card__text) {
  color: #f1f1ee;
}
:root:not([data-theme="light"]) #processo .expertise__card__num,
:root:not([data-theme="light"]) #processo .expertise__card__arrow {
  color: rgba(255,255,255,.6);
}
:root:not([data-theme="light"]) #processo .expertise__card__arrow.reference-arrow {
  background: #0d0d0d;
  color: rgba(255,255,255,.68);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.035);
}
:root:not([data-theme="light"]) #processo :is(.expertise__card__arrow, .expertise__card__body) {
  border-color: rgba(255,255,255,.18);
}
:root:not([data-theme="light"]) #processo .expertise__card__arrow:hover {
  background: rgba(255,255,255,.06);
  color: #fff;
}
:root:not([data-theme="light"]) #processo .expertise__card__explore {
  --ref-cta-bg: rgba(255,255,255,.12);
  --ref-cta-bg-hover: rgba(255,255,255,.2);
  color: #f4f4f1;
}
:root:not([data-theme="light"]) #processo .expertise__card__explore .reference-arrow {
  background: #f1f1ee;
  color: #555;
}
