
/* WashClean - font family */
body, p, a, span, div, li, .e-paragraph-base { font-family: 'Roboto', 'Segoe UI', Arial, sans-serif !important; }
h1, h2, h3, h4, h5, h6, .e-heading-base { font-family: 'Roboto', 'Segoe UI', Arial, sans-serif !important; font-weight: 800 !important; }

/* Heading sizes per mockup */
.elementor-10 h1.e-heading-base { font-size: 46px !important; line-height: 1.15 !important; }
.elementor-10 h2.e-heading-base { font-size: 32px !important; text-align: center !important; }
.elementor-10 h3.e-heading-base { font-size: 18px !important; }
.elementor-10 h4.e-heading-base { font-size: 18px !important; }

@media (max-width: 767px) {
  .elementor-10 h1.e-heading-base { font-size: 32px !important; }
  .elementor-10 h2.e-heading-base { font-size: 26px !important; }
}

/* Paragraph sizes */
.elementor-10 p.e-paragraph-base { font-size: 15px !important; line-height: 1.6 !important; }
.elementor-element-a357287 > p.e-paragraph-base:nth-of-type(1) { font-size: 13px !important; text-transform: uppercase !important; letter-spacing: 1px !important; }
.elementor-element-a357287 > p.e-paragraph-base:nth-of-type(2) { font-size: 18px !important; text-transform: none !important; letter-spacing: normal !important; }

/* Content width containment - 1180px max-width like mockup .wrap */
.elementor-10 > [class*="elementor-element-"] {
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 32px !important;
  padding-right: 32px !important;
  box-sizing: border-box !important;
}

/* Full-bleed color bands - bg-soft sections (Services, Why WashClean, Testimonials, FAQ) */
.elementor-10 .e-con[style*="244, 249, 251"],
.elementor-10 .e-con[style*="f4f9fb"] {
  box-shadow: 0 0 0 100vmax #f4f9fb !important;
  clip-path: inset(0 -100vmax) !important;
}

/* Full-bleed - navy sections (How It Works) */
.elementor-10 .e-con[style*="31, 78, 145"],
.elementor-10 .e-con[style*="1f4e91"] {
  box-shadow: 0 0 0 100vmax #1f4e91 !important;
  clip-path: inset(0 -100vmax) !important;
}

/* Full-bleed - teal sections (CTA) */
.elementor-10 .e-con[style*="47, 156, 146"],
.elementor-10 .e-con[style*="2f9c92"] {
  box-shadow: 0 0 0 100vmax #2f9c92 !important;
  clip-path: inset(0 -100vmax) !important;
}

/* Full-bleed - navy-dark (Footer) */
.elementor-10 .e-con[style*="22, 58, 109"],
.elementor-10 .e-con[style*="163a6d"] {
  box-shadow: 0 0 0 100vmax #163a6d !important;
  clip-path: inset(0 -100vmax) !important;
}


/* ===== HERO SECTION REBUILD ===== */
.elementor-10 .elementor-element-a357287 {
  position: relative !important;
  min-height: 520px !important;
}

/* Left content column width constraint */
.elementor-10 .elementor-element-a357287 > .elementor-element-3e332b1,
.elementor-10 .elementor-element-a357287 > .elementor-element-f714ff0,
.elementor-10 .elementor-element-a357287 > .elementor-element-61bccd7,
.elementor-10 .elementor-element-a357287 > .elementor-element-81e7eca {
  max-width: 560px !important;
  text-align: left !important;
}

/* Hero trust stats row */
.elementor-10 .elementor-element-81e7eca {
  display: flex !important;
  flex-direction: row !important;
  gap: 26px !important;
  flex-wrap: wrap !important;
  margin-top: 8px !important;
}
.elementor-10 h4.elementor-element-8747f2c.e-heading-base,
.elementor-10 h4.elementor-element-c3b2c71.e-heading-base,
.elementor-10 h4.elementor-element-aeecbd3.e-heading-base {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #1f4e91 !important;
  margin: 0 0 2px 0 !important;
  text-align: left !important;
}
.elementor-10 .elementor-element-76a2fe5.e-paragraph-base,
.elementor-10 .elementor-element-1682323.e-paragraph-base,
.elementor-10 .elementor-element-02cf988.e-paragraph-base {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #64748b !important;
  margin: 0 !important;
  text-align: left !important;
}

