/* ============================================================
   BellarX — Premium overrides (Apple-like monochrome)
   Carregado por último em index.html para garantir precedência
   sobre CSS legados (style.css, slideshow.css, etc.)
   ============================================================ */

/* ---------- Globais ---------- */
html, body {
  background: var(--white-background) !important;
  color: var(--text-primary);
}

a {
  color: var(--text-primary);
  transition: color 0.3s var(--ease-nav, ease);
}
a:hover, a:focus {
  color: var(--bx-iron);
  text-decoration: none;
}

::selection {
  background: var(--bx-ink);
  color: var(--bx-white);
}
[data-theme="dark"] ::selection {
  background: var(--bx-white);
  color: var(--bx-black);
}

/* Scrollbar discreto (WebKit) */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.18);
  border-radius: 999px;
}
[data-theme="dark"] ::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.18);
}

/* ---------- Tipografia ---------- */
h1, .hero-title {
  font-family: var(--font-display) !important;
  font-weight: 800 !important;
  letter-spacing: var(--letter-tight) !important;
  line-height: 1.05 !important;
}
h2 {
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  letter-spacing: var(--letter-tight) !important;
  line-height: 1.1 !important;
}
h3, h4, h5 {
  font-family: var(--font-display) !important;
  font-weight: 600 !important;
  letter-spacing: var(--letter-snug) !important;
}
p, li, span, label, input, textarea, button {
  font-family: var(--font-body) !important;
}

/* ---------- Navegação ---------- */
#menu.nav-modern,
.navbar.nav-modern {
  background: var(--nav-surface) !important;
  -webkit-backdrop-filter: saturate(180%) blur(20px);
  backdrop-filter: saturate(180%) blur(20px);
  border-bottom: var(--border-hairline);
  box-shadow: none;
  transition: background 0.4s var(--ease-nav, ease),
    box-shadow 0.4s var(--ease-nav, ease),
    border-color 0.4s var(--ease-nav, ease);
}
#menu.is-scrolled,
.navbar.is-scrolled {
  box-shadow: var(--nav-shadow);
}
#menu.nav-landing.is-top,
.navbar.nav-landing.is-top {
  background: transparent !important;
  border-bottom-color: transparent !important;
  box-shadow: none !important;
}
#menu .navbar-nav > li > a,
.navbar .navbar-nav > li > a {
  color: var(--nav-link) !important;
  font-weight: 500;
  letter-spacing: -0.005em;
  border-radius: 999px;
  padding: 8px 16px !important;
  margin: 0 4px;
  transition: background 0.3s var(--ease-nav), color 0.3s var(--ease-nav);
}
#menu .navbar-nav > li > a:hover,
#menu .navbar-nav > li > a:focus {
  background: var(--nav-link-hover-bg) !important;
  color: var(--nav-link-hover-text) !important;
}
.nav-landing.is-top .navbar-nav > li > a {
  color: rgba(255, 255, 255, 0.85) !important;
}
.nav-landing.is-top .navbar-nav > li > a:hover {
  background: rgba(255, 255, 255, 0.10) !important;
  color: #fff !important;
}

.styled-logo,
.bx-logo,
#menu .styled-logo,
#menu.is-scrolled .styled-logo {
  height: 64px !important;
  max-height: 64px !important;
  width: auto !important;
  max-width: 220px !important;
  object-fit: contain;
  display: block;
}
#menu.nav-landing.is-top .styled-logo,
#menu.nav-landing.is-top .bx-logo {
  height: 78px !important;
  max-height: 78px !important;
  max-width: 260px !important;
}
.navbar-brand,
#menu a.navbar-brand {
  height: auto !important;
  min-height: 0 !important;
  padding: 6px 16px 6px 0 !important;
  display: inline-flex !important;
  align-items: center !important;
}
@media (max-width: 768px) {
  .styled-logo, .bx-logo,
  #menu .styled-logo {
    height: 48px !important;
    max-height: 48px !important;
    max-width: 170px !important;
  }
  #menu.nav-landing.is-top .styled-logo {
    height: 56px !important;
    max-height: 56px !important;
  }
}

.nav-cta-btn {
  border-radius: 999px !important;
  font-weight: 600 !important;
  padding: 10px 20px !important;
  font-size: 0.95rem !important;
  letter-spacing: -0.005em !important;
  border: 1px solid transparent !important;
  transition: all 0.3s var(--ease-nav) !important;
}
.nav-cta-btn--ghost {
  background: transparent !important;
  color: var(--nav-link) !important;
  border-color: var(--nav-border) !important;
}
.nav-cta-btn--ghost:hover {
  background: var(--nav-link-hover-bg) !important;
  color: var(--nav-link-hover-text) !important;
}
.nav-cta-btn--primary {
  background: var(--bx-ink) !important;
  color: var(--bx-white) !important;
  border-color: var(--bx-ink) !important;
}
.nav-cta-btn--primary:hover {
  background: var(--bx-black) !important;
  transform: translateY(-1px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}
[data-theme="dark"] .nav-cta-btn--primary {
  background: var(--bx-white) !important;
  color: var(--bx-black) !important;
  border-color: var(--bx-white) !important;
}
.nav-landing.is-top .nav-cta-btn--ghost {
  background: rgba(255, 255, 255, 0.08) !important;
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.25) !important;
}
.nav-landing.is-top .nav-cta-btn--primary {
  background: #fff !important;
  color: var(--bx-black) !important;
  border-color: #fff !important;
}

