/* Improves readability of hero text over the background video. */
main>section.relative.min-h-\[85vh\] [class~="text-primary-foreground"] {
  color: rgb(255 255 255 / 0.98) !important;
  text-shadow: 0 2px 18px rgb(0 0 0 / 0.65) !important;
}

main>section.relative.min-h-\[85vh\] [class*="text-primary-foreground/"] {
  color: rgb(255 255 255 / 0.85) !important;
  text-shadow: 0 2px 18px rgb(0 0 0 / 0.6) !important;
}

/* Banner sections (Services/About/Contact) */
main>section.bg-gradient-hero .text-primary-foreground,
main>section.bg-gradient-hero [class*="text-primary-foreground/"],
main>section.bg-gradient-hero .text-accent,
main>section.bg-gradient-hero .text-foreground,
main>section.bg-gradient-hero .text-muted-foreground {
  color: rgb(255 255 255 / 0.98) !important;
  text-shadow: 0 2px 18px rgb(0 0 0 / 0.6) !important;
}

/* Technology Partners logo marquee */
[class*="animate-[marquee_"] {
  opacity: 1 !important;
}

[class*="animate-[marquee_"]>div.shadow-card {
  min-width: 256px !important;
  /* 160px * 1.6 */
  height: 128px !important;
  /* 80px * 1.6 */
  padding: 10px !important;
  background: rgb(255 255 255 / 1) !important;
  border: 1px solid rgb(255 255 255 / 0.15) !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

[class*="animate-[marquee_"]>div.shadow-card img {
  width: 160px !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
  opacity: 1 !important;
  filter: none !important;
  -webkit-filter: none !important;
  mix-blend-mode: normal !important;
}

/* Site logo (header/footer) */
header img[src*="link2core-logo"],
footer img[src*="link2core-logo"] {
  width: 60px !important;
  /* ~50% larger than 40px */
  height: 60px !important;
}

/* Offset fixed header height change */
main.pt-16 {
  padding-top: 5.25rem !important;
  /* 84px */
}

/* Mobile menu positioning (static site) */
#mobile-nav[data-nav-menu] {
  top: 5.25rem !important;
  /* match `main.pt-16` override */
  z-index: 40;
  background: rgb(10 16 28 / 0.96) !important;
  border-color: rgb(255 255 255 / 0.12) !important;
  color: rgb(255 255 255 / 0.92) !important;
}

@media (max-width: 639px) {
  main.pt-16 {
    padding-top: 6.25rem !important;
    /* ~100px to fit 2-line header on mobile */
  }

  #mobile-nav[data-nav-menu] {
    top: 6.25rem !important;
  }
}

#mobile-nav[data-nav-menu] a {
  color: rgb(255 255 255 / 1) !important;
}

#mobile-nav[data-nav-menu] a.text-muted-foreground {
  color: rgb(255 255 255 / 1) !important;
  opacity: 1 !important;
}

#mobile-nav[data-nav-menu] a:hover {
  color: rgb(255 255 255 / 1) !important;
}

#mobile-nav[data-nav-menu] .text-muted-foreground {
  color: rgb(255 255 255 / 1) !important;
  opacity: 1 !important;
}

#mobile-nav[data-nav-menu] .border-t {
  border-color: rgb(255 255 255 / 0.12) !important;
}

html,
body {
  overflow-x: hidden;
}

/* About page partner logos (distributors/integrators) */
main img.h-12.w-12.object-contain.shrink-0 {
  width: 72px !important;
  /* 48px * 1.5 */
  height: 72px !important;
  max-width: 72px !important;
  max-height: 72px !important;
  opacity: 1 !important;
  filter: none !important;
  -webkit-filter: none !important;
  background: rgb(255 255 255 / 0.92) !important;
  padding: 10px !important;
  border-radius: 14px !important;
  box-shadow: 0 6px 18px rgb(0 0 0 / 0.25) !important;
}

main div.flex.items-center.gap-4.rounded-lg.bg-surface.p-5.border.border-border,
main div.flex.items-center.gap-4.rounded-lg.bg-card.p-5.border.border-border {
  background: rgb(0 0 0 / 0.03) !important;
  border-color: rgb(0 0 0 / 0.08) !important;
}

/* Static (no-hydration) build: undo initial "reveal" inline styles */
[style*="opacity:0"],
[style*="opacity: 0"] {
  opacity: 1 !important;
}

[style*="transform:translate"],
[style*="transform: translate"],
[style*="transform:scale"],
[style*="transform: scale"] {
  transform: none !important;
}

/* Technology Brands tiles (static HTML) */
.tech-track {
  opacity: 1 !important;
}

.tech-track .tech-tile {
  min-width: 256px;
  height: 128px;
  padding: 10px;
  border-radius: 0.5rem;
  background: rgb(255 255 255 / 1);
  border: 1px solid rgb(255 255 255 / 0.15);
  box-shadow: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.tech-track .tech-logo {
  width: 160px;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  display: block;
  opacity: 1 !important;
  filter: none !important;
  -webkit-filter: none !important;
  mix-blend-mode: normal !important;
}