/* Hero art illustration box */
.elementor-10 .elementor-element-a357287 > .elementor-element-00413c0 {
  position: absolute !important;
  top: 50% !important;
  right: 0 !important;
  transform: translateY(-50%) !important;
  width: 42% !important;
  min-height: 420px !important;
  background: radial-gradient(circle at 30% 20%, #2a6bc4 0%, #1f4e91 55%, #163a6d 100%) !important;
  border-radius: 24px !important;
  box-shadow: 0 20px 40px rgba(0,0,0,0.18) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
}
.elementor-10 .elementor-element-5b57401.e-heading-base {
  font-size: 120px !important;
  line-height: 1 !important;
  text-align: center !important;
  color: #fff !important;
}

/* Floating badges */
.elementor-10 .elementor-element-5a478eb,
.elementor-10 .elementor-element-eb5f7d6 {
  position: absolute !important;
  background: #fff !important;
  border-radius: 14px !important;
  padding: 12px 16px !important;
  box-shadow: 0 10px 24px rgba(0,0,0,0.18) !important;
  z-index: 5 !important;
  max-width: 220px !important;
}
.elementor-10 .elementor-element-5a478eb { top: 22px !important; left: -16px !important; }
.elementor-10 .elementor-element-eb5f7d6 { bottom: 24px !important; right: -16px !important; }
.elementor-10 .elementor-element-e82eb52.e-paragraph-base,
.elementor-10 .elementor-element-a9b0d6f.e-paragraph-base {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #163a6d !important;
  margin: 0 !important;
  text-align: left !important;
}

/* Mini logo badge on hero art */
.elementor-10 .elementor-element-e5376e4 {
  position: absolute !important;
  bottom: 18px !important;
  left: 18px !important;
  background: rgba(255,255,255,0.95) !important;
  border-radius: 10px !important;
  padding: 6px 10px !important;
  z-index: 5 !important;
  display: flex !important;
  align-items: center !important;
}
.elementor-10 .elementor-element-e5376e4 img,
.elementor-10 .elementor-element-0363f51 img {
  height: 26px !important;
  width: auto !important;
  display: block !important;
}

@media (max-width: 900px) {
  .elementor-10 .elementor-element-a357287 > .elementor-element-3e332b1,
  .elementor-10 .elementor-element-a357287 > .elementor-element-f714ff0,
  .elementor-10 .elementor-element-a357287 > .elementor-element-61bccd7,
  .elementor-10 .elementor-element-a357287 > .elementor-element-81e7eca {
    max-width: 100% !important;
  }
  .elementor-10 .elementor-element-a357287 > .elementor-element-00413c0 {
    position: static !important;
    transform: none !important;
    width: 100% !important;
    margin-top: 32px !important;
    min-height: 320px !important;
  }
  .elementor-10 .elementor-element-a357287 {
    min-height: unset !important;
  }
}


/* ===== HERO SECTION REBUILD v2 (corrected selectors for leaf widgets) ===== */
.elementor-10 .elementor-element-a357287 > h1.e-heading-base,
.elementor-10 .elementor-element-a357287 > p.e-paragraph-base,
.elementor-10 .elementor-element-a357287 > .elementor-element-81e7eca {
  max-width: 560px !important;
  text-align: left !important;
}

.elementor-10 .elementor-element-81e7eca {
  display: flex !important;
  flex-direction: row !important;
  gap: 26px !important;
  flex-wrap: wrap !important;
  margin-top: 8px !important;
}
.elementor-10 .elementor-element-5d9cb46 > h4.e-heading-base,
.elementor-10 .elementor-element-bcedbe3 > h4.e-heading-base,
.elementor-10 .elementor-element-a4a7fda > h4.e-heading-base {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #1f4e91 !important;
  margin: 0 0 2px 0 !important;
  text-align: left !important;
}
.elementor-10 .elementor-element-5d9cb46 > p.e-paragraph-base,
.elementor-10 .elementor-element-bcedbe3 > p.e-paragraph-base,
.elementor-10 .elementor-element-a4a7fda > p.e-paragraph-base {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #64748b !important;
  margin: 0 !important;
  text-align: left !important;
}

.elementor-10 .elementor-element-a357287 > .elementor-element-00413c0 {
  position: absolute !important;
  top: 50% !important;
  right: 0 !important;
  transform: translateY(-50%) !important;
  width: 42% !important;
  min-height: 420px !important;
  background: radial-gradient(circle at 30% 20%, #2a6bc4 0%, #1f4e91 55%, #163a6d 100%) !important;
  border-radius: 24px !important;
  box-shadow: 0 20px 40px rgba(0,0,0,0.18) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
}
.elementor-10 .elementor-element-00413c0 > h2.e-heading-base {
  font-size: 120px !important;
  line-height: 1 !important;
  text-align: center !important;
  color: #fff !important;
}

.elementor-10 .elementor-element-5a478eb,
.elementor-10 .elementor-element-eb5f7d6 {
  position: absolute !important;
  background: #fff !important;
  border-radius: 14px !important;
  padding: 12px 16px !important;
  box-shadow: 0 10px 24px rgba(0,0,0,0.18) !important;
  z-index: 5 !important;
  max-width: 220px !important;
}
.elementor-10 .elementor-element-5a478eb { top: 22px !important; left: -16px !important; }
.elementor-10 .elementor-element-eb5f7d6 { bottom: 24px !important; right: -16px !important; }
.elementor-10 .elementor-element-5a478eb > p.e-paragraph-base,
.elementor-10 .elementor-element-eb5f7d6 > p.e-paragraph-base {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #163a6d !important;
  margin: 0 !important;
  text-align: left !important;
}

.elementor-10 .elementor-element-e5376e4 {
  position: absolute !important;
  bottom: 18px !important;
  left: 18px !important;
  background: rgba(255,255,255,0.95) !important;
  border-radius: 10px !important;
  padding: 6px 10px !important;
  z-index: 5 !important;
}
.elementor-10 .elementor-element-e5376e4 > h6.e-heading-base {
  font-size: 13px !important;
  font-weight: 800 !important;
  color: #1f4e91 !important;
  margin: 0 !important;
}

/* Hide default theme page title on homepage */
.page-id-10 h1.entry-title,
.page-id-10 .ast-page-title,
.page-id-10 .page-header {
  display: none !important;
}

@media (max-width: 900px) {
  .elementor-10 .elementor-element-a357287 > h1.e-heading-base,
  .elementor-10 .elementor-element-a357287 > p.e-paragraph-base,
  .elementor-10 .elementor-element-a357287 > .elementor-element-81e7eca {
    max-width: 100% !important;
  }
  .elementor-10 .elementor-element-a357287 > .elementor-element-00413c0 {
    position: static !important;
    transform: none !important;
    width: 100% !important;
    margin-top: 32px !important;
    min-height: 320px !important;
  }
  .elementor-10 .elementor-element-a357287 {
    min-height: unset !important;
  }
}


/* Mobile fix: keep hero-art as positioning context for its badges */
@media (max-width: 900px) {
  .elementor-10 .elementor-element-a357287 > .elementor-element-00413c0 {
    position: relative !important;
  }
}


/* ===== SECTION COPY FIXES - eyebrows, subtitles, avatars, footer columns ===== */

/* Eyebrow tags (first paragraph child of these sections) */
.elementor-10 .elementor-element-4d92611 > p.e-paragraph-base:nth-of-type(1),
.elementor-10 .elementor-element-95a9689 > p.e-paragraph-base:nth-of-type(1),
.elementor-10 .elementor-element-ecdc9d9 > p.e-paragraph-base:nth-of-type(1),
.elementor-10 .elementor-element-c7036bd > p.e-paragraph-base:nth-of-type(1) {
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #2f9c92 !important;
  margin: 0 !important;
}
/* How It Works has navy bg, use lighter teal for contrast */
.elementor-10 .elementor-element-95a9689 > p.e-paragraph-base:nth-of-type(1) {
  color: #8fd8d0 !important;
}

/* Services subtitle (2nd direct-child paragraph) */
.elementor-10 .elementor-element-4d92611 > p.e-paragraph-base:nth-of-type(2) {
  text-align: center !important;
  color: #64748b !important;
  max-width: 560px !important;
  margin: 8px auto 0 !important;
}

/* Testimonial avatar initials circles */
.elementor-10 .elementor-element-9c12680 > h5.e-heading-base,
.elementor-10 .elementor-element-439acfd > h5.e-heading-base,
.elementor-10 .elementor-element-5ee3dc7 > h5.e-heading-base {
  width: 40px !important;
  height: 40px !important;
  line-height: 40px !important;
  border-radius: 50% !important;
  background: #1f4e91 !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-align: center !important;
  margin: 0 0 10px 0 !important;
}

/* Testimonial role lines (small muted text under name) */
.elementor-10 .elementor-element-9c12680 > p.e-paragraph-base:nth-of-type(3),
.elementor-10 .elementor-element-439acfd > p.e-paragraph-base:nth-of-type(3),
.elementor-10 .elementor-element-5ee3dc7 > p.e-paragraph-base:nth-of-type(3) {
  font-size: 12px !important;
  color: #64748b !important;
  margin: 0 !important;
}

/* Footer 3-column layout */
.elementor-10 .elementor-element-3f03f25 {
  display: flex !important;
  flex-direction: row !important;
  gap: 48px !important;
  flex-wrap: wrap !important;
  margin-top: 32px !important;
  text-align: left !important;
}
.elementor-10 .elementor-element-b0835c1,
.elementor-10 .elementor-element-05b054c,
.elementor-10 .elementor-element-37cdcd5 {
  flex: 1 1 200px !important;
  text-align: left !important;
}
.elementor-10 .elementor-element-b0835c1 > h4.e-heading-base,
.elementor-10 .elementor-element-05b054c > h4.e-heading-base,
.elementor-10 .elementor-element-37cdcd5 > h4.e-heading-base {
  font-size: 15px !important;
  color: #fff !important;
  margin: 0 0 14px 0 !important;
  text-align: left !important;
}
.elementor-10 .elementor-element-b0835c1 > p.e-paragraph-base,
.elementor-10 .elementor-element-05b054c > p.e-paragraph-base,
.elementor-10 .elementor-element-37cdcd5 > p.e-paragraph-base {
  font-size: 13px !important;
  color: #cfe0f2 !important;
  margin: 0 0 10px 0 !important;
  text-align: left !important;
}

/* Footer top area (name + tagline) stays centered above the columns */
.elementor-10 .elementor-element-70c9f27 > h2.e-heading-base,
.elementor-10 .elementor-element-70c9f27 > p.e-paragraph-base:nth-of-type(1) {
  text-align: center !important;
}
/* Copyright line at the very bottom, centered, with top border */
.elementor-10 .elementor-element-70c9f27 > p.e-paragraph-base:last-child {
  text-align: center !important;
  margin-top: 32px !important;
  padding-top: 20px !important;
  border-top: 1px solid rgba(255,255,255,0.1) !important;
  color: #8fa8c4 !important;
  font-size: 13px !important;
}


/* Hide Astra theme's default footer bar (we have our own custom footer) */
.site-below-footer-wrap {
  display: none !important;
}


/* ===== VISUAL POLISH PASS (card containers, icon badges, gold stars, CTA band, 4-col footer) ===== */

/* --- Service cards: containers + hover --- */
.elementor-10 .elementor-element-03699fa,
.elementor-10 .elementor-element-5fb60d7,
.elementor-10 .elementor-element-5d0dde7,
.elementor-10 .elementor-element-1427149 {
  background: #f4f9fb !important;
  border-radius: 16px !important;
  padding: 30px 24px !important;
  text-align: center !important;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease !important;
}
.elementor-10 .elementor-element-03699fa:hover,
.elementor-10 .elementor-element-5fb60d7:hover,
.elementor-10 .elementor-element-5d0dde7:hover,
.elementor-10 .elementor-element-1427149:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 10px 30px rgba(31,78,145,0.10) !important;
  background: #fff !important;
}
/* Service icon badges - circular teal-light background */
.elementor-10 [data-interaction-id="bf9b71b"],
.elementor-10 [data-interaction-id="b393fd9"],
.elementor-10 [data-interaction-id="d56a3d0"],
.elementor-10 [data-interaction-id="db35921"] {
  width: 64px !important;
  height: 64px !important;
  line-height: 64px !important;
  border-radius: 50% !important;
  background: #e7f6f4 !important;
  font-size: 28px !important;
  text-align: center !important;
  margin: 0 auto 18px !important;
}

/* --- Why WashClean promise cards --- */
.elementor-10 .elementor-element-f283de9,
.elementor-10 .elementor-element-fe752ae,
.elementor-10 .elementor-element-7f952a8,
.elementor-10 .elementor-element-4398e00 {
  background: #fff !important;
  border: 1px solid #e7edf3 !important;
  border-radius: 16px !important;
  padding: 26px !important;
}
/* Promise icon boxes - rounded square teal background */
.elementor-10 [data-interaction-id="8678f52"],
.elementor-10 [data-interaction-id="796d4d7"],
.elementor-10 [data-interaction-id="8e7d7b5"],
.elementor-10 [data-interaction-id="5996382"] {
  width: 48px !important;
  height: 48px !important;
  line-height: 48px !important;
  border-radius: 12px !important;
  background: #2f9c92 !important;
  font-size: 20px !important;
  text-align: center !important;
  margin: 0 0 14px 0 !important;
}

/* --- How It Works step number circles --- */
.elementor-10 [data-interaction-id="9b97b1a"],
.elementor-10 [data-interaction-id="1c09168"],
.elementor-10 [data-interaction-id="e25f3f0"],
.elementor-10 [data-interaction-id="ec0c46b"] {
  width: 52px !important;
  height: 52px !important;
  line-height: 52px !important;
  border-radius: 50% !important;
  background: #2f9c92 !important;
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  text-align: center !important;
  margin: 0 auto 16px !important;
}

/* --- Testimonial cards --- */
.elementor-10 .elementor-element-9c12680,
.elementor-10 .elementor-element-439acfd,
.elementor-10 .elementor-element-5ee3dc7 {
  background: #fff !important;
  border-radius: 16px !important;
  padding: 26px !important;
  box-shadow: 0 10px 30px rgba(31,78,145,0.10) !important;
}
/* Gold stars */
.elementor-10 .elementor-element-1952c05.e-heading-base,
.elementor-10 .elementor-element-f8b99f0.e-heading-base,
.elementor-10 .elementor-element-37f6284.e-heading-base {
  color: #f5b400 !important;
  font-size: 15px !important;
  margin: 0 0 12px 0 !important;
  text-align: left !important;
}

/* --- CTA band: inset gradient rounded card --- */
.elementor-10 .elementor-element-0202d72 {
  background: linear-gradient(120deg, #1f4e91, #2f9c92) !important;
  border-radius: 24px !important;
  margin: 0 24px !important;
  padding: 56px 40px !important;
}

/* --- Footer 4-column: adjust first column (logo+tagline) sizing --- */
.elementor-10 .elementor-element-93999b4 {
  flex: 1 1 220px !important;
  text-align: left !important;
}
.elementor-10 .elementor-element-93999b4 > h2.e-heading-base {
  text-align: left !important;
  font-size: 22px !important;
}
.elementor-10 .elementor-element-93999b4 > p.e-paragraph-base {
  text-align: left !important;
  font-size: 13px !important;
  color: #a9c0d8 !important;
}


/* --- CTA band button fix: pill outline, not full-width --- */
.elementor-element-0202d72 {
  align-items: center !important;
}
[data-interaction-id="a2efb47"].e-button-base {
  display: inline-flex !important;
  width: auto !important;
  max-width: max-content !important;
  padding: 14px 28px !important;
  border-radius: 50px !important;
  background: transparent !important;
  border: 2px solid #ffffff !important;
  color: #ffffff !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  cursor: pointer !important;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease, color .15s ease !important;
}
[data-interaction-id="a2efb47"].e-button-base:hover {
  background: #ffffff !important;
  color: #1f4e91 !important;
}


/* --- FAQ items: stretch full width, fix side-gap --- */
.elementor-element-a4a1c1b {
  align-items: stretch !important;
}
.elementor-element-9e4ddbf,
.elementor-element-fcc53c9,
.elementor-element-7084bd7,
.elementor-element-d4fc636 {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}


/* --- Hero trust stats row: fix vertical stacking --- */
.elementor-element-81e7eca {
  flex-wrap: nowrap !important;
}
.elementor-element-5d9cb46,
.elementor-element-bcedbe3,
.elementor-element-a4a7fda {
  width: auto !important;
  max-width: none !important;
  flex: 0 0 auto !important;
}


/* --- Hero mini-logo badge: shrink to content, not full-width bar --- */
.elementor-element-e5376e4 {
  width: auto !important;
  max-width: max-content !important;
  display: inline-flex !important;
}


/* --- Hide "See Pricing" hero link (no pricing page yet) --- */
.elementor-element-8816788 {
  display: none !important;
}


/* --- Locations section (Our Outlets) --- */
.elementor-element-b764a69 {
  flex-direction: column !important;
  padding: 80px 24px !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  align-items: center !important;
  text-align: center !important;
}
[data-interaction-id="7793e3a"] {
  color: #2f9c92 !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  margin-bottom: 10px !important;
}
[data-interaction-id="26151cf"] {
  font-size: 34px !important;
  font-weight: 800 !important;
  color: #16233d !important;
  margin-bottom: 40px !important;
}
.elementor-element-5a875f6 {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 24px !important;
  justify-content: center !important;
  width: 100% !important;
}
.elementor-element-6dcaf6c,
.elementor-element-4af2c62,
.elementor-element-7e79226 {
  flex: 1 1 320px !important;
  max-width: 360px !important;
  background: #fff !important;
  border: 1px solid #e7edf3 !important;
  border-radius: 16px !important;
  padding: 28px !important;
  text-align: left !important;
  box-shadow: 0 10px 30px rgba(31,78,145,0.08) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
}
[data-interaction-id="220718f"],
[data-interaction-id="d402b91"],
[data-interaction-id="d48b731"] {
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #16233d !important;
  margin-bottom: 10px !important;
}
[data-interaction-id="66c8368"],
[data-interaction-id="fc91e2d"],
[data-interaction-id="403fd7d"] {
  font-size: 14px !important;
  color: #64748b !important;
  margin-bottom: 8px !important;
  line-height: 1.5 !important;
}
[data-interaction-id="c88d7f7"],
[data-interaction-id="db2a7c3"],
[data-interaction-id="459c814"] {
  font-size: 14px !important;
  color: #1f4e91 !important;
  font-weight: 600 !important;
  margin-bottom: 18px !important;
}
[data-interaction-id="2b1e989"].e-button-base,
[data-interaction-id="edba065"].e-button-base,
[data-interaction-id="927f41a"].e-button-base {
  display: inline-flex !important;
  width: auto !important;
  max-width: max-content !important;
  padding: 10px 18px !important;
  border-radius: 50px !important;
  background: #e7f6f4 !important;
  color: #2f9c92 !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  border: none !important;
  cursor: pointer !important;
}
[data-interaction-id="2b1e989"].e-button-base:hover,
[data-interaction-id="edba065"].e-button-base:hover,
[data-interaction-id="927f41a"].e-button-base:hover {
  background: #2f9c92 !important;
  color: #fff !important;
}
@media (max-width: 900px) {
  .elementor-element-6dcaf6c,
  .elementor-element-4af2c62,
  .elementor-element-7e79226 {
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }
}


/* --- Footer copyright row + SLS credit link --- */
.elementor-element-d386024 {
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 6px !important;
  width: 100% !important;
}
[data-interaction-id="216ccbd"] {
  font-size: 15px !important;
  color: #94a3b8 !important;
  margin: 0 !important;
}
[data-interaction-id="e3213b9"].e-button-base {
  display: inline !important;
  width: auto !important;
  max-width: max-content !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: none !important;
  color: #7fd6ce !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  cursor: pointer !important;
}
[data-interaction-id="e3213b9"].e-button-base:hover {
  color: #ffffff !important;
}


/* --- Fix section background consistency: only How-It-Works (navy) and Testimonials (light blue) should break from white --- */
.elementor-element-4d92611,
.elementor-element-a4a1c1b {
  background: #ffffff !important;
  background-color: #ffffff !important;
}


/* Header/nav color fix - match mockup navy-dark links + white header bg */
#masthead, .site-header, .ast-primary-header-bar, .ast-above-header, .ast-below-header {
  background-color: #ffffff !important;
}
.main-header-menu a, .ast-builder-menu-1 a, #ast-hf-menu-1 a {
  color: #163a6d !important;
}
.main-header-menu a:hover, .ast-builder-menu-1 a:hover, #ast-hf-menu-1 a:hover,
.main-header-menu .current-menu-item > a {
  color: #2f9c92 !important;
}