.nav-theme-toggle {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: transparent;
  border: 1px solid var(--nav-border);
  color: var(--nav-link);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s var(--ease-nav);
  margin-left: 6px;
}
.nav-theme-toggle:hover {
  background: var(--nav-link-hover-bg);
  color: var(--nav-link-hover-text);
  border-color: transparent;
}
.nav-landing.is-top .nav-theme-toggle {
  color: rgba(255, 255, 255, 0.85);
  border-color: rgba(255, 255, 255, 0.25);
}

/* ---------- Hero / Slideshow ---------- */
.slide-wrapper,
.slideshow .slick-slide {
  position: relative;
  background: var(--bx-black);
}
.slide-image {
  position: relative;
  height: 100vh;
  min-height: 640px;
  max-height: 980px;
  overflow: hidden;
}
.slide-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(40%) contrast(1.05) brightness(0.55);
  transform: scale(1.06);
  animation: heroKenBurns 18s ease-in-out infinite alternate;
}
@keyframes heroKenBurns {
  from { transform: scale(1.06) translate3d(0, 0, 0); }
  to   { transform: scale(1.12) translate3d(-1%, -1%, 0); }
}

.slide-image .overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(120deg, rgba(0,0,0,0.78) 0%, rgba(0,0,0,0.45) 60%, rgba(0,0,0,0.20) 100%),
    radial-gradient(60% 60% at 25% 30%, rgba(255,255,255,0.06) 0%, transparent 65%);
  display: flex;
  align-items: center;
  z-index: 2;
}
.slide-image .hero-mesh {
  position: absolute;
  inset: 0;
  background: var(--gradient-mesh);
  opacity: 0.35;
  pointer-events: none;
  mix-blend-mode: screen;
}
.intro-text {
  position: relative;
  z-index: 3;
  color: #fff;
  text-align: left;
  padding: 0 12px;
  max-width: 920px;
}
.hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.82rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  color: rgba(255, 255, 255, 0.85);
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.18);
  padding: 8px 16px;
  border-radius: 999px;
  margin-bottom: 28px;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  animation: revealFadeUp 0.9s var(--ease-reveal) both;
}
.hero-badge-dot {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 0 12px rgba(255, 255, 255, 0.85);
}
.hero-title {
  font-size: clamp(2.4rem, 5.4vw, 4.6rem) !important;
  font-weight: 800 !important;
  line-height: 1.02 !important;
  margin: 0 0 24px;
  color: #fff !important;
  text-shadow: 0 2px 24px rgba(0,0,0,0.4);
  animation: revealFadeUp 1s var(--ease-reveal) both;
}
.hero-highlight {
  background: linear-gradient(90deg, #fff 0%, var(--bx-fog) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-style: italic;
  font-weight: 700;
  letter-spacing: -0.025em;
}
.hero-subtitle {
  font-size: clamp(1rem, 1.4vw, 1.25rem);
  line-height: 1.55;
  max-width: 640px;
  color: rgba(255, 255, 255, 0.82);
  margin: 0 0 36px;
  animation: revealFadeUp 1.05s 0.1s var(--ease-reveal) both;
}
.hero-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 40px;
  animation: revealFadeUp 1.1s 0.18s var(--ease-reveal) both;
}
.hero-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 28px !important;
  border-radius: 999px !important;
  font-weight: 600 !important;
  font-size: 1rem !important;
  border: 1px solid transparent !important;
  transition: all 0.35s var(--ease-nav) !important;
  letter-spacing: -0.005em;
}
.hero-btn--primary {
  background: #fff !important;
  color: var(--bx-black) !important;
}
.hero-btn--primary:hover {
  background: var(--bx-snow) !important;
  transform: translateY(-2px);
  box-shadow: 0 16px 40px rgba(255, 255, 255, 0.22);
}
.hero-btn--ghost {
  background: rgba(255, 255, 255, 0.06) !important;
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
}
.hero-btn--ghost:hover {
  background: rgba(255, 255, 255, 0.14) !important;
  border-color: rgba(255, 255, 255, 0.5) !important;
}
.hero-btn-icon { transition: transform 0.3s var(--ease-nav); }
.hero-btn:hover .hero-btn-icon { transform: translateX(4px); }

.hero-trust {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 28px;
  list-style: none;
  padding: 0;
  margin: 0;
  animation: revealFadeUp 1.2s 0.28s var(--ease-reveal) both;
}
.hero-trust-item {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.92rem;
  font-weight: 500;
}
.hero-trust-icon {
  display: inline-flex;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.16);
  align-items: center;
  justify-content: center;
  color: #fff;
}

/* Slick controls */
.slideshow .slick-dots { bottom: 28px; }
.slideshow .slick-dots li button:before {
  font-size: 8px;
  color: #fff;
  opacity: 0.45;
}
.slideshow .slick-dots li.slick-active button:before { opacity: 1; }
.slideshow .slick-prev, .slideshow .slick-next {
  z-index: 5;
  width: 44px;
  height: 44px;
}
.slideshow .slick-prev:before, .slideshow .slick-next:before {
  font-size: 28px;
  color: rgba(255, 255, 255, 0.8);
  opacity: 1;
}
.slideshow .slick-prev { left: 22px; }
.slideshow .slick-next { right: 22px; }

/* ---------- Seções gerais ---------- */
section, #about, #services, #features, #team, #gallery, #app {
  background: var(--white-background);
  color: var(--text-primary);
  padding: var(--section-py) 0;
}
#contact, #contact > * { color: rgba(255,255,255,0.82); }

p, .paragraph {
  color: var(--paragraph-color);
  font-size: 1.05rem;
  line-height: 1.65;
}

