/* Meuron — overrides (keep Mantra hero animations & slider background) */

/*
 * HERO COLOR — edit only these variables, then hard-refresh the page.
 * No rebuild needed. File: css/meuron-overrides.css
 *
 * Examples:
 *   More teal:    --meuron-hero-hue: 25deg;
 *   Purple:       --meuron-hero-hue: 70deg;
 *   Warmer gold:  --meuron-hero-hue: 160deg; --meuron-hero-tint: #c9a227;
 *   No blue image (solid dark): --meuron-hero-hide-image: 1;
 */
:root {
  /* Warm orange / amber hero (shifted from Mantra blue slider) */
  --meuron-hero-hue: 168deg;
  --meuron-hero-saturate: 1.25;
  --meuron-hero-brightness: 1.05;
  --meuron-hero-tint: #f97316;
  --meuron-hero-tint-strength: 0.32;
  --meuron-hero-bg: #140a06;
  --meuron-hero-hide-image: 0; /* set to 1 for solid color only (no slider.jpg) */
}

.home_slider_section {
  background: var(--meuron-hero-bg) !important;
}

.home_slider_section::before {
  filter: hue-rotate(var(--meuron-hero-hue)) saturate(var(--meuron-hero-saturate))
    brightness(var(--meuron-hero-brightness)) !important;
  opacity: calc(1 - var(--meuron-hero-hide-image) * 0.85) !important;
}

.home_slider_section::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 10;
  pointer-events: none;
  background: linear-gradient(
    125deg,
    color-mix(in srgb, var(--meuron-hero-tint) calc(var(--meuron-hero-tint-strength) * 100%), transparent),
    transparent 45%,
    rgba(0, 0, 0, 0.35)
  );
  opacity: calc(1 - var(--meuron-hero-hide-image));
}

/* Home about — split layout with Meuron imagery (not full-bleed bg) */
.meuron-home-about.about_section {
  background-image: none !important;
  padding: 80px 0;
}

.meuron-home-about .about_contain_part h1 {
  color: var(--ma-type-primary, #145bec);
}

.meuron-about-visual {
  position: relative;
  text-align: center;
}

.meuron-about-visual .about-shape-iner {
  position: absolute;
  top: 10%;
  left: 5%;
  max-width: 120px;
  opacity: 0.9;
}

.meuron-about-visual .about-thumb-iner {
  max-width: 100%;
}

.meuron-brands-carousel .brand_box {
  text-align: center;
  padding: 20px;
}

.meuron-brands-carousel .brand_box img {
  max-height: 48px;
  width: auto;
  margin: 0 auto;
  filter: grayscale(100%);
  opacity: 0.7;
  transition: opacity 0.3s, filter 0.3s;
}

.meuron-brands-carousel .brand_box:hover img {
  filter: grayscale(0);
  opacity: 1;
}

.counter_section {
  background-image: linear-gradient(135deg, #145bec 0%, #0a1628 100%) !important;
}

.counter_section::before {
  opacity: 0.55 !important;
}

.technology_driven,
.technology_logo {
  display: none !important;
}

/* Meuron logo in header (not Mantra SVG) */
.navbar-brand.meuron-logo img {
  height: auto !important;
  max-height: 52px !important;
  width: auto !important;
  max-width: 180px !important;
  filter: brightness(0) invert(1) !important;
  object-fit: contain !important;
}

header.header_fix .navbar-brand.meuron-logo img {
  filter: none !important;
}

/* Header nav: align links + compact Get Quote (not mega-menu .header_menu_button) */
.header_bottom #header_bottom_nav {
  align-items: center !important;
}

.header_bottom #header_bottom_nav > .nav-item {
  display: flex;
  align-items: center;
}

.header_bottom #header_bottom_nav > .nav-item > .nav-link:not(.nav-cta) {
  display: inline-flex !important;
  align-items: center !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  min-height: 74px;
  line-height: 1.2;
}

.header_bottom #header_bottom_nav > .nav-item > .nav-link.dropdown-toggle {
  padding: 0 28px 0 12px !important;
  min-height: 74px;
}

.header_bottom #header_bottom_nav > .nav-item > .nav-link.dropdown-toggle::after {
  top: 50% !important;
  right: 10px;
  transform: translateY(-50%) rotate(90deg);
}

.header_bottom #header_bottom_nav > .nav-item > .nav-link.dropdown-toggle.show::after,
.header_bottom #header_bottom_nav > .nav-item.dropdown:hover > .nav-link.dropdown-toggle::after {
  transform: translateY(-50%) rotate(270deg);
}