/* FAQ item borders - match mockup divider style */
.elementor-element-9e4ddbf, .elementor-element-fcc53c9, .elementor-element-7084bd7, .elementor-element-d4fc636 {
  border-bottom: 1px solid #e7edf3 !important;
  padding: 22px 0 !important;
}
.elementor-element-d4fc636 {
  border-bottom: none !important;
}


/* FAQ - upgrade from faint divider to visible bordered cards */
.elementor-element-9e4ddbf, .elementor-element-fcc53c9, .elementor-element-7084bd7, .elementor-element-d4fc636 {
  border: 1px solid #dde6ee !important;
  border-bottom: 1px solid #dde6ee !important;
  border-radius: 12px !important;
  padding: 20px 24px !important;
  margin-bottom: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 2px 8px rgba(31,78,145,0.05) !important;
  transition: border-color .15s ease, box-shadow .15s ease !important;
}
.elementor-element-d4fc636 {
  margin-bottom: 0 !important;
}
.elementor-element-9e4ddbf:hover, .elementor-element-fcc53c9:hover,
.elementor-element-7084bd7:hover, .elementor-element-d4fc636:hover {
  border-color: #2f9c92 !important;
  box-shadow: 0 4px 14px rgba(47,156,146,0.12) !important;
}


/* ===== Pickup Request Form redesign ===== */
/* hide corrupted ghost fields (orphaned metadata, not editable in builder) */
#wpforms-124-field_8-container, #wpforms-124-field_9-container { display: none !important; }

