/* Color Palette Overrides for Mokshad Infracon
   - White (#FFFFFF) - 65% (Main backgrounds)
   - Deep Navy (#1B2450) - 20% (Headers, navigation, footer, dark sections, body/heading texts)
   - Soft Silver (#E2E3E7) - 10% (Secondary/section backgrounds, borders, dividers, cards)
   - Gold (#C7933C) - 5% (CTAs, highlights, icons, counter numbers, hover accents)
*/

body, .page {
    background-color: #FFFFFF !important;
    color: #1B2450 !important;
}

/* Headings & Text Colors */
h1, h2, h3, h4, h5, h6,
.section-title, .section-title-descr, .lead, .lead-alt, .banner-heading,
.work-process-title, .work-process-heading, .work-process-description,
.count-title, .ci-title, .ci-text,
dt, dd {
    color: #1B2450 !important;
}

/* Paragraphs & general description texts */
p, .banner-decription, .count-descr {
    color: #1B2450 !important;
}

/* Links & Navigation */
a {
    color: #C7933C !important;
    text-decoration: none;
}
a:hover, a:focus {
    color: #A3742C !important;
    text-decoration: underline;
}

.main-nav {
    background-color: #FFFFFF !important;
    border-bottom: 1px solid #E2E3E7 !important;
}
.main-nav.transparent {
    background-color: rgba(255, 255, 255, 0.95) !important;
}
.inner-nav ul li a {
    color: #1B2450 !important;
}
.inner-nav ul li a:hover,
.inner-nav ul li a.active {
    color: #C7933C !important;
}
.mobile-nav, .mobile-cart {
    color: #1B2450 !important;
}

/* Buttons (CTAs) */
.btn-mod, a.btn-mod {
    background: #C7933C !important;
    border-color: #C7933C !important;
    color: #FFFFFF !important;
}
.btn-mod:hover, a.btn-mod:hover,
.btn-mod:focus, a.btn-mod:focus {
    background: #A3742C !important;
    border-color: #A3742C !important;
    color: #FFFFFF !important;
}

/* White / outline variant of buttons */
.btn-mod.btn-w, a.btn-mod.btn-w {
    background: #FFFFFF !important;
    color: #C7933C !important;
    border-color: #C7933C !important;
}
.btn-mod.btn-w:hover, a.btn-mod.btn-w:hover {
    background: #E2E3E7 !important;
    color: #A3742C !important;
    border-color: #A3742C !important;
}

/* Dark Sections & Footer */
.bg-dark, .footer, .small-section.bg-dark, .banner-section.bg-dark, .page-section.bg-dark {
    background-color: #1B2450 !important;
}
.bg-dark, .footer, .small-section.bg-dark, .banner-section.bg-dark, .page-section.bg-dark,
[class*="bg-dark-alfa-"], .light-content {
    color: #FFFFFF !important;
}
.bg-dark h1, .bg-dark h2, .bg-dark h3, .bg-dark h4, .bg-dark h5, .bg-dark h6,
.bg-dark p, .bg-dark .banner-heading, .bg-dark .banner-decription, .bg-dark .call-action-1-heading, .bg-dark .call-action-1-decription,
.bg-dark .footer-copy, .bg-dark .footer-made, .bg-dark .footer-copy span, .bg-dark .footer-made span,
.footer .footer-copy, .footer .footer-made, .footer .footer-copy span, .footer .footer-made span,
[class*="bg-dark-alfa-"] h1, [class*="bg-dark-alfa-"] h2, [class*="bg-dark-alfa-"] h3, [class*="bg-dark-alfa-"] h4, [class*="bg-dark-alfa-"] h5, [class*="bg-dark-alfa-"] h6,
[class*="bg-dark-alfa-"] p, [class*="bg-dark-alfa-"] span,
.light-content h1, .light-content h2, .light-content h3, .light-content h4, .light-content h5, .light-content h6,
.light-content p, .light-content span {
    color: #FFFFFF !important;
}
.bg-dark .footer-made a, .footer .footer-made a {
    color: #FFFFFF !important;
}
.bg-dark .footer-made a:hover, .footer .footer-made a:hover {
    color: #C7933C !important;
}



/* Footer / copyright on light backgrounds */
.footer-copy, .footer-copy span,
.footer-made, .footer-made span {
    color: #1B2450 !important;
}
.footer-made a {
    color: #4b2e83 !important;
}
.footer-made a:hover {
    color: #4b2e83 !important;
    text-decoration: underline !important;
}