/* Eyebrow pattern (subtítulos de seção) */
.about-eyebrow, .gallery-eyebrow, .why-eyebrow, .app-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 0.78rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.22em;
  color: var(--muted);
  margin-bottom: 18px;
}
.about-eyebrow-dot, .gallery-eyebrow-dot,
.why-eyebrow-dot, .app-eyebrow-dot {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: var(--text-primary);
}

h2, .hero-section h1 {
  color: var(--text-primary);
  font-size: clamp(2rem, 3.6vw, 3.2rem);
  margin: 0 0 22px;
}

/* About */
#about .about-grid {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: clamp(2rem, 6vw, 5rem);
  align-items: center;
}
@media (max-width: 900px) {
  #about .about-grid { grid-template-columns: 1fr; }
}
.about-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
  margin-top: 22px;
}
.about-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 999px;
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--text-primary);
  background: var(--surface-muted);
  border: var(--border-hairline);
}
.about-pill-icon { color: var(--text-primary); }

.about-image-wrap { position: relative; }
.about-image {
  width: 100%;
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-lg);
  filter: grayscale(15%) contrast(1.02);
}
.about-image-glow {
  position: absolute;
  inset: -10%;
  background: radial-gradient(50% 50% at 50% 50%, rgba(0,0,0,0.12) 0%, transparent 70%);
  z-index: -1;
}
[data-theme="dark"] .about-image-glow {
  background: radial-gradient(50% 50% at 50% 50%, rgba(255,255,255,0.08) 0%, transparent 70%);
}
.about-stats-card {
  margin-top: 18px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  background: var(--white-background);
  border-radius: var(--radius-lg);
  border: var(--border-hairline);
  box-shadow: var(--shadow-md);
  padding: 18px;
}
.about-stat {
  display: flex;
  align-items: center;
  gap: 12px;
}
.about-stat-icon {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: var(--surface);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--text-primary);
  font-size: 1.1rem;
}
.about-stat-value {
  font-family: var(--font-display);
  font-size: 1.4rem;
  font-weight: 700;
  color: var(--text-primary);
  letter-spacing: -0.02em;
}
.about-stat-label {
  display: block;
  color: var(--paragraph-color);
  font-size: 0.88rem;
}

/* Why choose */
.why-choose-us {
  background: var(--surface);
  padding: var(--section-py) 0;
}
.why-container {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 24px;
  text-align: center;
}
.why-title {
  font-size: clamp(2rem, 3.6vw, 3rem);
  margin: 0 0 14px;
}
.why-subtitle {
  max-width: 640px;
  margin: 0 auto 40px;
  color: var(--paragraph-color);
}

/* Services blocks */
#services { background: var(--white-background); }
#services .container { color: var(--text-primary); }

/* Gallery — premium dark band */
#gallery {
  background: var(--background-gallery);
  color: #fff;
  padding: calc(var(--section-py) + 1rem) 0;
}
#gallery h2 { color: #fff; }
#gallery .gallery-paragraph { color: rgba(255,255,255,0.78); }
.gallery-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
}
@media (max-width: 900px) { .gallery-grid { grid-template-columns: 1fr; } }
.gallery-eyebrow { color: rgba(255,255,255,0.7); }
.gallery-eyebrow-dot { background: #fff; }
.gallery-ctas { margin: 22px 0; }
.gallery-cta-primary {
  background: #fff !important;
  color: var(--bx-black) !important;
  border: none !important;
  border-radius: 999px !important;
  font-weight: 600 !important;
  padding: 14px 28px !important;
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  transition: all 0.3s var(--ease-nav) !important;
}
.gallery-cta-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 36px rgba(255, 255, 255, 0.18);
}
.gallery-cta-icon { transition: transform 0.3s var(--ease-nav); }
.gallery-cta-primary:hover .gallery-cta-icon { transform: translateX(4px); }
.gallery-store-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 18px;
}
.store-badge {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 10px 18px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.18);
  color: #fff !important;
  transition: all 0.3s var(--ease-nav);
}
.store-badge:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.35);
  transform: translateY(-2px);
}
.store-badge-icon { font-size: 1.7rem; }
.store-badge-text { display: flex; flex-direction: column; line-height: 1.1; }
.store-badge-small { font-size: 0.7rem; opacity: 0.75; }
.gallery-phone-wrap { position: relative; }
.gallery-phone {
  width: 100%;
  max-width: 460px;
  margin: 0 auto;
  display: block;
  filter: drop-shadow(0 30px 60px rgba(0,0,0,0.55));
}
.gallery-phone-halo {
  position: absolute;
  inset: -10%;
  background: radial-gradient(50% 50% at 50% 50%, rgba(255,255,255,0.10) 0%, transparent 70%);
}

/* Contact / Footer */
#contact {
  background: var(--background-contact);
  color: rgba(255,255,255,0.82);
  padding: 80px 0 40px;
}
#contact h5 {
  color: #fff;
  text-transform: uppercase;
  font-size: 0.82rem;
  letter-spacing: 0.18em;
  font-weight: 700;
  margin-bottom: 18px;
}
#contact a {
  color: rgba(255, 255, 255, 0.72) !important;
  transition: color 0.25s ease;
}
#contact a:hover { color: #fff !important; }
#contact .contact-item p,
#contact .contact-item { color: rgba(255,255,255,0.7); font-size: 0.95rem; }
.footer-brand-name {
  font-family: var(--font-display);
  font-size: 1.4rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  letter-spacing: var(--letter-tight);
  margin: 0 0 6px;
  text-transform: none !important;
}
.footer-tagline {
  color: rgba(255,255,255,0.62);
  font-size: 0.92rem;
  font-style: italic;
  margin-bottom: 18px;
  max-width: 280px;
}
#contact .social ul {
  list-style: none;
  padding: 0;
  margin: 24px 0 0;
  display: flex;
  gap: 12px;
}
#contact .social a {
  display: inline-flex;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.16);
  align-items: center;
  justify-content: center;
  color: #fff !important;
  transition: all 0.3s var(--ease-nav);
}
#contact .social a:hover {
  background: #fff;
  color: var(--bx-black) !important;
  border-color: #fff;
}