.header_bottom .nav-link.nav-cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px 16px !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  font-size: 14px;
  line-height: 1.25;
  white-space: nowrap;
  border: 1px solid var(--ma-type-primary, #145bec);
  border-radius: 5px;
  background: transparent;
  color: var(--ma-type-primary, #145bec) !important;
  transition: background 0.3s ease, color 0.3s ease;
}

.header_bottom .nav-link.nav-cta:hover,
.header_bottom .nav-link.nav-cta:focus {
  background: var(--ma-type-primary, #145bec);
  color: var(--ma-white, #fff) !important;
}

header:not(.header_fix) .header_bottom .nav-link.nav-cta {
  border-color: rgba(255, 255, 255, 0.85);
  color: #fff !important;
}

header:not(.header_fix) .header_bottom .nav-link.nav-cta:hover {
  background: #fff;
  color: var(--ma-type-primary, #145bec) !important;
}

.header_bottom .nav-cta-item {
  margin-left: 12px;
}

/* Products mega menu — full height, no crop (override Mantra min-height: 400px) */
header,
.header_bottom,
.navbar,
.navbar-collapse,
.nav_item_mega_menu {
  overflow: visible !important;
}

.products_menu,
.products_menu.show,
.products_menu[data-bs-popper] {
  min-height: auto !important;
  max-height: none !important;
  height: auto !important;
  overflow: visible !important;
  padding: 40px 20px !important;
  background-color: #fff !important;
  z-index: 10050 !important;
  transform: none !important;
  clip: auto !important;
  clip-path: none !important;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12) !important;
}

/* Desktop: pin full-width panel below fixed header; hero must not slide under it */
@media (min-width: 992px) {
  header .nav_item_mega_menu .dropdown-menu.products_menu.show,
  header .nav_item_mega_menu .dropdown-menu.products_menu[data-bs-popper],
  .nav_item_mega_menu:hover .dropdown-menu.products_menu {
    position: fixed !important;
    top: 100px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  /* Hero uses margin-top:-75px — pulls dark slider over the open menu */
  body.meuron-mega-open .home_slider_section,
  body:has(.products_menu.show) .home_slider_section,
  body:has(.nav_item_mega_menu:hover) .home_slider_section {
    margin-top: 0 !important;
  }
}

.products_menu .row.products_nav_mega {
  align-items: flex-start !important;
  overflow: visible !important;
}

.products_menu .col-xl-7 > .row,
.products_menu .col-xl-7 .row {
  overflow: visible !important;
}

.products_menu .menu_details {
  margin-left: 0;
  margin-right: 0;
  padding-right: 30px;
  border-right: 1px solid #979797;
}

.products_menu .menu_details h5.mega_nav_heading {
  color: var(--ma-type-primary, #145bec);
}

.products_menu .mega_nav_list2 {
  min-height: 56px;
  margin-bottom: 8px !important;
}

.products_menu .col-xl-7 > .row {
  align-items: flex-start;
}

p.home_slider_box {
  color: #fff !important;
}

/* Meuron product rail */
.products_left_menu .left_product_title {
  color: var(--ma-type-primary, #145bec);
  font-weight: 600;
}

.product_based_solutions_box img,
.project_box img {
  object-fit: cover;
  border-radius: 8px;
}

.about_section .about_contain_part::after {
  content: '';
  display: block;
  position: absolute;
  right: 5%;
  top: 50%;
  transform: translateY(-50%);
  width: min(380px, 40vw);
  height: 280px;
  background: url('../assets/images/home-1/about-thumb.png') center/contain no-repeat;
  pointer-events: none;
}

@media (max-width: 991px) {
  .about_section .about_contain_part::after {
    display: none;
  }
}

.meuron-footer-links h4 {
  font-size: 1rem;
  margin-bottom: 0.75rem;
  color: #fff;
}

.meuron-footer-links ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.meuron-footer-links li {
  margin-bottom: 0.35rem;
}

.meuron-footer-links a {
  color: rgba(255, 255, 255, 0.85);
  text-decoration: none;
}

.meuron-footer-links a:hover {
  color: #fff;
}

/* Meuron product cards (about + home) */
.meuron-product-card-img {
  max-height: 72px;
  width: auto;
  object-fit: contain;
  margin-bottom: 12px;
}

.meuron-product-card.service_box {
  display: block;
  height: 100%;
  text-align: center;
}

.meuron-products-section {
  padding: 60px 0;
}

.meuron-avator-section {
  padding: 48px 0;
}

.meuron-avator-section img {
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
}

/* Scraped meuron.ai product body inside Mantra layout */
.meuron-scraped-product {
  padding: 24px 0 64px;
}

.meuron-scraped-product .service-area-details {
  padding: 32px 0;
}

.meuron-scraped-product .service-area-details .container {
  max-width: 1140px;
}

.meuron-scraped-product img {
  max-width: 100%;
  height: auto;
}

.meuron-scraped-product h2 {
  color: var(--ma-type-primary, #145bec);
  margin-top: 1.5rem;
}

.meuron-product-hero {
  padding-bottom: 0;
}

/* Desktop mega vs mobile simple list */
.products_menu .products_nav_simple {
  display: none;
}

/* Mobile / tablet: simple 7-product list (like meuron.ai) */
@media (max-width: 991.98px) {
  .products_menu {
    min-height: auto !important;
    padding: 0 !important;
    background-image: none !important;
    position: static !important;
    width: 100% !important;
    box-shadow: none !important;
    border: none !important;
  }

  .products_menu .products_nav_mega {
    display: none !important;
  }

  .products_menu .products_nav_simple {
    display: block;
    padding: 8px 0;
  }

  .products_menu .products_nav_simple_link {
    padding: 12px 20px;
    font-size: 1rem;
    color: var(--ma-gray-700, #333);
    border-bottom: 1px solid #eee;
  }

  .products_menu .products_nav_simple_link:hover {
    background: #f5f8ff;
    color: var(--ma-type-primary, #145bec);
  }

  .nav_item_mega_menu .dropdown-menu.products_menu {
    transform: none !important;
  }
}

@media (min-width: 992px) {
  .products_menu .products_nav_simple {
    display: none !important;
  }

  .products_menu .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
}

/* Fixed right social rail — WhatsApp, LinkedIn, Twitter, Email, Facebook */
.floating-social-rail {
  position: fixed;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10005;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0;
  margin: 0;
}

.floating-social-rail__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  margin-right: 0;
  background: #d62828;
  color: #fff !important;
  font-size: 22px;
  line-height: 1;
  border-radius: 10px 0 0 10px;
  text-decoration: none !important;
  box-shadow: -2px 2px 8px rgba(0, 0, 0, 0.2);
  transition: background 0.2s ease, transform 0.2s ease;
}

.floating-social-rail__btn:hover {
  background: #b91c1c;
  color: #fff !important;
  transform: translateX(-4px);
}

.floating-social-rail__btn .fa-envelope {
  font-size: 20px;
}

@media (max-width: 575.98px) {
  .floating-social-rail {
    top: auto;
    bottom: 80px;
    transform: none;
    gap: 6px;
  }

  .floating-social-rail__btn {
    width: 44px;
    height: 44px;
    font-size: 18px;
    border-radius: 10px 0 0 10px;
  }
}

/* Footer — same look as hero: hue-shifted slider + warm tint + falling lines */
footer {
  background: var(--meuron-hero-bg, #140a06) !important;
  position: relative !important;
  overflow: hidden !important;
}

footer::before,
footer:before {
  display: block !important;
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  background-color: #000 !important;
  background-image: url('../www.mantratec.com/images/pages/index/slider/slider.jpg') !important;
  background-position: center bottom !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
  opacity: calc(1 - var(--meuron-hero-hide-image) * 0.85) !important;
  filter: hue-rotate(var(--meuron-hero-hue)) saturate(var(--meuron-hero-saturate))
    brightness(var(--meuron-hero-brightness)) !important;
  z-index: 0 !important;
}

footer::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(
    125deg,
    color-mix(in srgb, var(--meuron-hero-tint) calc(var(--meuron-hero-tint-strength) * 100%), transparent),
    transparent 45%,
    rgba(0, 0, 0, 0.35)
  );
  opacity: calc(1 - var(--meuron-hero-hide-image));
}

footer .lines_container,
.footer_lines {
  display: block !important;
}

.footer_lines .line {
  display: block !important;
  background: rgba(255, 255, 255, 0.1) !important;
}

.footer_lines .line::after {
  display: block !important;
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0) 0%,
    #ffffff 75%,
    #ffffff 100%
  ) !important;
}

footer .horizontal_lines,
footer .horizontal_line,
footer .horizontal_line::after {
  display: block !important;
}

footer .footer_top,
footer .footer_bottom,
footer .container,
footer .lines_container {
  position: relative;
  z-index: 3;
}

.footer_top,
.footer_bottom {
  background: transparent !important;
}

@media (prefers-reduced-motion: reduce) {
  .footer_lines .line::after,
  footer .horizontal_line::after {
    animation: none !important;
    opacity: 0.35;
  }
}

/* Lead product images (hero on product pages) */
.meuron-product-lead-image {
  padding: 1.5rem 0 0.5rem;
  background: #f8fafc;
}

.meuron-product-lead-image img {
  width: 100%;
  max-height: 420px;
  object-fit: contain;
  border-radius: 8px;
}

.technology_section .technology_img img,
.solution_slider .carousel-item img,
.product_based_solutions_box img {
  object-fit: cover;
}