/* hide jetpack share/like clutter on the pickup page */
.page-id-127 .sharedaddy { display: none !important; }

/* card container */
.page-id-127 .entry-content { max-width: 820px !important; margin: 0 auto !important; padding: 12px 20px 60px !important; }
.page-id-127 .entry-content h1, .page-id-127 .entry-content h1.entry-title { color: #163a6d !important; }
#wpforms-124.wpforms-container {
  background: #ffffff !important;
  border: 1px solid #dde6ee !important;
  border-radius: 16px !important;
  padding: 36px 32px !important;
  box-shadow: 0 8px 30px rgba(31,78,145,0.08) !important;
}

/* two-column grid to shorten the visual flow */
#wpforms-124 .wpforms-field-container { display: grid !important; grid-template-columns: 1fr 1fr; gap: 6px 24px; }
#wpforms-124-field_1-container { grid-column: 1 / -1 !important; }
#wpforms-124-field_2-container { grid-column: 1 !important; }
#wpforms-124-field_3-container { grid-column: 2 !important; }
#wpforms-124-field_4-container { grid-column: 1 !important; }
#wpforms-124-field_5-container { grid-column: 2 !important; }
#wpforms-124-field_6-container { grid-column: 1 !important; }
#wpforms-124-field_7-container { grid-column: 1 / -1 !important; }
#wpforms-124 .wpforms-field { margin-bottom: 18px !important; }