#footer {
  background: #000;
  color: rgba(255,255,255,0.5);
  padding: 22px 0;
  font-size: 0.85rem;
  text-align: center;
  border-top: 1px solid rgba(255,255,255,0.06);
}

/* ---------- Botões genéricos ---------- */
.btn, .btn-custom {
  border-radius: 999px !important;
  font-weight: 600 !important;
  letter-spacing: -0.005em !important;
  transition: all 0.3s var(--ease-nav) !important;
}

/* Reveal animation hook */
.reveal {
  opacity: 0;
  transform: translate3d(0, 24px, 0);
  transition: opacity 0.9s var(--ease-reveal),
    transform 0.9s var(--ease-reveal);
}
.reveal.is-visible, .reveal.visible {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
#about.is-visible h2,
#about.is-visible .paragraph,
#about.is-visible .about-pill {
  animation: revealFadeUp 0.9s var(--ease-reveal) both;
}

/* ---------- Apple-style large-screen polish ---------- */
@media (min-width: 1280px) {
  .container { max-width: 1180px; }
}

/* ============================================================
   OVERRIDES finais — garantia de tema P&B
   ============================================================ */

/* Hero highlight — versão estática, com contraste forte */
.hero-highlight {
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: #ffffff !important;
  color: #ffffff !important;
  font-weight: 800 !important;
  font-style: italic;
  letter-spacing: -0.025em;
  text-shadow: 0 2px 28px rgba(0, 0, 0, 0.55);
  display: inline-block;
}

/* Slick arrows — bordas brancas neutras */
.slick-prev, .slick-next,
.slideshow .slick-prev, .slideshow .slick-next {
  width: 48px !important;
  height: 48px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.32) !important;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  transition: all 0.3s var(--ease-nav) !important;
}
.slick-prev:hover, .slick-next:hover {
  background: rgba(255, 255, 255, 0.14) !important;
  border-color: rgba(255, 255, 255, 0.6) !important;
}
.slick-prev::before, .slick-next::before {
  font-family: 'slick' !important;
  font-size: 22px !important;
  color: #ffffff !important;
  opacity: 1 !important;
}
.slick-dots li button::before {
  font-size: 10px !important;
  color: #ffffff !important;
  opacity: 0.4 !important;
}
.slick-dots li.slick-active button::before {
  color: #ffffff !important;
  opacity: 1 !important;
}

/* Why-choose section — fundos limpos */
.why-choose-us {
  background: var(--surface) !important;
}
[data-theme="dark"] .why-choose-us {
  background: #050505 !important;
}
.why-card {
  background: var(--white-background) !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04) !important;
}
[data-theme="dark"] .why-card {
  background: #0d0d0d !important;
  border-color: rgba(255, 255, 255, 0.06) !important;
  box-shadow: none !important;
}
.why-card:hover {
  background: var(--white-background) !important;
  border-color: rgba(0, 0, 0, 0.2) !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.12) !important;
}
[data-theme="dark"] .why-card:hover {
  background: #141414 !important;
  border-color: rgba(255, 255, 255, 0.18) !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.6) !important;
}
.why-icon-chip {
  background: var(--bx-ink) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18) !important;
}
[data-theme="dark"] .why-icon-chip {
  background: linear-gradient(135deg, #ffffff 0%, #d2d2d7 100%) !important;
  color: var(--bx-black) !important;
  box-shadow: 0 8px 20px rgba(255, 255, 255, 0.12) !important;
}
.why-card:hover .why-icon-chip {
  transform: scale(1.06);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.22) !important;
}
.why-eyebrow {
  background: transparent !important;
  border: 1px solid var(--border-hairline-color, rgba(0, 0, 0, 0.16)) !important;
  border-color: rgba(0, 0, 0, 0.18) !important;
  color: var(--text-primary) !important;
  letter-spacing: 0.22em !important;
  font-size: 0.7rem !important;
  text-transform: uppercase;
}
[data-theme="dark"] .why-eyebrow {
  border-color: rgba(255, 255, 255, 0.22) !important;
  color: #ffffff !important;
}
.why-eyebrow-dot {
  background: var(--text-primary) !important;
  box-shadow: none !important;
}
.why-title span {
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: var(--text-primary) !important;
  color: var(--text-primary) !important;
}

/* About eyebrow */
.about-eyebrow {
  background: transparent !important;
  border: 1px solid rgba(0, 0, 0, 0.16) !important;
  color: var(--text-primary) !important;
  padding: 6px 14px !important;
  border-radius: 999px !important;
}
[data-theme="dark"] .about-eyebrow {
  border-color: rgba(255, 255, 255, 0.22) !important;
}
.about-eyebrow-dot { background: var(--text-primary) !important; }

/* Services / Gallery / Team — neutralize cyan accents */
.serv-eyebrow, .gallery-eyebrow, .app-eyebrow {
  background: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  color: rgba(255, 255, 255, 0.85) !important;
}
section#about .about-eyebrow,
section#services .serv-eyebrow {
  border-color: rgba(0, 0, 0, 0.16) !important;
  color: var(--text-primary) !important;
}
[data-theme="dark"] section#about .about-eyebrow,
[data-theme="dark"] section#services .serv-eyebrow {
  border-color: rgba(255, 255, 255, 0.22) !important;
  color: #ffffff !important;
}

