/*
 * Small parity adjustments for the supplied compiled theme.
 * These selectors are intentionally scoped to the affected route assets.
 */

/* Contain transient horizontal entrance-animation paint without changing layout. */
html,
body {
  overflow-x: clip;
}

/* Keep the homepage header fully colored instead of exposing the white page beneath it. */
nav.sticky.top-0.bg-transparent {
  background-color: rgb(26 31 54 / 88%) !important;
  backdrop-filter: blur(8px);
}

/* Centralized Industry Hero Transparency */
/* Ensure the image is visible instead of heavily dimmed */
.cx-industry-hero > .site-responsive-hero-bg {
  opacity: 1 !important;
}

/* Apply a consistent, restrained gradient overlay across all industry routes */
.cx-industry-hero > .site-responsive-hero-overlay {
  background: linear-gradient(to right, rgba(26, 31, 54, 0.65) 0%, rgba(26, 31, 54, 0.12) 100%) !important;
}

@media (max-width: 767px) {
  .cx-industry-hero > .site-responsive-hero-overlay {
    background: linear-gradient(135deg, rgba(26, 31, 54, 0.85) 0%, rgba(26, 31, 54, 0.45) 60%, rgba(26, 31, 54, 0.15) 100%) !important;
  }
}

/* Keep the footer certification details intact while presenting them more compactly. */
footer div[class~="grid-cols-1"][class~="sm:grid-cols-2"][class~="max-w-2xl"] {
  max-width: 35rem;
  gap: 0.75rem;
}

footer div[class~="grid-cols-1"][class~="sm:grid-cols-2"][class~="max-w-2xl"]
  > div[class~="rounded-2xl"][class~="bg-white/5"] {
  gap: 0.5rem;
  padding: 0.875rem 1rem;
}

/* Keep the complete Core Values artwork visible instead of cropping it. */
section:has(> .site-responsive-hero-bg[style*="core-values-mission-vision-values-hero"]) {
  background-color: #727584 !important;
}

section:has(> .site-responsive-hero-bg[style*="core-values-mission-vision-values-hero"])::before {
  position: absolute;
  inset: 0 auto 0 50%;
  z-index: 0;
  width: auto;
  max-width: 100%;
  aspect-ratio: 1672 / 941;
  transform: translateX(-50%);
  background: #1a1f36;
  content: "";
}

.site-responsive-hero-bg[style*="core-values-mission-vision-values-hero"] {
  inset: 0 auto 0 50% !important;
  width: auto;
  max-width: 100%;
  aspect-ratio: 1672 / 941;
  transform: translateX(-50%);
  background-size: contain !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

@media (max-width: 639px) {
  /* Keep homepage entrance states inside narrow viewports. */
  main .order-1.lg\:order-2 {
    transform: none !important;
  }

  main .absolute.top-12.right-0.w-80.h-80.rounded-full.pointer-events-none {
    transform: translateY(-4rem) !important;
  }
}

/* Match AI Architecture hero spacing and content width to the site's standard heroes. */
section:has([style*="ai-architecture-hero"]) {
  min-height: 0 !important;
}

section:has([style*="ai-architecture-hero"]) > .relative.z-10 {
  padding-top: 7rem !important;
  padding-bottom: 7rem !important;
}

section:has([style*="ai-architecture-hero"]) > .relative.z-10 > .max-w-3xl {
  max-width: 56rem;
}

@media (min-width: 640px) {
  /* Keep About's horizontal entrance animations inside the tablet viewport. */
  section:has(img[alt="Engineering office with CAD monitors"]) {
    overflow-x: clip;
  }
}

@media (min-width: 768px) {
  section:has([style*="ai-architecture-hero"]) > .relative.z-10 {
    padding-top: 10rem !important;
    padding-bottom: 10rem !important;
  }
}

@media (min-width: 1024px) {
  section:has(img[alt="Engineering office with CAD monitors"]) {
    overflow-x: visible;
  }
}

/* Keep the assembly loader large and vertically centered while lazy pages prepare. */
.crossarrows-assembly-loader {
  box-sizing: border-box;
  position: relative;
  left: auto;
  width: 100%;
  max-width: none;
  min-height: calc(100svh - 5rem) !important;
  margin-inline: auto;
  padding: clamp(1.25rem, 4vw, 3rem) !important;
  transform: translateY(-0.5rem);
}

.crossarrows-assembly-loader__frame {
  flex: 0 0 min(92vw, 46rem);
  width: min(92vw, 46rem) !important;
  max-width: none !important;
  min-height: clamp(13rem, 32vw, 16.5rem) !important;
}

.crossarrows-assembly-loader__logo {
  top: 3.25rem !important;
  right: 3.5rem !important;
  bottom: 4.25rem !important;
  left: 3.5rem !important;
}

.crossarrows-assembly-loader__rail {
  right: 3.25rem !important;
  bottom: 2.25rem !important;
  left: 3.25rem !important;
}

@media (max-width: 639px) {
  .crossarrows-assembly-loader {
    min-height: calc(100svh - 4.5rem) !important;
    padding: 1rem !important;
  }

  .crossarrows-assembly-loader__frame {
    flex-basis: min(94vw, 30rem);
    width: min(94vw, 30rem) !important;
    min-height: clamp(11.5rem, 52vw, 14rem) !important;
  }

  .crossarrows-assembly-loader__logo {
    top: 2.5rem !important;
    right: 2rem !important;
    bottom: 3.5rem !important;
    left: 2rem !important;
  }

  .crossarrows-assembly-loader__rail {
    right: 1.75rem !important;
    bottom: 1.75rem !important;
    left: 1.75rem !important;
  }
}
