/*
You can add your own CSS here.

Click the help icon above to learn more.
*/

/* Dark section background */
.dark-services-section {
  background-color: #1d1d1d !important;
  border-top-color: #A2F607 !important;
  border-bottom-color: #A2F607 !important;
}

/* White text inside dark section */
.dark-services-section h1,
.dark-services-section h2,
.dark-services-section h3,
.dark-services-section p {
  color: #ffffff !important;
}

/* Specific green border elements inside dark sections */
.dark-services-section .green-border {
  border-color: #A2F607 !important;
}

/* Elementor shape divider colour fix */
.green-shape-divider .elementor-shape-fill {
  fill: #A2F607 !important;
}

/* Elementor divider widget colour fix */
.green-section-divider .elementor-divider-separator {
  border-color: #A2F607 !important;
}

/* Green icons */
.green-icon .elementor-icon,
.green-icon .elementor-icon-box-icon,
.green-icon .elementor-icon-box-icon a,
.green-icon .elementor-icon-box-icon i,
.green-icon .elementor-icon-box-icon svg,
.green-icon .elementor-icon-box-icon svg path,
.green-icon .elementor-icon i,
.green-icon .elementor-icon svg,
.green-icon .elementor-icon svg path {
  color: #A2F607 !important;
  fill: #A2F607 !important;
  stroke: #A2F607 !important;
  border-color: #A2F607 !important;
}

/* Keep service card text black */
.green-icon .elementor-icon-box-title,
.green-icon .elementor-icon-box-title a,
.green-icon .elementor-icon-box-description,
.green-icon h1,
.green-icon h2,
.green-icon h3,
.green-icon p {
  color: #000000 !important;
}

/* Green buttons */
.green-button a,
.green-button .elementor-button {
  background-color: #A2F607 !important;
  color: #000000 !important;
  border-color: #A2F607 !important;
}

/* Green button hover */
.green-button a:hover,
.green-button .elementor-button:hover {
  background-color: #8fe000 !important;
  color: #000000 !important;
  border-color: #8fe000 !important;
}
@media (max-width: 768px) {
  .services-grid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 18px !important;
    width: calc(100% - 24px) !important;
    margin-left: 24px !important;
    padding-right: 24px !important;
    padding-bottom: 16px !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }

  .services-grid > .e-con,
  .services-grid > .elementor-element {
    flex: 0 0 82% !important;
    max-width: 82% !important;
    min-width: 82% !important;
    scroll-snap-align: start;
    border-radius: 14px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.18);
  }

  .services-grid::-webkit-scrollbar {
    display: none;
  }
}
@media (max-width: 768px) {
  .pricing-grid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 18px !important;
    width: calc(100% - 24px) !important;
    margin-left: 24px !important;
    padding-right: 24px !important;
    padding-bottom: 16px !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }

  .pricing-grid > .e-con,
  .pricing-grid > .elementor-element {
    flex: 0 0 82% !important;
    max-width: 82% !important;
    min-width: 82% !important;
    scroll-snap-align: start;
  }

  .pricing-grid::-webkit-scrollbar {
    display: none;
  }
}
/* Clean compact mobile menu */
@media (max-width: 921px) {

  .ast-header-break-point .ast-mobile-header-content {
    position: fixed !important;
    top: 72px !important;
    right: 16px !important;
    left: auto !important;
    width: 78vw !important;
    max-width: 330px !important;
    height: auto !important;
    min-height: auto !important;
    max-height: 75vh !important;
    overflow-y: auto !important;
    background: #000000 !important;
    z-index: 999999 !important;
    padding: 22px 24px !important;
    border-radius: 18px !important;
    box-shadow: -8px 12px 35px rgba(0,0,0,0.45) !important;
  }

  .ast-header-break-point .ast-mobile-header-content .main-navigation,
  .ast-header-break-point .ast-mobile-header-content .main-header-menu {
    background: transparent !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ast-header-break-point .ast-mobile-header-content .menu-item {
    background: transparent !important;
    margin: 0 !important;
  }

  .ast-header-break-point .ast-mobile-header-content .menu-link {
    color: #ffffff !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    padding: 15px 0 !important;
    line-height: 1.2 !important;
    background: transparent !important;
    border-bottom: 1px solid rgba(255,255,255,0.14) !important;
  }

  .ast-header-break-point .ast-mobile-header-content .current-menu-item > .menu-link {
    background: transparent !important;
    color: #A2FE07 !important;
  }

  .ast-header-break-point .ast-mobile-header-content .menu-link:hover {
    color: #A2FE07 !important;
    background: transparent !important;
  }
}
/* Services page background */
body.page-id-3476,
body.page-id-3476 #content,
body.page-id-3476 .site-content,
body.page-id-3476 .ast-container,
body.page-id-3476 .ast-article-single,
body.page-id-3476 .entry-content,
body.page-id-3476 .elementor,
body.page-id-3476 .elementor-section-wrap {
  background: #1D1D1D !important;
}