/* Hero badge (BellarX chip) */
.hero-badge {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
  color: rgba(255, 255, 255, 0.9) !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.28em !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  padding: 8px 16px !important;
}
.hero-badge-dot {
  background: #ffffff !important;
  box-shadow: 0 0 12px rgba(255, 255, 255, 0.6) !important;
}

/* Hero trust icons */
.hero-trust-icon {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  color: #ffffff !important;
  width: 30px !important;
  height: 30px !important;
}

/* Footer / Contact — pure black palette */
#contact {
  background: linear-gradient(180deg, #000 0%, #050505 100%) !important;
}
#contact h5,
#contact .footer-brand-name,
#footer p {
  color: #ffffff !important;
}
#contact a {
  color: rgba(255, 255, 255, 0.7) !important;
  font-weight: 400;
}
#contact a:hover { color: #ffffff !important; }
#footer {
  background: #000 !important;
  color: rgba(255, 255, 255, 0.55) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
}
.footer-brand-name::after { display: none !important; }
.footer-tagline {
  color: rgba(255, 255, 255, 0.62) !important;
  font-style: italic;
  font-size: 0.86rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
#contact .social a {
  background: rgba(255, 255, 255, 0.04) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  color: rgba(255, 255, 255, 0.85) !important;
}
#contact .social a:hover {
  background: #ffffff !important;
  color: #000 !important;
  border-color: #ffffff !important;
}

/* About pills */
.about-pill {
  background: var(--surface-muted) !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  color: var(--text-primary) !important;
  font-weight: 500 !important;
}
[data-theme="dark"] .about-pill {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: #ffffff !important;
}
.about-pill-icon { color: var(--text-primary) !important; }

/* Stats card */
.about-stats-card {
  background: var(--white-background) !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
}
[data-theme="dark"] .about-stats-card {
  background: #0d0d0d !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}
.about-stat-icon {
  background: var(--surface) !important;
  color: var(--text-primary) !important;
}
[data-theme="dark"] .about-stat-icon {
  background: rgba(255, 255, 255, 0.06) !important;
  color: #ffffff !important;
}

/* LdServices / Service cards — neutralize accent backgrounds */
.ldserv-card, .serv-card, .grid-card,
.service-card, .product-card {
  background: var(--white-background) !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  color: var(--text-primary);
}
[data-theme="dark"] .ldserv-card,
[data-theme="dark"] .serv-card,
[data-theme="dark"] .grid-card,
[data-theme="dark"] .service-card,
[data-theme="dark"] .product-card {
  background: #0d0d0d !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

/* Buttons — uniform monochromatic */
.btn-custom, .btn.btn-custom {
  background: var(--bx-ink) !important;
  color: #ffffff !important;
  border: 1px solid var(--bx-ink) !important;
}
.btn-custom:hover {
  background: #000 !important;
}
[data-theme="dark"] .btn-custom {
  background: #ffffff !important;
  color: #000 !important;
  border-color: #ffffff !important;
}
[data-theme="dark"] .btn-custom:hover {
  background: var(--bx-snow) !important;
}

/* Generic links / icons inside contact area */
#contact i.fa { color: rgba(255, 255, 255, 0.6); margin-right: 8px; }

/* Force ALL gradients that still reference cyan/navy to safe mono */
[style*="rgba(0, 212, 255"], [style*="rgba(10, 37, 64"] { /* no-op safeguard */ }

/* Section text — paragraph color follows theme */
section#about p, section#about .paragraph {
  color: var(--paragraph-color) !important;
}

/* Slick dots position fix */
.slideshow .slick-dots {
  bottom: 36px !important;
}
.slideshow .slick-dots li {
  margin: 0 4px;
}
.slideshow .slick-dots li button {
  width: 16px;
  height: 16px;
}

/* Make sure ‹ and › arrows display (some browsers hide them without ::before unicode) */
.slick-prev::before { content: "‹" !important; font-family: var(--font-display) !important; font-weight: 300 !important; font-size: 32px !important; line-height: 1 !important; }
.slick-next::before { content: "›" !important; font-family: var(--font-display) !important; font-weight: 300 !important; font-size: 32px !important; line-height: 1 !important; }

/* Ensure hero text container is on top */
.slide-image .overlay > .container { position: relative; z-index: 4; }

/* Logo no hero (topo da landing): sempre branca */
body.is-landing-route .nav-landing.is-top .styled-logo,
body.is-landing-route .nav-landing.is-top .bx-logo {
  filter: invert(1) !important;
  opacity: 0.98;
}

/* Theme toggle button — make it consistent */
.nav-theme-toggle {
  background: transparent !important;
  border: 1px solid var(--nav-border) !important;
  color: var(--nav-link) !important;
}
.nav-landing.is-top .nav-theme-toggle {
  border-color: rgba(255, 255, 255, 0.3) !important;
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.06) !important;
}

/* Reduce gray "navy" appearance in slider Ken-Burns image */
.slide-img {
  filter: grayscale(85%) contrast(1.1) brightness(0.45) !important;
}

/* ============================================================
   Imagens decorativas — mantêm cores originais
   ============================================================ */
.about-image,
.serv-image,
.app-device-image,
.gallery-phone,
.ldserv-image,
img.serv-image,
img.about-image,
img.app-device-image,
img.gallery-phone {
  filter: none !important;
  transition: filter 0.4s ease;
}
[data-theme="dark"] .about-image,
[data-theme="dark"] .serv-image,
[data-theme="dark"] .app-device-image,
[data-theme="dark"] .gallery-phone {
  filter: brightness(0.95) !important;
}

