.elementor-1191 .elementor-element.elementor-element-04afa1e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1191 .elementor-element.elementor-element-04afa1e.e-con{--flex-grow:0;--flex-shrink:0;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-1191 .elementor-element.elementor-element-04afa1e{--width:100%;}}/* Start custom CSS */html, body {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

*, *::before, *::after {
  box-sizing: border-box !important;
}

img, video, iframe {
  max-width: 100% !important;
  height: auto !important;
}

section,
header,
footer,
.container,
.nav-inner,
.services-header,
.services-grid,
.zones-layout,
.zones-list,
.why-grid,
.process-steps,
.testimonials-grid,
.prices-grid,
.about-layout,
.faq-layout,
.contact-layout,
.footer-grid,
.footer-bottom,
.cta-banner,
.price-card,
.testimonial-card,
.service-card,
.why-item,
.step {
  max-width: 100% !important;
  min-width: 0 !important;
}

h1, h2, h3, h4, h5, h6, p, a, span, li, td, strong {
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

.marquee-strip,
.announcement,
.topbar {
  overflow: hidden !important;
}

@media (max-width: 1024px) {
  .nav-inner,
  .container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .hero-stats {
    flex-wrap: wrap !important;
    row-gap: 16px !important;
  }

  .hero-badge,
  .about-exp-badge {
    left: auto !important;
    right: 16px !important;
    max-width: calc(100% - 32px) !important;
  }

  .zones-image-accent {
    right: 0 !important;
  }
}

@media (max-width: 768px) {
  .nav-inner,
  .container,
  .hero-content {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .hero {
    grid-template-columns: 1fr !important;
  }

  .hero-content {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  .hero h1 {
    font-size: clamp(2rem, 9vw, 2.8rem) !important;
    line-height: 1.15 !important;
  }

  .hero-sub {
    max-width: 100% !important;
  }

  .hero-actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .btn-primary,
  .btn-secondary,
  .btn-outline,
  .btn-dark {
    width: 100% !important;
    text-align: center !important;
  }

  .hero-stats {
    gap: 16px !important;
    justify-content: space-between !important;
  }

  .stat-item {
    min-width: 0 !important;
    flex: 1 1 30% !important;
  }

  .services-header,
  .services-grid,
  .zones-layout,
  .testimonials-grid,
  .prices-grid,
  .about-layout,
  .faq-layout,
  .contact-layout,
  .footer-grid,
  .why-grid,
  .process-steps,
  .zones-list {
    grid-template-columns: 1fr !important;
  }

  .footer-bottom,
  .footer-bottom-links {
    flex-direction: column !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 12px !important;
  }

  .faq-question {
    font-size: 0.95rem !important;
    align-items: flex-start !important;
  }

  .hours-table tr td:first-child {
    width: auto !important;
    padding-right: 12px !important;
  }

  .announcement,
  .topbar {
    padding-left: 12px !important;
    padding-right: 12px !important;
    line-height: 1.6 !important;
  }

  .marquee-item {
    padding: 0 18px !important;
    letter-spacing: 0.12em !important;
  }
}

@media (max-width: 480px) {
  .nav-inner,
  .container,
  .hero-content {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .section {
    padding: 56px 0 !important;
  }

  .service-card,
  .price-card,
  .testimonial-card,
  .why-item {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .about-exp-badge,
  .hero-badge {
    position: static !important;
    margin-top: 16px !important;
    max-width: 100% !important;
  }

  .stat-num {
    font-size: 1.6rem !important;
  }

  .stat-label {
    font-size: 0.66rem !important;
  }
}/* End custom CSS */