/* Section Backgrounds, Cards, Borders, Dividers */
.bg-gray-light, .page-section.bg-gray-light, .count-bg, hr {
    background-color: #E2E3E7 !important;
    border-color: #E2E3E7 !important;
}
.count-item {
    border-color: #E2E3E7 !important;
}
.contact-item {
    background-color: #FFFFFF !important;
    border: none !important;
    box-shadow: none !important;
}

/* Counters & Icons */
.count-number, .work-process-icon, .count-descr i {
    color: #C7933C !important;
}
.ci-link a {
    color: #C7933C !important;
}
.ci-link a:hover {
    color: #A3742C !important;
}

/* Contact Item Icons (White icon inside Navy background) */
.ci-icon {
    background-color: transparent !important;
    color: #FFFFFF !important;
}
.ci-icon i {
    color: #FFFFFF !important;
}
.ci-icon:before {
    background-color: #1B2450 !important;
}

/* Social Media Circular Links on Light Backgrounds (default) */
.footer-social-links a {
    color: #FFFFFF !important;
}
.footer-social-links a i {
    color: #FFFFFF !important;
}
.footer-social-links a:before {
    background-color: #1B2450 !important;
    box-shadow: none !important;
}
.footer-social-links a:hover {
    color: #1B2450 !important;
}
.footer-social-links a:hover i {
    color: #1B2450 !important;
}
.footer-social-links a:hover:before {
    background-color: #FFFFFF !important;
    box-shadow: inset 0 0 0 1px #1B2450 !important;
}

/* Social Media Circular Links on Dark Backgrounds (Footer & bg-dark) */
.bg-dark .footer-social-links a,
.footer .footer-social-links a {
    color: #1B2450 !important;
}
.bg-dark .footer-social-links a i,
.footer .footer-social-links a i {
    color: #1B2450 !important;
}
.bg-dark .footer-social-links a:before,
.footer .footer-social-links a:before {
    background-color: #FFFFFF !important;
    box-shadow: none !important;
}
.bg-dark .footer-social-links a:hover,
.footer .footer-social-links a:hover {
    color: #FFFFFF !important;
}
.bg-dark .footer-social-links a:hover i,
.footer .footer-social-links a:hover i {
    color: #FFFFFF !important;
}
.bg-dark .footer-social-links a:hover:before,
.footer .footer-social-links a:hover:before {
    background-color: #1B2450 !important;
    box-shadow: inset 0 0 0 1px #FFFFFF !important;
}