/* Halo de imagens (about/serv) — discreto neutro */
.about-image-halo,
.serv-image-halo,
.app-device-halo {
  background: radial-gradient(50% 50% at 50% 50%, rgba(0, 0, 0, 0.10) 0%, transparent 70%) !important;
}
[data-theme="dark"] .about-image-halo,
[data-theme="dark"] .serv-image-halo,
[data-theme="dark"] .app-device-halo {
  background: radial-gradient(50% 50% at 50% 50%, rgba(255, 255, 255, 0.08) 0%, transparent 70%) !important;
}

/* ============================================================
   FORÇA visibilidade dos eyebrows (texto + dot)
   ============================================================ */
.serv-eyebrow,
.about-eyebrow,
.gallery-eyebrow,
.app-eyebrow,
.why-eyebrow,
.ldserv-eyebrow {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 7px 16px !important;
  border-radius: 999px !important;
  background: rgba(0, 0, 0, 0.04) !important;
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
  color: #0a0a0a !important;
  font-family: var(--font-display) !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  margin-bottom: 20px !important;
  white-space: nowrap;
  width: auto !important;
  max-width: max-content;
  opacity: 1 !important;
  visibility: visible !important;
}
.serv-eyebrow-dot,
.about-eyebrow-dot,
.gallery-eyebrow-dot,
.app-eyebrow-dot,
.why-eyebrow-dot,
.ldserv-eyebrow-dot {
  width: 6px !important;
  height: 6px !important;
  border-radius: 999px !important;
  background: #0a0a0a !important;
  box-shadow: none !important;
  flex-shrink: 0;
  display: inline-block !important;
}
[data-theme="dark"] .serv-eyebrow,
[data-theme="dark"] .about-eyebrow,
[data-theme="dark"] .gallery-eyebrow,
[data-theme="dark"] .app-eyebrow,
[data-theme="dark"] .why-eyebrow,
[data-theme="dark"] .ldserv-eyebrow {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
  color: #ffffff !important;
}
[data-theme="dark"] .serv-eyebrow-dot,
[data-theme="dark"] .about-eyebrow-dot,
[data-theme="dark"] .gallery-eyebrow-dot,
[data-theme="dark"] .app-eyebrow-dot,
[data-theme="dark"] .why-eyebrow-dot,
[data-theme="dark"] .ldserv-eyebrow-dot {
  background: #ffffff !important;
}

/* Em seção escura (#gallery, #contact), eyebrow branco */
#gallery .gallery-eyebrow {
  background: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(255, 255, 255, 0.22) !important;
  color: #ffffff !important;
}
#gallery .gallery-eyebrow-dot { background: #ffffff !important; }

/* ============================================================
   LOGO no navbar — liberar overflow e dimensionar bem
   ============================================================ */
#menu { overflow: visible !important; }
#menu .navbar-header { overflow: visible !important; }
#menu a.navbar-brand {
  overflow: visible !important;
  padding: 4px 12px 4px 0 !important;
  max-width: 320px;
}
.styled-logo,
.bx-logo,
#menu .styled-logo {
  height: 68px !important;
  max-height: 68px !important;
  max-width: 240px !important;
  min-width: 120px;
  width: auto !important;
}
#menu.nav-landing.is-top .styled-logo,
#menu.nav-landing.is-top .bx-logo {
  height: 82px !important;
  max-height: 82px !important;
  max-width: 280px !important;
}
#menu.is-scrolled .styled-logo {
  height: 60px !important;
  max-height: 60px !important;
}

/* ============================================================
   Section backgrounds — light theme sempre branco/snow
   ============================================================ */
section:not(#gallery), #about, #serv, #features, #team, #app, #ldserv {
  background: var(--white-background) !important;
}
[data-theme="dark"] section:not(#gallery),
[data-theme="dark"] #about,
[data-theme="dark"] #serv,
[data-theme="dark"] #features,
[data-theme="dark"] #team,
[data-theme="dark"] #app,
[data-theme="dark"] #ldserv {
  background: #0a0a0a !important;
}
[data-theme="dark"] .why-choose-us { background: #050505 !important; }

/* Alterna sutil cinza para diferenciar seções (Apple-style) */
#serv, #features, #app {
  background: var(--surface) !important;
}
[data-theme="dark"] #serv,
[data-theme="dark"] #features,
[data-theme="dark"] #app {
  background: #050505 !important;
}

/* Section titles — sempre escuro/claro forte */
section h2 { color: var(--text-primary) !important; }
section h2 span,
.serv-title span,
.about-title span,
.app-title span {
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: var(--text-primary) !important;
  color: var(--text-primary) !important;
}

