/* TaxiMax Custom Fixes */

/* Reset and fix hero section */
.mil-banner {
  min-height: 110vh !important;
  height: auto !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  position: relative !important;
  overflow: visible !important;
}

.mil-banner .container {
  width: 100% !important;
  position: relative !important;
  z-index: 10 !important;
  margin-top: 60px !important;
}

.mil-banner .mil-banner-content {
  padding: 40px 0 120px 0 !important;
  position: relative !important;
  z-index: 20 !important;
  text-align: center !important;
  margin-top: 0 !important;
}

/* Ensure headline is fully visible */
.mil-banner .mil-banner-content h1 {
  margin-top: 0 !important;
  padding-top: 0 !important;
  position: relative !important;
  z-index: 25 !important;
  max-width: 900px !important;
  margin: 0 auto 60px auto !important;
  font-size: 4.5rem !important;
}

/* Ensure buttons are visible */
.mil-banner .mil-banner-buttons {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 30px !important;
  flex-wrap: wrap !important;
  margin-top: 40px !important;
  position: relative !important;
  z-index: 30 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.mil-banner .mil-banner-buttons .mil-button {
  position: relative !important;
  z-index: 31 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.mil-banner .mil-banner-buttons .mil-link {
  position: relative !important;
  z-index: 31 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Ensure circular scroll animation is visible and positioned correctly */
.mil-banner .mil-circle-text {
  position: absolute !important;
  right: 60px !important;
  bottom: 90px !important;
  z-index: 100 !important;
  display: flex !important;
  width: 140px !important;
  height: 140px !important;
  justify-content: center !important;
  align-items: center !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Ensure SVG and button are visible */
.mil-banner .mil-circle-text .mil-ct-svg {
  display: block !important;
  width: 140px !important;
  height: 140px !important;
}

/* Make circular scroll text white with full opacity */
.mil-banner .mil-circle-text .mil-ct-svg text {
  fill: rgba(255, 255, 255, 1) !important;
}

.mil-banner .mil-circle-text .mil-ct-button {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Ensure proper layering */
.mil-content {
  position: relative !important;
}

/* Remove effects from Why Choose section image */
.mil-about-photo .mil-img-frame img {
  object-fit: initial !important;
  object-position: initial !important;
  border-radius: 0 !important;
}

/* Contact Centre Page - Main Image Fix */
.mil-image-frame.mil-horizontal {
  padding-bottom: 0 !important;
  overflow: visible !important;
  height: auto !important;
  min-height: auto !important;
  position: relative !important;
  max-height: none !important;
}

.mil-image-frame.mil-horizontal img {
  position: static !important;
  top: auto !important;
  left: auto !important;
  width: 100% !important;
  height: auto !important;
  object-fit: none !important;
  object-position: initial !important;
  max-height: none !important;
  border-radius: 8px !important;
  display: block !important;
  max-width: 100% !important;
}

/* Ensure parent containers don't constrain the image */
.mil-image-frame.mil-horizontal {
  max-height: none !important;
  height: auto !important;
}

/* Force the parent column to accommodate full image height */
.col-lg-7 .mil-image-frame.mil-horizontal {
  height: auto !important;
  min-height: auto !important;
}

/* Responsive adjustments */
@media screen and (max-width: 1200px) {
  .mil-banner .mil-banner-content h1 {
    font-size: 3.8rem !important;
  }
}

@media screen and (max-width: 992px) {
  .mil-banner {
    min-height: 120vh !important;
  }
  
  .mil-banner .container {
    margin-top: 40px !important;
  }
  
  .mil-banner .mil-banner-content {
    padding: 30px 0 80px 0 !important;
  }
  
  .mil-banner .mil-banner-content h1 {
    font-size: 3.2rem !important;
  }
  
  .mil-banner .mil-banner-buttons {
    flex-direction: column !important;
    gap: 20px !important;
  }
  
  /* Hide circle animation on mobile as per original design */
  .mil-banner .mil-circle-text {
    display: none !important;
  }
}

@media screen and (max-width: 768px) {
  .mil-banner {
    min-height: 130vh !important;
  }
  
  .mil-banner .container {
    margin-top: 30px !important;
  }
  
  .mil-banner .mil-banner-content {
    padding-bottom: 20px !important;
  }
  
  .mil-banner .mil-banner-content h1 {
    font-size: 32px !important;
    line-height: 1.4 !important;
    margin-bottom: 25px !important;
    padding: 20px 15px 0 15px !important;
    word-wrap: break-word;
    margin-top: 40px !important;
  }
  
  .mil-banner .mil-banner-content .mil-light-soft {
    padding: 0 20px;
    margin-bottom: 25px !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    color: rgba(255, 255, 255, 0.9) !important;
  }
  
  .mil-banner .mil-banner-buttons {
    padding: 0 20px;
    flex-direction: column;
    align-items: center;
    gap: 10px !important;
    margin-bottom: 0 !important;
  }
  
  .mil-banner .mil-banner-buttons .mil-link {
    margin: 0 !important;
    padding: 5px 0 !important;
  }
}

@media screen and (max-width: 480px) {
  .mil-banner .mil-banner-content h1 {
    font-size: 28px !important;
    line-height: 1.3 !important;
    margin-bottom: 20px !important;
    padding: 15px 10px 0 10px !important;
    margin-top: 30px !important;
  }
  
  .mil-banner .mil-banner-content {
    padding-bottom: 15px !important;
  }
  
  .mil-banner .mil-banner-content .mil-light-soft {
    padding: 0 15px;
    font-size: 15px !important;
    color: rgba(255, 255, 255, 0.9) !important;
    margin-bottom: 20px !important;
  }
  
  .mil-banner .mil-banner-buttons {
    gap: 6px !important;
  }
  
  .mil-banner .mil-banner-buttons .mil-link {
    padding: 3px 0 !important;
  }
}

/* Contact Centre Page Enhancements */

/* Feature badges */
.mil-feature-badge {
  background: rgba(0, 0, 0, 0.05);
  padding: 10px 15px;
  border-radius: 25px;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
}

.mil-feature-badge .mil-accent {
  color: #b18026;
  font-weight: bold;
}

/* Benefits section */
.mil-benefit-item {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}

.mil-benefit-icon {
  width: 50px;
  height: 50px;
  background: rgba(100, 5, 31, 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.mil-benefit-icon i {
  color: #b18026;
  font-size: 20px;
}

.mil-benefit-content h6 {
  margin-bottom: 10px;
  font-weight: 600;
}

.mil-benefit-content p {
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}

/* CTA features */
.mil-cta-feature {
  text-align: center;
  padding: 20px 15px;
}

.mil-cta-feature i {
  font-size: 24px;
  display: block;
}

.mil-cta-feature .mil-accent {
  color: #b18026;
}

/* Service card icons */
.mil-service-card-sm .mil-icon {
  width: 50px;
  height: 50px;
  background: rgba(100, 5, 31, 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}

.mil-service-card-sm .mil-icon i {
  color: #b18026;
  font-size: 20px;
}

/* Responsive adjustments */
@media screen and (max-width: 768px) {
  .mil-benefit-item {
    flex-direction: column;
    text-align: center;
    gap: 15px;
  }
  
  .mil-cta-feature {
    padding: 15px 10px;
  }
}

/* Simple logo consistency - minimal approach */
.mil-frame .mil-logo img {
  transition: none !important;
}

/* Desktop: enlarge header logo for prominence */
@media screen and (min-width: 1200px) {
  .mil-frame .mil-logo img {
    height: 110px !important;
  }
}

/* Desktop: make header menu toggle (three lines) orange to match theme */
@media screen and (min-width: 1201px) {
  .mil-frame-top .mil-menu-btn span,
  .mil-frame-top .mil-menu-btn span:before,
  .mil-frame-top .mil-menu-btn span:after {
    background: #b18026 !important;
  }
  /* Also color the clone inside the fullscreen menu header */
  .mil-menu-frame .mil-frame-top .mil-menu-btn span,
  .mil-menu-frame .mil-frame-top .mil-menu-btn span:before,
  .mil-menu-frame .mil-frame-top .mil-menu-btn span:after {
    background: #b18026 !important;
  }
}

/* COMPREHENSIVE BUTTON TEXT STYLING - Ensure ALL button text is white for good contrast */
/* Maximum specificity selectors to override all button text colors */

/* Primary button selectors with highest specificity */
html body .mil-button,
html body .mil-button span,
html body .mil-button a,
html body .mil-link.mil-button,
html body .mil-link.mil-button span,
html body button.mil-button,
html body button.mil-button span,
html body input[type="submit"].mil-button,
html body .mil-arrow-place span,
html body .mil-services-button,
html body .mil-services-button span,
html body .mil-icon-button,
html body .mil-icon-button span,
html body .mil-icon-button-sm,
html body .mil-icon-button-sm span,
html body .mil-center .mil-button,
html body .mil-center .mil-button span,
html body .mil-center .mil-link,
html body .mil-center .mil-link span {
  color: white !important;
}

/* Hover, focus, and active states */
html body .mil-button:hover,
html body .mil-button:hover span,
html body .mil-button:hover a,
html body .mil-link.mil-button:hover,
html body .mil-link.mil-button:hover span,
html body .mil-button:focus,
html body .mil-button:focus span,
html body .mil-button:active,
html body .mil-button:active span {
  color: white !important;
}

/* Specific button text combinations */
html body .mil-banner-buttons .mil-button,
html body .mil-banner-buttons .mil-button span,
html body .mil-banner-buttons .mil-link,
html body .mil-banner-buttons .mil-link span,
html body .mil-service-card-sm .mil-button,
html body .mil-service-card-sm .mil-button span,
html body .mil-works-nav .mil-button,
html body .mil-works-nav .mil-button span {
  color: white !important;
}

/* Dark background sections */
html body .mil-dark-bg .mi-invert-fix .mil-button,
html body .mil-dark-bg .mi-invert-fix .mil-button span,
html body .mil-dark-bg .mi-invert-fix .mil-link,
html body .mil-dark-bg .mi-invert-fix .mil-link span {
  color: white !important;
}

/* Universal button text selectors */
html body button span,
html body .mil-button *,
html body [class*="mil-button"] span,
html body [class*="mil-button"] a,
html body .mil-cta-feature .mil-button,
html body .mil-cta-feature .mil-button span {
  color: white !important;
}

/* Call-to-Action specific buttons */
html body .mil-soft-bg .mil-button,
html body .mil-soft-bg .mil-button span,
html body .mil-soft-bg .mil-link,
html body .mil-soft-bg .mil-link span,
html body section .mil-button,
html body section .mil-button span,
html body section .mil-link,
html body section .mil-link span {
  color: white !important;
}

/* Ensure background color consistency for all buttons */
html body .mil-button,
html body .mil-link.mil-button,
html body button.mil-button,
html body input[type="submit"].mil-button {
  background-color: #b18026 !important;
}

/* Phone/contact buttons specifically */
html body a[href^="tel:"].mil-button,
html body a[href^="tel:"].mil-button span,
html body a[href^="tel:"] span {
  color: white !important;
}

/* Fix muted text color in call-to-action sections - SPECIFIC FIXES */
html body .mil-soft-bg .mil-text-sm.mil-muted,
html body .mil-center .mil-text-sm.mil-muted,
html body section .mil-text-sm.mil-muted,
html body .mil-text-sm.mil-muted,
html body .mil-up .mil-text-sm.mil-muted {
  color: #666 !important;
}

/* Ensure all CTA text is properly colored */
html body .mil-center p,
html body .mil-soft-bg p,
html body .mil-up p {
  color: #333 !important;
}

/* Fix specific white text issues in call-to-action sections */
html body .mil-center .mil-up p,
html body .mil-soft-bg .mil-up p,
html body section p.mil-text-sm,
html body .mil-center p.mil-text-sm {
  color: #666 !important;
}

/* Fix the "Start Your Free Consultation" link text */
html body .mil-center a.mil-link.mil-dark,
html body .mil-center .mil-link.mil-dark span,
html body .mil-soft-bg a.mil-link.mil-dark,
html body .mil-soft-bg .mil-link.mil-dark span {
  color: #b18026 !important;
}

/* Contact Form Styling */
.mil-contact-form .mil-select {
  width: 100%;
  padding: 15px 20px;
  border: 1px solid #e5e5e5;
  border-radius: 4px;
  background-color: #fff;
  color: #333;
  font-size: 16px;
  font-family: inherit;
  outline: none;
  transition: border-color 0.3s ease;
}

.mil-contact-form .mil-select:focus {
  border-color: #b18026;
  box-shadow: 0 0 0 2px rgba(100, 5, 31, 0.1);
}

.mil-contact-form .mil-select option {
  padding: 10px;
  color: #333;
}

/* Enhanced form inputs styling */
.mil-contact-form input,
.mil-contact-form textarea {
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.mil-contact-form input:focus,
.mil-contact-form textarea:focus {
  border-color: #b18026;
  box-shadow: 0 0 0 2px rgba(100, 5, 31, 0.1);
  outline: none;
}

/* Feature badge styling */
.mil-feature-badge {
  display: inline-block;
  padding: 8px 16px;
  background: rgba(100, 5, 31, 0.1);
  border-radius: 20px;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
}

.mil-feature-badge .mil-accent {
  color: #b18026 !important;
}

/* CTA feature boxes */
.mil-cta-feature {
  text-align: center;
  padding: 20px 15px;
}

.mil-cta-feature h6 {
  margin-bottom: 5px;
  font-weight: 600;
  color: #333;
}

.mil-cta-feature .mil-text-sm {
  color: #666;
  margin: 0;
}

/* Simpler preloader fix - Only hide during actual preloader animation */
.mil-preloader-active .mil-frame {
  opacity: 0;
  pointer-events: none;
}

/* FAQ ACCORDION COLOR FIXES - Override orange colors with burgundy brand color */

/* Accordion group hover and active states */
html body .mil-accordion-group:hover .mil-accordion-menu,
html body .mil-accordion-group.mil-active .mil-accordion-menu {
  border-color: #b18026 !important;
}

/* Accordion symbols (+/-) */
html body .mil-accordion-group .mil-symbol,
html body .mil-accordion-group .mil-symbol .mil-plus,
html body .mil-accordion-group .mil-symbol .mil-minus {
  color: #b18026 !important;
}

/* Active accordion symbol */
html body .mil-accordion-group.mil-active .mil-symbol,
html body .mil-accordion-group.mil-active .mil-symbol .mil-plus,
html body .mil-accordion-group.mil-active .mil-symbol .mil-minus {
  color: #b18026 !important;
}

/* Accordion menu hover state */
html body .mil-accordion-group:hover .mil-symbol,
html body .mil-accordion-group:hover .mil-symbol .mil-plus,
html body .mil-accordion-group:hover .mil-symbol .mil-minus {
  color: #b18026 !important;
}

/* Accordion border colors */
html body .mil-accordion-group .mil-accordion-menu {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  transition: all 0.3s ease !important;
}

html body .mil-accordion-group:hover .mil-accordion-menu {
  border-bottom-color: rgba(100, 5, 31, 0.3) !important;
}

html body .mil-accordion-group.mil-active .mil-accordion-menu {
  border-bottom-color: #b18026 !important;
}

/* Accordion head text color on hover and active */
html body .mil-accordion-group:hover .mil-accordion-head {
  color: rgba(255, 255, 255, 0.8) !important;
}

html body .mil-accordion-group.mil-active .mil-accordion-head {
  color: rgba(255, 255, 255, 1) !important;
}

/* Any other accordion elements that might have orange color */
html body .mil-accordion-group .mil-accordion-menu::before,
html body .mil-accordion-group .mil-accordion-menu::after,
html body .mil-accordion-group:hover::before,
html body .mil-accordion-group:hover::after,
html body .mil-accordion-group.mil-active::before,
html body .mil-accordion-group.mil-active::after {
  background-color: #b18026 !important;
  border-color: #b18026 !important;
}

/* Override any remaining orange/accent colors in accordion */
html body .mil-accordion-group .mil-accent,
html body .mil-accordion-group:hover .mil-accent,
html body .mil-accordion-group.mil-active .mil-accent {
  color: #b18026 !important;
}

/* Ensure consistent styling across all accordion states */
html body .mil-accordion-group .mil-accordion-menu {
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

html body .mil-accordion-group .mil-accordion-menu:hover {
  background-color: rgba(100, 5, 31, 0.05) !important;
}

html body .mil-accordion-group.mil-active .mil-accordion-menu {
  background-color: rgba(100, 5, 31, 0.1) !important;
}

/* Hero section description text - make it white for all screen sizes */
.mil-banner .mil-banner-content .mil-light-soft {
  color: rgba(255, 255, 255, 0.9) !important;
}

/* Additional specificity for hero description text */
.mil-banner .mil-banner-content p.mil-light-soft {
  color: rgba(255, 255, 255, 0.9) !important;
}

/* Why Choose section mobile fixes */
@media screen and (max-width: 992px) {
    #about .col-lg-6,
    #about .col-xl-5,
    #about .col-lg-5 {
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 40px !important;
    }
    
    #about .mil-illustration img,
    #about .mil-scale[data-value-1][data-value-2] {
        width: 100% !important;
        max-width: 400px !important;
        height: auto !important;
        margin: 0 auto !important;
        display: block !important;
        border-radius: 15px !important;
        object-fit: cover !important;
        /* Disable scroll effects on mobile */
        transform: none !important;
        transition: none !important;
    }
}

@media screen and (max-width: 768px) {
    #about .mil-illustration img,
    #about .mil-scale[data-value-1][data-value-2] {
        max-width: 320px !important;
        /* Force static scaling on mobile */
        transform: scale(1) !important;
        animation: none !important;
    }
    
    /* Benefits section mobile adjustments */
    .mil-benefit-card {
        margin-bottom: 30px !important;
        padding: 30px 20px !important;
    }
    
    .mil-benefit-card .mil-benefit-icon {
        width: 50px !important;
        height: 50px !important;
        margin-bottom: 20px !important;
    }
    
    .mil-benefit-card .mil-benefit-icon i {
        font-size: 20px !important;
    }
    
    .mil-benefit-card h5 {
        font-size: 18px !important;
        margin-bottom: 15px !important;
    }
    
    .mil-benefit-card p {
        font-size: 14px !important;
        line-height: 1.5 !important;
    }
}

/* Mobile hero section text fixes */
@media screen and (max-width: 768px) {
    .mil-banner .mil-banner-content {
        padding-bottom: 20px !important; /* Reduced from 40px to 20px */
        /* Remove padding-top to prevent pushing text upward */
    }
    
    .mil-banner .mil-banner-content h1 {
        font-size: 32px !important;
        line-height: 1.4 !important;
        margin-bottom: 25px !important; /* Reduced from 30px to 25px */
        padding: 20px 15px 0 15px !important;
        word-wrap: break-word;
        /* Add top margin instead of padding-top */
        margin-top: 40px !important;
    }
    
    .mil-banner .mil-banner-content .mil-light-soft {
        padding: 0 20px;
        margin-bottom: 25px !important; /* Reduced from 30px to 25px */
        font-size: 16px !important;
        line-height: 1.5 !important;
        color: rgba(255, 255, 255, 0.9) !important;
    }
    
    .mil-banner .mil-banner-content .mil-buttons-frame {
        padding: 0 15px;
        margin-bottom: 0 !important; /* Remove extra margin */
    }
    
    .mil-banner .mil-banner-content .mil-buttons-frame .mil-button {
        margin-right: 10px !important; /* Reduced from 15px to 10px */
        margin-bottom: 10px !important;
        padding: 12px 25px !important; /* Reduced from 15px 30px */
        font-size: 14px !important;
        display: inline-block;
        gap: 5px !important; /* Reduced from 8px to 5px */
    }
}

@media screen and (max-width: 480px) {
    .mil-banner .mil-banner-content {
        padding-bottom: 15px !important; /* Reduced from 30px to 15px */
    }
    
    .mil-banner .mil-banner-content h1 {
        font-size: 28px !important;
        line-height: 1.3 !important;
        margin-bottom: 20px !important; /* Reduced from 25px to 20px */
        padding: 15px 10px 0 10px !important;
        margin-top: 30px !important;
    }
    
    .mil-banner .mil-banner-content .mil-light-soft {
        padding: 0 15px;
        margin-bottom: 20px !important; /* Reduced from 25px to 20px */
        font-size: 15px !important;
        line-height: 1.4 !important;
    }
    
    .mil-banner .mil-banner-content .mil-buttons-frame .mil-button {
        margin-right: 6px !important; /* Reduced from 10px to 6px */
        margin-bottom: 8px !important;
        padding: 10px 20px !important; /* Reduced button padding */
        font-size: 13px !important;
        gap: 3px !important; /* Reduced from 5px to 3px */
    }
}

/* Benefits section styling */
.mil-benefit-card:hover {
    background: rgba(255, 255, 255, 0.08) !important;
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
}

.mil-benefit-card .mil-benefit-icon {
    transition: all 0.3s ease;
}

.mil-benefit-card:hover .mil-benefit-icon {
    transform: scale(1.1);
    background: #7a0622 !important;
}

/* Dark section text fixes - make all description text white */
.mil-dark-bg .mil-light-soft {
    color: rgba(255, 255, 255, 0.9) !important;
}

.mil-dark-bg p.mil-light-soft {
    color: rgba(255, 255, 255, 0.9) !important;
}

/* Benefits section text - ensure white color */
.mil-benefit-card p.mil-light-soft {
    color: rgba(255, 255, 255, 0.9) !important;
}

/* FAQ section text */
.mil-dark-bg .mil-accordion-content p.mil-light-soft {
    color: rgba(255, 255, 255, 0.9) !important;
}

/* General dark section subtitle and description text */
.mil-dark-bg .mil-suptitle.mil-light-soft {
    color: rgba(255, 255, 255, 0.7) !important;
}

/* Footer text in dark sections */
.mil-dark-bg footer .mil-light-soft {
    color: rgba(255, 255, 255, 0.9) !important;
}

/* Reduce space between FAQ section and footer by 70% */
.mil-dark-bg .container.mil-p-120-120 {
    padding-bottom: 36px !important; /* Reduced from 120px to 36px (70% reduction) */
}

/* Reduce footer top padding to minimize gap */
footer.mil-dark-bg .container.mil-p-120-60 {
    padding-top: 36px !important; /* Reduced from 120px to 36px (70% reduction) */
    padding-bottom: 20px !important; /* Remove bottom space - reduced from 60px to 20px */
}

/* COMPREHENSIVE MOBILE SPACING REDUCTIONS - Fix excessive gaps between sections */

/* Mobile spacing overrides for all section padding classes */
@media screen and (max-width: 768px) {
    /* Significantly reduce ALL section paddings on mobile */
    .mil-p-120-120 {
        padding-top: 50px !important; /* Reduced from 90px to 50px */
        padding-bottom: 50px !important; /* Reduced from 90px to 50px */
    }
    
    .mil-p-120-90 {
        padding-top: 50px !important; /* Reduced from 90px to 50px */
        padding-bottom: 40px !important; /* Reduced from 60px to 40px */
    }
    
    .mil-p-120-0 {
        padding-top: 50px !important; /* Reduced from 90px to 50px */
    }
    
    .mil-p-120-30 {
        padding-top: 50px !important; /* Reduced from 90px to 50px */
        padding-bottom: 20px !important; /* Reduced from 0px to 20px for consistency */
    }
    
    .mil-p-120-60 {
        padding-top: 50px !important; /* Reduced from 90px to 50px */
        padding-bottom: 25px !important; /* Reduced from 30px to 25px */
    }
    
    .mil-p-90-90 {
        padding-top: 40px !important; /* Reduced from 60px to 40px */
        padding-bottom: 40px !important; /* Reduced from 60px to 40px */
    }
    
    .mil-p-90-120 {
        padding-top: 40px !important; /* Reduced from 60px to 40px */
        padding-bottom: 50px !important; /* Reduced from 90px to 50px */
    }
    
    .mil-p-0-90 {
        padding-bottom: 40px !important; /* Reduced from 60px to 40px */
    }
    
    .mil-p-0-120 {
        padding-bottom: 50px !important; /* Reduced from 90px to 50px */
    }
    
    /* Reduce margins between sections */
    .mil-mb-120 {
        margin-bottom: 50px !important; /* Reduced from 90px to 50px */
    }
    
    .mil-mb-90 {
        margin-bottom: 40px !important; /* Reduced from default to 40px */
    }
    
    .mil-mb-60 {
        margin-bottom: 30px !important; /* Reduced from 60px to 30px */
    }
    
    /* Specific section spacing fixes */
    #about .container {
        padding-top: 40px !important; /* Reduced spacing for Why Choose section */
        padding-bottom: 15px !important; /* Minimal bottom padding */
    }
    
    /* Services section spacing */
    .mil-services-grid {
        margin-top: 30px !important; /* Reduced from default */
    }
    
    /* Benefits section spacing */
    .mil-benefit-card {
        margin-bottom: 25px !important; /* Reduced from 30px to 25px */
    }
    
    /* FAQ section spacing */
    .mil-accordion-group {
        margin-bottom: 20px !important; /* Reduced spacing between FAQ items */
    }
}

/* Even more aggressive spacing reduction for small mobile devices */
@media screen and (max-width: 480px) {
    /* Ultra-compact spacing for small screens */
    .mil-p-120-120 {
        padding-top: 35px !important;
        padding-bottom: 35px !important;
    }
    
    .mil-p-120-90 {
        padding-top: 35px !important;
        padding-bottom: 30px !important;
    }
    
    .mil-p-120-0 {
        padding-top: 35px !important;
    }
    
    .mil-p-120-30 {
        padding-top: 35px !important;
        padding-bottom: 15px !important;
    }
    
    .mil-p-120-60 {
        padding-top: 35px !important;
        padding-bottom: 20px !important;
    }
    
    .mil-p-90-90 {
        padding-top: 30px !important;
        padding-bottom: 30px !important;
    }
    
    /* Specific section fixes for small mobile */
    #about .container {
        padding-top: 30px !important;
        padding-bottom: 10px !important;
    }
    
    .mil-mb-120 {
        margin-bottom: 35px !important;
    }
    
    .mil-mb-90 {
        margin-bottom: 30px !important;
    }
    
    .mil-mb-60 {
        margin-bottom: 25px !important;
    }
    
    .mil-benefit-card {
        margin-bottom: 20px !important;
        padding: 25px 20px !important; /* Reduced internal padding */
    }
}

/* Fix FAQ question headings to be white instead of faded */
.mil-accordion-head {
    color: rgba(255, 255, 255, 1) !important;
}

/* More specific rule to override inline styles */
.mil-accordion-group .mil-accordion-menu .mil-accordion-head.mil-light-soft {
    color: rgba(255, 255, 255, 1) !important;
} 

/* Floating WhatsApp Button */
.whatsapp-float {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 20px;
    right: 20px;
    background-color: #25d366;
    color: #FFF;
    border-radius: 50px;
    text-align: center;
    font-size: 30px;
    box-shadow: 2px 2px 10px rgba(0,0,0,0.3);
    z-index: 1000;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

.whatsapp-float:hover {
    background-color: #128c7e;
    transform: scale(1.1);
    color: #FFF;
    text-decoration: none;
}

.whatsapp-float i {
    margin-top: 3px;
}

/* Responsive adjustments */
@media screen and (max-width: 768px) {
    .whatsapp-float {
        width: 50px;
        height: 50px;
        font-size: 24px;
        bottom: 15px;
        right: 15px;
    }
}

/* Move Explore All Services button down */
.mil-services-button {
    margin-top: 20px !important;
}

/* Move Explore All Services button down on mobile devices */
@media (max-width: 768px) {
    .mil-services-button {
        margin-top: 30px !important;
    }
}
 
/* Global MOBILE button containment to prevent overflow */
@media (max-width: 768px) {
  .mil-button {
    display: inline-flex;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 12px 16px !important; /* override large theme padding and inline padding-right */
    font-size: 14px !important;
    height: auto !important;
    min-height: 48px !important;
    justify-content: center !important;
    align-items: center !important;
    white-space: normal !important;
    text-align: center !important;
  }
  .mil-button svg { display: none !important; }
  .mil-button span { white-space: normal !important; }

  /* Exception: newsletter subscribe button should remain a small icon button */
  .mil-subscribe-form { position: relative !important; }
  .mil-subscribe-form .mil-button {
    position: absolute !important;
    width: 40px !important;
    height: 40px !important;
    right: 15px !important;
    top: 15px !important;
    padding: 0 !important;
    border-radius: 50% !important;
  }
  .mil-subscribe-form .mil-button svg { display: block !important; }
}

/* Disable invert on mobile but keep a dark overlay for contrast */
@media (max-width: 992px) {
  .mil-dark-bg:before {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background-color: rgba(0, 0, 0, 0.9) !important;
  }
}

/* Keep header/logo above overlays and normalize on mobile */
.mil-frame { z-index: 10000 !important; }
.mil-frame .mil-frame-top { position: relative; z-index: 10001 !important; }
@media (max-width: 992px) {
  .mil-frame .mil-frame-top { position: fixed; top: 0; left: 0; right: 0; }
  .mil-frame .mil-logo img { filter: none !important; mix-blend-mode: normal !important; }
}

/* Comprehensive MOBILE slider + image fixes (desktop unaffected) */
@media (max-width: 992px) {
  .swiper-container, .swiper-wrapper, .swiper-slide { height: auto !important; min-height: 1px !important; overflow: visible !important; }
  .mil-portfolio-item.mil-slider-item .mil-cover-frame { height: auto !important; padding-bottom: 0 !important; }
  .mil-portfolio-item.mil-slider-item .mil-cover-frame .mil-cover,
  .mil-portfolio-item.mil-slider-item .mil-cover-frame .mil-cover img { position: static !important; width: 100% !important; height: auto !important; object-fit: contain !important; transform: none !important; }
  .mil-img-frame { padding-bottom: 0 !important; height: auto !important; }
  .mil-img-frame img { position: static !important; width: 100% !important; height: auto !important; object-fit: contain !important; object-position: center !important; transform: none !important; }
  .mil-scale, .mil-parallax, [data-swiper-parallax], [data-swiper-parallax-scale] { transform: none !important; }
  .swiper-slide > * { max-width: 100% !important; }
}

/* Global: remove theme crop/zoom on image frames by default */
.mil-image-frame,
.mil-img-frame,
.mil-image-frame.mil-horizontal,
.mil-img-frame.mil-horizontal {
  padding-bottom: 0 !important;
  height: auto !important;
  overflow: visible !important;
}
.mil-image-frame > img,
.mil-img-frame > img {
  position: static !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
}

/* Maximum-specificity fallback to defeat theme zoom on any page/viewport */
html body .mil-image-frame,
html body .mil-image-frame.mil-horizontal {
    padding-bottom: 0 !important;
    height: auto !important;
  overflow: visible !important;
}
html body .mil-image-frame > img {
  position: relative !important;
  top: auto !important;
  left: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  object-position: center center !important;
    transform: none !important;
  }
/* Explicitly override any earlier contact-centre overrides */
html body .mil-image-frame.mil-horizontal > img {
  position: relative !important;
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  object-position: center center !important;
}

/* WhatsApp Bot page: center feature cards (icons, headings, text) */
.page-whatsapp #service .mil-service-card-sm {
    text-align: center !important;
  }
.page-whatsapp #service .mil-service-card-sm > div[style*="display: flex"] {
    justify-content: center !important;
    align-items: center !important;
}
.page-whatsapp #service .mil-service-card-sm > div[style*="display: flex"] > div {
  margin-right: 0 !important;
}
@media (max-width: 992px) {
  .page-whatsapp #service .mil-service-card-sm > div[style*="display: flex"] {
    flex-direction: column !important;
    gap: 10px !important;
  }
}

/* WhatsApp Bot page: force hero image to show full picture on mobile & desktop */
.page-whatsapp .mil-image-frame.mil-horizontal {
    width: 100% !important;
  padding: 0 !important;
  height: auto !important;
  overflow: visible !important;
}
.page-whatsapp .mil-image-frame.mil-horizontal > img {
  position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

/* Inbound contact centre: card header rows with inline flex should center on mobile */
@media (max-width: 992px) {
  #service .mil-service-card-sm > div[style*="display: flex"] {
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
  }
  #service .mil-service-card-sm > div[style*="display: flex"] > div {
    margin-right: 0 !important;
  }
  #service .mil-service-card-sm h6,
  #service .mil-service-card-sm p { text-align: center !important; }
}