/* input styling */
#wpforms-124 input[type=text], #wpforms-124 input[type=email], #wpforms-124 input[type=tel],
#wpforms-124 select, #wpforms-124 textarea {
  border: 1px solid #dde6ee !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  font-size: 15px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  transition: border-color .15s ease, box-shadow .15s ease !important;
}
#wpforms-124 input:focus, #wpforms-124 select:focus, #wpforms-124 textarea:focus {
  border-color: #2f9c92 !important;
  box-shadow: 0 0 0 3px rgba(47,156,146,0.15) !important;
  outline: none !important;
}
#wpforms-124 label.wpforms-field-label {
  font-weight: 600 !important; color: #163a6d !important; font-size: 14px !important; margin-bottom: 6px !important;
}
#wpforms-124 .wpforms-field-sublabel { color: #8a97a6 !important; font-size: 12px !important; }

/* submit button */
#wpforms-124 .wpforms-submit-container { grid-column: 1 / -1 !important; margin-top: 10px !important; }
#wpforms-124 button.wpforms-submit {
  background: #2f9c92 !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 15px 0 !important;
  width: 100% !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #fff !important;
  cursor: pointer !important;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease !important;
}
#wpforms-124 button.wpforms-submit:hover {
  background: #278a80 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 18px rgba(47,156,146,0.3) !important;
}