/* App / Team section — fundo claro com imagens neutras */
#team, #app {
  color: var(--text-primary);
}
#team h2, #app h2 { color: var(--text-primary) !important; }
#team .app-paragraph, #app .app-paragraph {
  color: var(--paragraph-color) !important;
}
.app-bullet, .app-bullet-icon {
  color: var(--text-primary) !important;
}
.app-bullet-icon {
  background: var(--bx-ink) !important;
  color: #fff !important;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
[data-theme="dark"] .app-bullet-icon {
  background: #ffffff !important;
  color: var(--bx-black) !important;
}

/* Buttons consistent */
.serv-cta, .btn-custom.serv-cta,
.gallery-cta-primary {
  background: var(--bx-ink) !important;
  color: #ffffff !important;
  border: 1px solid var(--bx-ink) !important;
  border-radius: 999px !important;
  padding: 12px 24px !important;
  font-weight: 600 !important;
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
}
.serv-cta:hover, .gallery-cta-primary:hover {
  background: #000 !important;
  transform: translateY(-2px);
}
[data-theme="dark"] .serv-cta,
[data-theme="dark"] .btn-custom.serv-cta {
  background: #ffffff !important;
  color: var(--bx-black) !important;
  border-color: #ffffff !important;
}
[data-theme="dark"] .serv-cta:hover {
  background: var(--bx-snow) !important;
}

/* h2 size consistency */
section h2 {
  font-size: clamp(1.85rem, 3.4vw, 2.8rem) !important;
  line-height: 1.1 !important;
}

/* ============================================================
   Navbar — estado HERO (is-top): tudo BRANCO independente do tema
   ============================================================ */
#menu.nav-landing.is-top .navbar-nav > li > a,
#menu.nav-landing.is-top .navbar-nav > li > a:link,
#menu.nav-landing.is-top .navbar-nav > li > a:visited {
  color: rgba(255, 255, 255, 0.92) !important;
  font-weight: 500 !important;
}
#menu.nav-landing.is-top .navbar-nav > li > a:hover,
#menu.nav-landing.is-top .navbar-nav > li > a:focus {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border-radius: 999px;
}

/* Underline animado do link no hero — branco */
#menu.nav-landing.is-top .navbar-nav > li > a::after {
  background: linear-gradient(90deg, #ffffff, rgba(255,255,255,0.3)) !important;
}

/* Botões nav-cta no hero */
#menu.nav-landing.is-top .nav-cta-btn--ghost {
  background: rgba(255, 255, 255, 0.08) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.35) !important;
}
#menu.nav-landing.is-top .nav-cta-btn--ghost:hover {
  background: rgba(255, 255, 255, 0.16) !important;
  border-color: rgba(255, 255, 255, 0.55) !important;
}
#menu.nav-landing.is-top .nav-cta-btn--primary {
  background: #ffffff !important;
  color: #000000 !important;
  border: 1px solid #ffffff !important;
}
#menu.nav-landing.is-top .nav-cta-btn--primary:hover {
  background: var(--bx-snow) !important;
}

/* Theme toggle no hero */
#menu.nav-landing.is-top .nav-theme-toggle {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.32) !important;
  color: #ffffff !important;
}
#menu.nav-landing.is-top .nav-theme-toggle:hover {
  background: rgba(255, 255, 255, 0.18) !important;
}

/* Garantir que TODOS os links da navbar (estado normal/scrolled) sejam visíveis */
#menu .navbar-nav > li > a {
  color: var(--text-primary) !important;
  font-weight: 500 !important;
  opacity: 0.85;
  transition: opacity 0.25s ease, color 0.25s ease, background 0.25s ease;
}
#menu .navbar-nav > li > a:hover,
#menu .navbar-nav > li > a:focus {
  opacity: 1;
  color: var(--text-primary) !important;
}
#menu.is-scrolled .navbar-nav > li > a {
  color: var(--text-primary) !important;
}

/* Dark theme + scrolled: links brancos */
[data-theme="dark"] #menu .navbar-nav > li > a {
  color: #ffffff !important;
}

/* Logo nas rotas internas — segue o tema (preta no light, branca no dark) */
body.is-inner-route .styled-logo,
body.is-inner-route .bx-logo {
  filter: invert(var(--logo-invert)) !important;
}

/* Quando dark theme + scrolled (não-hero), logo branca via invert */
[data-theme="dark"] #menu.is-scrolled .styled-logo,
[data-theme="dark"] #menu.nav-inner .styled-logo {
  filter: invert(1) !important;
}

/* Quando light theme + scrolled (não-hero), logo preta (sem invert) */
html:not([data-theme="dark"]) #menu.is-scrolled .styled-logo,
html:not([data-theme="dark"]) #menu.nav-inner .styled-logo {
  filter: invert(0) !important;
}

/* ============================================================
   FIX — Chips de ícones (LdServ, Services, WhyChoose, etc.)
   Apple-like: chip neutro sutil, não preto pesado
   ============================================================ */
.core-card .core-card-icon,
.why-card .why-icon-chip,
.grid-card .grid-icon,
.serv-card .serv-icon,
.product-card .product-icon,
.line-card .line-icon,
.ldserv-card .ldserv-icon {
  background: var(--bx-snow) !important;
  color: var(--bx-ink) !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}
[data-theme="dark"] .core-card .core-card-icon,
[data-theme="dark"] .why-card .why-icon-chip,
[data-theme="dark"] .grid-card .grid-icon,
[data-theme="dark"] .serv-card .serv-icon,
[data-theme="dark"] .product-card .product-icon,
[data-theme="dark"] .line-card .line-icon,
[data-theme="dark"] .ldserv-card .ldserv-icon {
  background: rgba(255, 255, 255, 0.06) !important;
  color: #ffffff !important;
  border-color: rgba(255, 255, 255, 0.10) !important;
  box-shadow: none !important;
}

/* Ícone Font Awesome dentro do chip */
.core-card .core-card-icon i,
.why-card .why-icon-chip i,
.grid-card .grid-icon i,
.serv-card .serv-icon i,
.product-card .product-icon i,
.line-card .line-icon i,
.ldserv-card .ldserv-icon i {
  color: inherit !important;
  background: transparent !important;
}