/* Alternating Horizontal Timeline Styling */
.timeline-section-container {
  position: relative;
  padding: 0 40px;
}
.timeline-horizontal-scroll {
  overflow-x: auto;
  padding: 30px 10px;
  scrollbar-width: thin;
  scrollbar-color: #C7933C #E2E3E7;
}
.timeline-horizontal-scroll::-webkit-scrollbar {
  height: 8px;
}
.timeline-horizontal-scroll::-webkit-scrollbar-thumb {
  background-color: #C7933C;
  border-radius: 4px;
}
.timeline-horizontal-scroll::-webkit-scrollbar-track {
  background: #E2E3E7;
}
.timeline-horizontal-track {
  display: flex;
  position: relative;
  min-width: 4200px;
  height: 520px;
  align-items: center;
}
/* The line connecting nodes */
.timeline-horizontal-track::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  height: 4px;
  background-color: #E2E3E7;
  z-index: 1;
  top: 50%;
  transform: translateY(-50%);
}
.timeline-node {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  height: 100%;
  z-index: 2;
  width: 240px;
}
/* Timeline Circle Dot */
.timeline-dot {
  width: 20px;
  height: 20px;
  background-color: #FFFFFF;
  border: 4px solid #C7933C;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
  transition: all 0.3s ease;
}
.timeline-node.setback .timeline-dot {
  border-color: #d9534f;
}
.timeline-node:hover .timeline-dot {
  background-color: #C7933C;
  transform: translate(-50%, -50%) scale(1.3);
  box-shadow: 0 0 10px rgba(199, 147, 60, 0.5);
}
.timeline-node.setback:hover .timeline-dot {
  background-color: #d9534f;
  box-shadow: 0 0 10px rgba(217, 83, 79, 0.5);
}
.timeline-card-wrapper {
  position: absolute;
  width: 220px;
}
/* ABOVE nodes */
.timeline-node.above-node .timeline-card-wrapper {
  bottom: 53%;
}
/* BELOW nodes */
.timeline-node.below-node .timeline-card-wrapper {
  top: 53%;
}
.timeline-card {
  background-color: #FFFFFF;
  border: 1px solid #E2E3E7;
  border-radius: 8px;
  padding: 15px;
  box-shadow: 0 4px 15px rgba(27, 36, 80, 0.03);
  transition: all 0.3s ease;
  text-align: left;
  min-height: 175px;
  position: relative;
}
.timeline-node.setback .timeline-card {
  border-left: 4px solid #d9534f;
}
/* Small connector lines from card to dot */
.timeline-card::after {
  content: '';
  position: absolute;
  width: 2px;
  height: 16px;
  background-color: #E2E3E7;
  left: 50%;
  margin-left: -1px;
  transition: all 0.3s ease;
}
.timeline-node.above-node .timeline-card::after {
  bottom: -17px;
}
.timeline-node.below-node .timeline-card::after {
  top: -17px;
}
.timeline-node:hover .timeline-card::after {
  background-color: #C7933C;
}
.timeline-node.setback:hover .timeline-card::after {
  background-color: #d9534f;
}
.timeline-node:hover .timeline-card {
  border-color: #C7933C;
  box-shadow: 0 8px 25px rgba(27, 36, 80, 0.08);
}
.timeline-node.setback:hover .timeline-card {
  border-color: #d9534f;
}
.timeline-node.above-node:hover .timeline-card {
  transform: translateY(-5px);
}
.timeline-node.below-node:hover .timeline-card {
  transform: translateY(5px);
}
.timeline-year {
  font-weight: 700;
  color: #C7933C;
  font-size: 13px;
  margin-bottom: 5px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
.timeline-node.setback .timeline-year {
  color: #d9534f;
}
.timeline-title {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 8px;
  color: #1B2450;
  line-height: 1.3;
}
.timeline-desc {
  font-size: 12px;
  line-height: 1.4;
  color: #1B2450;
  opacity: 0.85;
}

/* Scroll Indicator Arrows */
.scroll-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  background-color: #FFFFFF;
  border: 1px solid #E2E3E7;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  cursor: pointer;
  color: #1B2450;
  box-shadow: 0 4px 10px rgba(0,0,0,0.08);
  transition: all 0.2s ease;
}
.scroll-arrow:hover {
  background-color: #1B2450;
  color: #FFFFFF;
  border-color: #1B2450;
}
.scroll-arrow-left {
  left: 0;
}
.scroll-arrow-right {
  right: 0;
}

/* ROI Calculator Styling */
.calculator-card {
  background: #FFFFFF;
  border: 1px solid #E2E3E7;
  border-radius: 12px;
  padding: 45px;
  box-shadow: 0 15px 40px rgba(27, 36, 80, 0.06);
  position: relative;
  overflow: hidden;
}
.calculator-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 5px;
  background-color: #1B2450;
}
.slider-container {
  margin-bottom: 35px;
}
.custom-range {
  width: 100%;
  height: 10px;
  background: #E2E3E7;
  outline: none;
  border-radius: 5px;
  -webkit-appearance: none;
}
.custom-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #C7933C;
  border: 2px solid #FFFFFF;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
  cursor: pointer;
  transition: transform 0.15s ease, background-color 0.15s ease;
}
.custom-range::-webkit-slider-thumb:hover {
  transform: scale(1.2);
  background-color: #A3742C;
}
.result-box {
  background-color: #E2E3E7;
  border-radius: 8px;
  padding: 30px;
  margin-top: 25px;
  border: 1px solid rgba(27, 36, 80, 0.05);
}
.result-value {
  font-size: 26px;
  font-weight: 700;
  color: #1B2450;
  margin-top: 5px;
  margin-bottom: 0;
}
.result-label {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: #1B2450;
  font-weight: 600;
  opacity: 0.8;
}
.card-stat {
  border-right: 1px solid rgba(27, 36, 80, 0.12);
}
@media screen and (max-width: 767px) {
  .card-stat {
    border-right: none;
    border-bottom: 1px solid rgba(27, 36, 80, 0.12);
    margin-bottom: 20px;
    padding-bottom: 20px;
  }
}
.disclaimer-box {
  font-size: 11px;
  color: #1B2450;
  opacity: 0.65;
  line-height: 1.5;
  margin-top: 25px;
  padding-top: 15px;
  border-top: 1px solid rgba(27, 36, 80, 0.1);
  text-align: left;
}