/* mobile: stack to single column */
@media (max-width: 640px) {
  #wpforms-124 .wpforms-field-container { grid-template-columns: 1fr; }
  #wpforms-124-field_2-container, #wpforms-124-field_3-container,
  #wpforms-124-field_4-container, #wpforms-124-field_5-container,
  #wpforms-124-field_6-container { grid-column: 1 / -1 !important; }
  #wpforms-124.wpforms-container { padding: 26px 20px !important; }
}


/* ===== Responsive fix: row grids were not stacking on mobile/tablet, ===== */
/* ===== causing text to squeeze into ~48px columns (Services, Steps, Why WashClean, Testimonials, Footer) ===== */
@media (max-width: 900px) {
  .elementor-element-33c3c35,
  .elementor-element-245563d,
  .elementor-element-54efa7f,
  .elementor-element-3956cd1,
  .elementor-element-3f03f25 {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .elementor-element-33c3c35 > .e-con,
  .elementor-element-245563d > .e-con,
  .elementor-element-54efa7f > .e-con,
  .elementor-element-3956cd1 > .e-con,
  .elementor-element-3f03f25 > .e-con {
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 auto !important;
  }
}



/* ===================================================================== */
/* ===== Spacing overhaul: restore mockup's breathing room. Sections ===== */
/* ===== were only getting ~10px vertical padding instead of 80px,   ===== */
/* ===== and hero text elements (incl. Order Now button) had 0 gap.  ===== */
/* ===================================================================== */

/* Section vertical padding (mockup: section{padding:80px 0}) */
.elementor-element-4d92611,
.elementor-element-95a9689,
.elementor-element-ecdc9d9,
.elementor-element-c7036bd,
.elementor-element-a4a1c1b,
.elementor-element-b764a69 {
  padding-top: 80px !important;
  padding-bottom: 80px !important;
}
/* Hero (mockup: padding:70px 0 60px) */
.elementor-element-a357287 {
  padding-top: 70px !important;
  padding-bottom: 60px !important;
}

/* Hero internal spacing (mockup: eyebrow mb10, h1 mb18, p mb32, actions mb28) */
[data-interaction-id="3e332b1"] { margin-bottom: 10px !important; }
[data-interaction-id="f714ff0"] { margin-bottom: 18px !important; }
[data-interaction-id="61bccd7"] { margin-bottom: 32px !important; }
.elementor-element-bdc38ac { margin-bottom: 28px !important; }

/* Section eyebrows (mockup: margin-bottom:10px) */
[data-interaction-id="c89bd3f"],
[data-interaction-id="2973655"],
[data-interaction-id="49ac6fd"],
[data-interaction-id="571219b"] {
  margin-bottom: 10px !important;
}

/* Grid margin-top from subtitle (mockup: margin-top:44px) */
.elementor-element-33c3c35,
.elementor-element-245563d,
.elementor-element-54efa7f,
.elementor-element-3956cd1 {
  margin-top: 44px !important;
}

/* Footer padding + column gap (mockup: padding:56px 0 24px; footer-grid gap:36px) */
.elementor-element-70c9f27 {
  padding-top: 56px !important;
  padding-bottom: 24px !important;
}
.elementor-element-3f03f25 {
  gap: 36px !important;
}


/* ===== Franchise Enquiry Form redesign (same pattern as Pickup form) ===== */
.page-id-190 .sharedaddy { display: none !important; }
.page-id-190 .entry-content { max-width: 820px !important; margin: 0 auto !important; padding: 12px 20px 60px !important; }
.page-id-190 .entry-content h1, .page-id-190 .entry-title { color: #163a6d !important; }
#wpforms-187.wpforms-container {
  background: #ffffff !important;
  border: 1px solid #dde6ee !important;
  border-radius: 16px !important;
  padding: 36px 32px !important;
  box-shadow: 0 8px 30px rgba(31,78,145,0.08) !important;
}

#wpforms-187 .wpforms-field-container { display: grid !important; grid-template-columns: 1fr 1fr; gap: 6px 24px; }
#wpforms-187-field_1-container { grid-column: 1 / -1 !important; }
#wpforms-187-field_2-container { grid-column: 1 !important; }
#wpforms-187-field_3-container { grid-column: 2 !important; }
#wpforms-187-field_4-container { grid-column: 1 !important; }
#wpforms-187-field_5-container { grid-column: 2 !important; }
#wpforms-187-field_6-container { grid-column: 1 / -1 !important; }
#wpforms-187 .wpforms-field { margin-bottom: 18px !important; }

#wpforms-187 input[type=text], #wpforms-187 input[type=email], #wpforms-187 input[type=tel],
#wpforms-187 select, #wpforms-187 textarea {
  border: 1px solid #dde6ee !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
  font-size: 15px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  transition: border-color .15s ease, box-shadow .15s ease !important;
}
#wpforms-187 input:focus, #wpforms-187 select:focus, #wpforms-187 textarea:focus {
  border-color: #2f9c92 !important;
  box-shadow: 0 0 0 3px rgba(47,156,146,0.15) !important;
  outline: none !important;
}
#wpforms-187 label.wpforms-field-label {
  font-weight: 600 !important; color: #163a6d !important; font-size: 14px !important; margin-bottom: 6px !important;
}
#wpforms-187 .wpforms-field-sublabel { color: #8a97a6 !important; font-size: 12px !important; }