/* Hover — APENAS no card hoveredo (não no container) */
.core-card:hover .core-card-icon,
.why-card:hover .why-icon-chip,
.grid-card:hover .grid-icon,
.serv-card:hover .serv-icon,
.product-card:hover .product-icon,
.line-card:hover .line-icon,
.ldserv-card:hover .ldserv-icon {
  background: var(--bx-ink) !important;
  color: #ffffff !important;
  border-color: var(--bx-ink) !important;
  transform: scale(1.04);
  transition: all 0.3s var(--ease-nav) !important;
}
[data-theme="dark"] .core-card:hover .core-card-icon,
[data-theme="dark"] .why-card:hover .why-icon-chip,
[data-theme="dark"] .grid-card:hover .grid-icon,
[data-theme="dark"] .serv-card:hover .serv-icon,
[data-theme="dark"] .product-card:hover .product-icon,
[data-theme="dark"] .line-card:hover .line-icon,
[data-theme="dark"] .ldserv-card:hover .ldserv-icon {
  background: #ffffff !important;
  color: var(--bx-black) !important;
  border-color: #ffffff !important;
}

/* ============================================================
   FIX — Gallery section (Disponível para iOS e Android)
   SEMPRE escura (destaque editorial Apple-like)
   Imagem do celular colada no fundo da seção
   ============================================================ */
section#gallery,
#gallery {
  background: linear-gradient(160deg, #000 0%, #0a0a0a 55%, #1a1a1a 100%) !important;
  color: #ffffff !important;
  padding: clamp(4rem, 7vw, 7rem) 0 0 0 !important;
  overflow: hidden !important;
}
#gallery .gallery-grid {
  align-items: end !important;
  min-height: 640px;
}
#gallery .gallery-content {
  padding-bottom: clamp(3rem, 6vw, 5rem) !important;
}
#gallery .gallery-phone-wrap {
  align-self: end !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
#gallery .gallery-phone {
  display: block;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  vertical-align: bottom;
  max-height: 720px;
}
#gallery h2 {
  color: #ffffff !important;
}
#gallery .gallery-paragraph,
#gallery p {
  color: rgba(255, 255, 255, 0.8) !important;
}
#gallery .gallery-eyebrow {
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  color: rgba(255, 255, 255, 0.9) !important;
}
#gallery .gallery-eyebrow-dot {
  background: #ffffff !important;
}

/* CTA principal "Abrir minha conta" no gallery — branco */
#gallery .gallery-cta-primary,
#gallery .btn.btn-custom {
  background: #ffffff !important;
  color: var(--bx-black) !important;
  border: 1px solid #ffffff !important;
}
#gallery .gallery-cta-primary:hover {
  background: var(--bx-snow) !important;
  transform: translateY(-2px);
  box-shadow: 0 14px 32px rgba(255, 255, 255, 0.18);
}

/* Badges App Store e Google Play — visíveis no fundo escuro */
#gallery .gallery-store-badges,
#gallery .store-badges {
  display: flex !important;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}
#gallery .store-badge,
#gallery a.store-badge {
  display: inline-flex !important;
  align-items: center;
  gap: 12px;
  padding: 10px 20px !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  color: #ffffff !important;
  font-weight: 500;
  transition: all 0.3s var(--ease-nav) !important;
  text-decoration: none !important;
}
#gallery .store-badge:hover {
  background: rgba(255, 255, 255, 0.15) !important;
  border-color: rgba(255, 255, 255, 0.5) !important;
  transform: translateY(-2px);
}
#gallery .store-badge-icon {
  font-size: 1.8rem !important;
  color: #ffffff !important;
}
#gallery .store-badge-text {
  display: flex;
  flex-direction: column;
  line-height: 1.1;
  color: #ffffff;
}
#gallery .store-badge-small {
  font-size: 0.68rem !important;
  opacity: 0.7 !important;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: rgba(255, 255, 255, 0.7) !important;
}
#gallery .store-badge strong {
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: #ffffff !important;
  letter-spacing: -0.01em;
}

/* Gallery phone halo no fundo escuro */
#gallery .gallery-phone-halo {
  background: radial-gradient(50% 50% at 50% 50%, rgba(255, 255, 255, 0.10) 0%, transparent 70%) !important;
}
#gallery .gallery-phone {
  filter: none !important;
}

/* ============================================================
   FIX — Footer social icons (visíveis)
   ============================================================ */
#contact .social ul {
  list-style: none;
  padding: 0;
  margin: 24px 0 0;
  display: flex;
  gap: 12px;
  justify-content: center;
}
#contact .social ul li {
  list-style: none;
}
#contact .social a,
#contact .social ul li a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1px solid rgba(255, 255, 255, 0.20) !important;
  color: rgba(255, 255, 255, 0.92) !important;
  font-size: 1rem !important;
  transition: all 0.3s var(--ease-nav) !important;
  text-decoration: none !important;
}
#contact .social a i,
#contact .social a .fa,
#contact .social ul li a i {
  color: rgba(255, 255, 255, 0.92) !important;
  font-size: 1.05rem !important;
  line-height: 1 !important;
  background: transparent !important;
  margin: 0 !important;
}
#contact .social a:hover,
#contact .social ul li a:hover {
  background: #ffffff !important;
  border-color: #ffffff !important;
  transform: translateY(-2px);
}
#contact .social a:hover i,
#contact .social a:hover .fa,
#contact .social ul li a:hover i {
  color: var(--bx-black) !important;
}

/* Footer copyright row final */
#footer {
  background: #000 !important;
  color: rgba(255, 255, 255, 0.6) !important;
  padding: 24px 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
  text-align: center;
}
#footer p {
  color: rgba(255, 255, 255, 0.62) !important;
  font-size: 0.85rem !important;
  margin: 4px 0 !important;
  letter-spacing: 0.02em;
}