#wpforms-187 .wpforms-submit-container { grid-column: 1 / -1 !important; margin-top: 10px !important; }
#wpforms-187 button.wpforms-submit {
  background: #2f9c92 !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 15px 0 !important;
  width: 100% !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #fff !important;
  cursor: pointer !important;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease !important;
}
#wpforms-187 button.wpforms-submit:hover {
  background: #278a80 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 18px rgba(47,156,146,0.3) !important;
}

@media (max-width: 640px) {
  #wpforms-187 .wpforms-field-container { grid-template-columns: 1fr; }
  #wpforms-187-field_2-container, #wpforms-187-field_3-container,
  #wpforms-187-field_4-container, #wpforms-187-field_5-container { grid-column: 1 / -1 !important; }
  #wpforms-187.wpforms-container { padding: 26px 20px !important; }
}


/* Header vertical padding + tight gap before hero */
.ast-primary-header-bar {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
.elementor-element-a357287 {
  padding-top: 10px !important;
}


/* Center page titles on form pages */
.page-id-127 .entry-title, .page-id-190 .entry-title,
.page-id-127 .entry-content h1, .page-id-190 .entry-content h1 {
  text-align: center !important;
}

/* Header CTA: phone + Book Pickup button (matches mockup .header-cta) */
@media (min-width: 922px) {
  .main-header-menu > li > a.menu-link {
    padding: 0 11px !important;
  }
  .main-header-menu {
    flex-wrap: nowrap !important;
  }
}
li#menu-item-209.wc-phone-pill,
li#menu-item-210.wc-book-pickup-btn {
  line-height: normal !important;
  height: auto !important;
  flex-shrink: 0;
  display: flex !important;
  align-items: center;
  margin-left: 16px !important;
}
li#menu-item-209.wc-phone-pill > a.menu-link,
li#menu-item-210.wc-book-pickup-btn > a.menu-link {
  line-height: normal !important;
  height: auto !important;
  width: auto !important;
}
li#menu-item-209.wc-phone-pill > a.menu-link {
  padding: 0 !important;
  display: flex !important;
  align-items: center;
  gap: 6px;
  font-weight: 700 !important;
  color: #163a6d !important;
  font-size: 13px !important;
  white-space: nowrap;
  background: transparent !important;
}
li#menu-item-209.wc-phone-pill > a.menu-link:hover {
  color: #2f9c92 !important;
}
li#menu-item-209.wc-phone-pill > a.menu-link:after {
  display: none !important;
}
li#menu-item-210.wc-book-pickup-btn {
  margin-left: 10px !important;
}
li#menu-item-210.wc-book-pickup-btn > a.menu-link {
  padding: 10px 20px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  background: #2f9c92 !important;
  color: #ffffff !important;
  border-radius: 50px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  white-space: nowrap;
  box-shadow: 0 8px 20px rgba(47,156,146,0.35);
  transition: transform .15s ease, box-shadow .15s ease;
}
li#menu-item-210.wc-book-pickup-btn > a.menu-link:after {
  display: none !important;
}
li#menu-item-210.wc-book-pickup-btn > a.menu-link:hover {
  transform: translateY(-2px);
  color: #ffffff !important;
}
@media (max-width: 921px) {
  li#menu-item-209.wc-phone-pill,
  li#menu-item-210.wc-book-pickup-btn {
    margin-left: 0 !important;
  }
}

/* Hero buttons gap */
[data-id="57b6dd0"] { gap: 20px !important; }
