.elementor-kit-6{--e-global-color-primary:#1C1C28;--e-global-color-secondary:#1C1C28;--e-global-color-text:#2D2D45;--e-global-color-accent:#1C1C28;--e-global-color-c158434:#FFFFFF;--e-global-color-e10227f:#F8F8FF;--e-global-color-98b9bb7:#E8E8F5;--e-global-color-7fa6a40:#F8D94E;--e-global-color-b2df48a:#5A2FA8;--e-global-color-bbf44ee:#6E3CCF;--e-global-color-718c8d4:#000000;--e-global-typography-primary-font-family:"Heebo";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Heebo";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Heebo";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Heebo";--e-global-typography-accent-font-weight:500;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 p{margin-block-end:15px;}.elementor-kit-6 a{color:var( --e-global-color-primary );}.elementor-kit-6 a:hover{color:var( --e-global-color-bbf44ee );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;--container-default-padding-top:15px;--container-default-padding-right:15px;--container-default-padding-bottom:15px;--container-default-padding-left:15px;}.elementor-widget:not(:last-child){--kit-widget-spacing:15px;}.elementor-element{--widgets-spacing:15px 15px;--widgets-spacing-row:15px;--widgets-spacing-column:15px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ===========================================
 * Moked Manulan - Custom CSS (v3 consolidated)
 * =========================================== */

/* ========== HEADER SLOGAN - readable weight on purple ========== */
header .elementor-heading-title,
header.elementor-location-header .elementor-heading-title {
  font-weight: 500 !important;
  letter-spacing: 0.2px !important;
  text-shadow: 0 1px 2px rgba(0,0,0,0.18);
}

/* ========== HEADINGS - force Heebo, kill decorative effects ========== */
.elementor-widget-heading .elementor-heading-title,
h1.elementor-heading-title, h2.elementor-heading-title, h3.elementor-heading-title,
h4.elementor-heading-title, h5.elementor-heading-title, h6.elementor-heading-title {
  font-family: 'Heebo', 'Assistant', 'Rubik', system-ui, -apple-system, sans-serif !important;
  -webkit-text-stroke: 0 transparent !important;
  text-stroke: 0 transparent !important;
}
body .elementor h2.elementor-heading-title {
  text-shadow: none !important;
  font-weight: 700 !important;
  letter-spacing: -0.4px !important;
}
/* Restore hero text-shadow (white on image needs it) */
body .elementor .elementor-element-2e5622b .elementor-heading-title {
  text-shadow: 0 2px 14px rgba(0,0,0,0.4) !important;
}

/* ========== MOBILE HERO: image as background with fade ========== */
@media (max-width: 767px) {
  body .elementor .elementor-element-2e5622b {
    position: relative !important;
    overflow: hidden !important;
    min-height: 580px !important;
    padding: 0 !important;
    border-radius: 0 0 24px 24px !important;
    background-image:
      linear-gradient(180deg, rgba(0,0,0,0.20) 0%, rgba(0,0,0,0.65) 55%, rgba(0,0,0,0.92) 100%),
      url('/wp-content/uploads/2026/01/emergency-electrician-1024x683.png') !important;
    background-size: cover, cover !important;
    background-position: center, center !important;
    background-repeat: no-repeat, no-repeat !important;
  }
  body .elementor .elementor-element-2e5622b .elementor-element-0adc402 {
    display: none !important;
  }
  body .elementor .elementor-element-2e5622b > .e-con-inner,
  body .elementor .elementor-element-2e5622b .elementor-element-6df29d3 {
    position: relative !important;
    z-index: 2 !important;
    padding: 32px 18px !important;
    min-height: 580px !important;
    justify-content: center !important;
    gap: 14px !important;
  }
  body .elementor .elementor-element-2e5622b .elementor-heading-title {
    font-size: 40px !important;
    line-height: 1.05 !important;
    margin: 0 !important;
    letter-spacing: -0.5px !important;
    text-align: center !important;
  }
  body .elementor .elementor-element-2e5622b .elementor-widget-button .elementor-button {
    width: 100% !important;
    justify-content: center !important;
    padding: 14px 16px !important;
    font-size: 16px !important;
    box-shadow: 0 6px 20px rgba(0,0,0,0.3) !important;
  }
  body .elementor .elementor-element-2e5622b .elementor-icon-list-text {
    font-size: 14px !important;
    text-shadow: 0 1px 8px rgba(0,0,0,0.35) !important;
  }
}

/* ========== DESKTOP HERO: rounded image + premium feel ========== */
@media (min-width: 768px) {
  body .elementor .elementor-element-2e5622b .elementor-element-0adc402 img {
    border-radius: 24px !important;
    box-shadow: 0 24px 60px rgba(0,0,0,0.18) !important;
  }
}

/* ========== MOBILE - center align text ========== */
@media (max-width: 767px) {
  .elementor-widget-heading .elementor-heading-title,
  .elementor-widget-text-editor,
  .elementor-widget-text-editor p,
  .elementor-widget-text-editor div {
    text-align: center !important;
  }
  h2.elementor-heading-title {
    font-size: 28px !important;
    line-height: 1.2 !important;
  }
}

/* ========== FORM READABILITY ========== */
.elementor-form, .elementor-form *, .elementor-form .elementor-field-group,
.elementor-form .elementor-field-group *, .elementor-form .elementor-field-label,
.elementor-form label, .elementor-form .elementor-field-type-acceptance label,
.elementor-form .elementor-field-type-checkbox label,
.elementor-form .elementor-field-subgroup label {
  color: #1A1A2E !important;
}
.elementor-form a {
  color: #5B2491 !important;
  text-decoration: underline !important;
}
.elementor-form input[type="text"], .elementor-form input[type="email"],
.elementor-form input[type="tel"], .elementor-form input[type="number"],
.elementor-form input[type="url"], .elementor-form textarea, .elementor-form select {
  color: #1A1A2E !important;
  background-color: #fff !important;
  border: 1px solid #D1D5DB !important;
  border-radius: 8px !important;
  padding: 12px 14px !important;
}
.elementor-form input:focus, .elementor-form textarea:focus, .elementor-form select:focus {
  border-color: #5B2491 !important;
  box-shadow: 0 0 0 3px rgba(91,36,145,0.15) !important;
  outline: none !important;
}
.elementor-form input::placeholder, .elementor-form textarea::placeholder {
  color: #6B7280 !important;
  opacity: 1 !important;
}
.elementor-form input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  margin-left: 8px !important;
  accent-color: #5B2491 !important;
}
.elementor-form button[type="submit"], .elementor-form button.elementor-button {
  color: #1A1A2E !important;
}

/* ========== MOBILE: WhatsApp button = purple filled ========== */
@media (max-width: 767px) {
  body .elementor .elementor-element-2e5622b a.elementor-button[href*="wa.me"],
  body .elementor .elementor-element-2e5622b .elementor-widget-button:has(a[href*="wa.me"]) .elementor-button {
    background-color: #5B2491 !important;
    color: #FFFFFF !important;
    border: 2px solid #5B2491 !important;
    box-shadow: 0 6px 20px rgba(91,36,145,0.35) !important;
  }
  body .elementor .elementor-element-2e5622b a.elementor-button[href*="wa.me"]:hover,
  body .elementor .elementor-element-2e5622b .elementor-widget-button:has(a[href*="wa.me"]) .elementor-button:hover {
    background-color: #3D1761 !important;
    border-color: #3D1761 !important;
  }
  body .elementor .elementor-element-2e5622b a.elementor-button[href*="wa.me"] .elementor-button-icon,
  body .elementor .elementor-element-2e5622b .elementor-widget-button:has(a[href*="wa.me"]) .elementor-button-icon {
    color: #25D366 !important;
  }
}

/* ========== DESKTOP - WhatsApp button (same height, narrower sides) ========== */
@media (min-width: 768px) {
  body .elementor .elementor-element-2e5622b a.elementor-button[href*="wa.me"],
  body .elementor .elementor-element-2e5622b .elementor-widget-button:has(a[href*="wa.me"]) .elementor-button {
    padding: 20px 28px !important;
    font-size: 19px !important;
    line-height: 19px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    border-width: 0 !important;
    background-color: #5B2491 !important;
    color: #FFFFFF !important;
    box-shadow: 0 6px 20px rgba(91,36,145,0.30) !important;
    min-height: 0 !important;
  }
  body .elementor .elementor-element-2e5622b a.elementor-button[href*="wa.me"]:hover,
  body .elementor .elementor-element-2e5622b .elementor-widget-button:has(a[href*="wa.me"]) .elementor-button:hover {
    background-color: #3D1761 !important;
  }
  body .elementor .elementor-element-2e5622b a.elementor-button[href*="wa.me"] .elementor-button-icon {
    color: #25D366 !important;
  }
}

/* ========== CITY BUTTONS - chip style (e-loop-item.cities) ========== */
.e-loop-item.cities a.elementor-button,
.e-loop-item.type-cities a.elementor-button,
.e-loop-item.cities .elementor-button-link,
.e-loop-item.type-cities .elementor-button-link {
  background-color: #F8D94E !important;
  background-image: none !important;
  color: #1C1C28 !important;
  border: 1px solid rgba(91,36,145,0.18) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  border-radius: 999px !important;
  padding: 10px 18px !important;
  box-shadow: none !important;
  text-shadow: none !important;
  transition: all 0.2s ease !important;
  letter-spacing: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: nowrap !important;
  min-width: 140px !important;
  min-height: 42px !important;
  box-sizing: border-box !important;
}
.e-loop-item.cities a.elementor-button:hover,
.e-loop-item.type-cities a.elementor-button:hover,
.e-loop-item.cities .elementor-button-link:hover,
.e-loop-item.type-cities .elementor-button-link:hover {
  background-color: #5B2491 !important;
  color: #FFFFFF !important;
  border-color: #5B2491 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(91,36,145,0.25) !important;
}
.e-loop-item.cities .elementor-button-icon,
.e-loop-item.type-cities .elementor-button-icon {
  display: none !important;
}

/* ========== CARDS - subtle hover lift ========== */
.elementor-widget-image-box, .elementor-widget-icon-box, .elementor-widget-call-to-action {
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}
.elementor-widget-image-box:hover, .elementor-widget-icon-box:hover {
  transform: translateY(-2px);
}

/* ========== TESTIMONIAL CARDS - subtle polish ========== */
.elementor-widget-testimonial-carousel .elementor-testimonial-wrapper,
.elementor-widget-testimonial-carousel .elementor-testimonial {
  background-color: #FAFAFC !important;
  border: 1px solid #EAEAF0 !important;
  border-radius: 14px !important;
  padding: 20px !important;
}

/* ========== FAQ ACCORDION - cleaner ========== */
.e-n-accordion details, .elementor-accordion .elementor-accordion-item {
  border-radius: 10px !important;
  overflow: hidden;
  margin-bottom: 8px !important;
}

/* ========== MOBILE - center service cards (image-box / icon-box) ========== */
@media (max-width: 767px) {
  .elementor-widget-image-box .elementor-image-box-wrapper,
  .elementor-widget-icon-box .elementor-icon-box-wrapper {
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  .elementor-widget-image-box .elementor-image-box-img,
  .elementor-widget-icon-box .elementor-icon-box-icon,
  .elementor-widget-icon-box .elementor-icon-box-img {
    margin: 0 auto 12px auto !important;
    float: none !important;
    width: auto !important;
  }
  .elementor-widget-image-box .elementor-image-box-content,
  .elementor-widget-icon-box .elementor-icon-box-content {
    text-align: center !important;
    width: 100% !important;
  }
  .elementor-image-box-title,
  .elementor-icon-box-title,
  .elementor-image-box-description,
  .elementor-icon-box-description {
    text-align: center !important;
  }
  /* Loop grid card content (services CPT cards) */
  .elementor-widget-loop-grid .e-loop-item .elementor-widget-heading,
  .elementor-widget-loop-grid .e-loop-item .elementor-widget-text-editor,
  .e-loop-item .elementor-widget-heading,
  .e-loop-item .elementor-widget-text-editor {
    text-align: center !important;
  }
  .e-loop-item .elementor-heading-title {
    text-align: center !important;
  }
  /* Center the inner flex layout of loop items on mobile */
  .e-loop-item .e-con-inner,
  .e-loop-item .elementor-element.e-con {
    align-items: center !important;
    text-align: center !important;
  }
  /* Center loop-grid card icons */
  .e-loop-item .elementor-widget-icon,
  .e-loop-item .elementor-widget-image {
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* ========== HERO - Google 5.0 trust badge above H1 ========== */
body .elementor .elementor-element-2e5622b .elementor-element-f96e2e8 {
  position: relative;
}
body .elementor .elementor-element-2e5622b .elementor-element-f96e2e8::before {
  content: "";
  display: block;
  width: 145px;
  height: 36px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 145 36'><rect width='145' height='36' rx='18' ry='18' fill='white'/><text x='14' y='25' font-family='Arial,Heebo,sans-serif' font-size='15' fill='%23F5B400'>★</text><text x='30' y='25' font-family='Arial,Heebo,sans-serif' font-size='15' font-weight='600' fill='%231A1A2E'>5.0</text><g transform='translate(60,9) scale(0.75)'><path fill='%234285F4' d='M22.51 12.275c0-.85-.076-1.667-.218-2.451H12v4.642h5.893a5.04 5.04 0 0 1-2.184 3.305v2.748h3.535c2.069-1.906 3.266-4.71 3.266-8.244z'/><path fill='%2334A853' d='M12 23c2.951 0 5.426-.978 7.235-2.65l-3.535-2.748c-.98.658-2.234 1.046-3.7 1.046-2.847 0-5.255-1.923-6.115-4.508H2.236v2.836A11 11 0 0 0 12 23z'/><path fill='%23FBBC05' d='M5.885 14.14A6.6 6.6 0 0 1 5.5 12c0-.747.137-1.473.385-2.14V7.024H2.236A10.99 10.99 0 0 0 1 12c0 1.776.426 3.453 1.236 4.976l3.65-2.836z'/><path fill='%23EA4335' d='M12 5.353c1.605 0 3.046.55 4.18 1.633l3.137-3.136C17.42 2.075 14.945 1 12 1A11 11 0 0 0 2.236 7.024l3.649 2.836C6.745 7.275 9.153 5.353 12 5.353z'/></g><text x='86' y='25' font-family='Arial,sans-serif' font-size='15' font-weight='500' fill='%23555'>Google</text></svg>");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: right center;
  margin-bottom: 16px;
  filter: drop-shadow(0 4px 12px rgba(0,0,0,0.15));
}
@media (max-width: 767px) {
  body .elementor .elementor-element-2e5622b .elementor-element-f96e2e8::before {
    margin-left: auto;
    margin-right: auto;
    background-position: center;
  }
}

/* ========== HOW IT WORKS - subtle time hints on steps ========== */
body .elementor .elementor-element-34c4ece .elementor-image-box-description::after {
  display: block;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(255,255,255,0.18);
  font-size: 13px;
  font-weight: 700;
  color: #FFD23F;
  letter-spacing: 0.3px;
}
body .elementor .elementor-element-f49a2f4 .elementor-image-box-description::after {
  content: "⏱  תוך 30 שניות";
}
body .elementor .elementor-element-b3e40d6 .elementor-image-box-description::after {
  content: "⏱  תוך 5 דקות";
}
body .elementor .elementor-element-1cb6539 .elementor-image-box-description::after {
  content: "⚡  25–30 דקות הגעה";
}
body .elementor .elementor-element-099ab21 .elementor-image-box-description::after {
  content: "✓  אחריות בכתב על העבודה";
}

/* ========== GLOBAL BUTTON POLISH ========== */
.elementor-button {
  transition: transform 0.15s ease, box-shadow 0.2s ease, background-color 0.2s ease !important;
}
.elementor-button:hover {
  transform: translateY(-1px) !important;
}


/* ========== FEATURES SECTION (c552421) — MOBILE 2x2 GRID ========== */
@media (max-width: 767px) {
  /* Force the 4-card wrapper into a 2x2 grid */
  body .elementor .elementor-element.elementor-element-c552421 {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-auto-rows: 1fr !important;
    gap: 12px !important;
    --gap: 12px 12px !important;
    --row-gap: 12px !important;
    --column-gap: 12px !important;
    --display: grid !important;
    --width: 100% !important;
    --padding-left: 16px !important;
    --padding-right: 16px !important;
  }
  /* Each card: equal height, tight padding, centered */
  body .elementor .elementor-element.elementor-element-c552421 > .elementor-widget-image-box {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    height: 100% !important;
  }
  body .elementor .elementor-element.elementor-element-c552421 .elementor-image-box-wrapper {
    padding: 14px 10px !important;
    text-align: center !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }
  /* Smaller icons */
  body .elementor .elementor-element.elementor-element-c552421 .elementor-image-box-img {
    width: 56px !important;
    margin: 0 auto 8px auto !important;
  }
  body .elementor .elementor-element.elementor-element-c552421 .elementor-image-box-img img {
    max-width: 56px !important;
    width: 56px !important;
    height: auto !important;
  }
  /* Compact title */
  body .elementor .elementor-element.elementor-element-c552421 .elementor-image-box-title {
    font-size: 14px !important;
    line-height: 1.25 !important;
    margin: 0 0 4px 0 !important;
    font-weight: 700 !important;
  }
  /* Compact description */
  body .elementor .elementor-element.elementor-element-c552421 .elementor-image-box-description {
    font-size: 12px !important;
    line-height: 1.4 !important;
    margin: 0 !important;
  }
  /* Reduce vertical spacing of the parent section + heading container */
  body .elementor .elementor-element.elementor-element-684621c {
    --padding-top: 32px !important;
    --padding-bottom: 32px !important;
  }
  body .elementor .elementor-element.elementor-element-a9556c8 {
    --margin-bottom: 16px !important;
  }
}


/* ========== HOW IT WORKS (8e074f7) — MOBILE 2x2 GRID ========== */
@media (max-width: 767px) {
  /* 4-step wrapper → 2x2 grid */
  body .elementor .elementor-element.elementor-element-8e074f7 {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-auto-rows: 1fr !important;
    gap: 12px !important;
    --gap: 12px 12px !important;
    --row-gap: 12px !important;
    --column-gap: 12px !important;
    --display: grid !important;
    --width: 100% !important;
    --padding-left: 16px !important;
    --padding-right: 16px !important;
  }
  /* Each step card */
  body .elementor .elementor-element.elementor-element-8e074f7 > .elementor-widget-image-box {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    height: 100% !important;
  }
  body .elementor .elementor-element.elementor-element-8e074f7 .elementor-image-box-wrapper {
    padding: 14px 10px !important;
    text-align: center !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }
  body .elementor .elementor-element.elementor-element-8e074f7 .elementor-image-box-img {
    width: 56px !important;
    margin: 0 auto 8px auto !important;
  }
  body .elementor .elementor-element.elementor-element-8e074f7 .elementor-image-box-img img {
    max-width: 56px !important;
    width: 56px !important;
    height: auto !important;
  }
  body .elementor .elementor-element.elementor-element-8e074f7 .elementor-image-box-title {
    font-size: 14px !important;
    line-height: 1.25 !important;
    margin: 0 0 4px 0 !important;
    font-weight: 700 !important;
  }
  body .elementor .elementor-element.elementor-element-8e074f7 .elementor-image-box-description {
    font-size: 12px !important;
    line-height: 1.4 !important;
    margin: 0 !important;
  }
  /* Tighten the parent how-it-works section padding + heading container */
  body .elementor .elementor-element.elementor-element-34c4ece {
    --padding-top: 32px !important;
    --padding-bottom: 32px !important;
  }
  body .elementor .elementor-element.elementor-element-d07412c {
    --margin-bottom: 16px !important;
  }
  /* The time-hint pseudo-elements (defined elsewhere in Custom CSS) — keep visible but compact */
  body .elementor .elementor-element.elementor-element-8e074f7 .elementor-image-box-description::after {
    margin-top: 6px !important;
    padding-top: 6px !important;
    font-size: 11px !important;
  }
}


/* ========== HEADER PHONE (65a7bbed) — MOBILE INLINE ROW ========== */
@media (max-width: 767px) {
  /* Force phone icon-box to inline row layout on mobile */
  body .elementor .elementor-element.elementor-element-65a7bbed .elementor-icon-box-wrapper {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    text-align: right !important;
  }
  body .elementor .elementor-element.elementor-element-65a7bbed .elementor-icon-box-icon {
    margin: 0 !important;
    flex-shrink: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
  }
  body .elementor .elementor-element.elementor-element-65a7bbed .elementor-icon-box-content {
    text-align: right !important;
    flex: 1 1 auto !important;
    display: flex !important;
    align-items: center !important;
  }
  body .elementor .elementor-element.elementor-element-65a7bbed .elementor-icon-box-title {
    margin: 0 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
  }
  /* Image-box variant fallback (in case widget uses image-box markup not icon-box) */
  body .elementor .elementor-element.elementor-element-65a7bbed .elementor-image-box-wrapper {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
  }
  body .elementor .elementor-element.elementor-element-65a7bbed .elementor-image-box-img {
    margin: 0 !important;
    flex-shrink: 0 !important;
    width: auto !important;
  }
  body .elementor .elementor-element.elementor-element-65a7bbed .elementor-image-box-title,
  body .elementor .elementor-element.elementor-element-65a7bbed .elementor-image-box-description {
    margin: 0 !important;
    text-align: right !important;
  }
}


/* ========== GLOBAL MOBILE CENTERING (with service-list RTL exceptions) ========== */
@media (max-width: 767px) {
  /* === Generic centering on mobile === */
  body .elementor .elementor-widget-heading .elementor-heading-title {
    text-align: center !important;
  }
  body .elementor .elementor-widget-text-editor,
  body .elementor .elementor-widget-text-editor p,
  body .elementor .elementor-widget-text-editor div {
    text-align: center !important;
  }
  body .elementor .elementor-widget-image-box .elementor-image-box-wrapper,
  body .elementor .elementor-widget-icon-box .elementor-icon-box-wrapper {
    text-align: center !important;
  }
  body .elementor .elementor-widget-image-box .elementor-image-box-content,
  body .elementor .elementor-widget-icon-box .elementor-icon-box-content {
    text-align: center !important;
  }
  body .elementor .elementor-widget-image-box .elementor-image-box-img,
  body .elementor .elementor-widget-icon-box .elementor-icon-box-icon {
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
  }
  body .elementor .elementor-widget-icon-list .elementor-icon-list-items {
    justify-content: center !important;
  }
  body .elementor .elementor-widget-icon-list .elementor-icon-list-item {
    justify-content: center !important;
  }
  body .elementor .elementor-widget-icon-list .elementor-icon-list-text {
    text-align: center !important;
  }
  body .elementor .elementor-widget-button .elementor-button-wrapper {
    text-align: center !important;
  }
  /* Footer-specific centering */
  body footer .elementor-widget-heading .elementor-heading-title,
  body footer .elementor-widget-text-editor,
  body footer .elementor-widget-text-editor p,
  body .elementor-location-footer .elementor-widget-heading .elementor-heading-title,
  body .elementor-location-footer .elementor-widget-text-editor,
  body .elementor-location-footer .elementor-widget-text-editor p {
    text-align: center !important;
  }
  body footer .elementor-widget-icon-list .elementor-icon-list-items,
  body .elementor-location-footer .elementor-widget-icon-list .elementor-icon-list-items {
    justify-content: center !important;
  }

  /* === EXCEPTION: service-loop items remain RIGHT-aligned (RTL natural) === */
  body .elementor .e-loop-item.type-services .elementor-widget-heading .elementor-heading-title,
  body .elementor .e-loop-item.type-services .elementor-widget-text-editor,
  body .elementor .e-loop-item.type-services .elementor-widget-text-editor p,
  body .elementor .e-loop-item.type-services .elementor-widget-text-editor div,
  body .elementor .e-loop-item.type-services .elementor-image-box-wrapper,
  body .elementor .e-loop-item.type-services .elementor-image-box-content,
  body .elementor .e-loop-item.type-services .elementor-image-box-title,
  body .elementor .e-loop-item.type-services .elementor-image-box-description,
  body .elementor .e-loop-item.type-services .elementor-icon-box-wrapper,
  body .elementor .e-loop-item.type-services .elementor-icon-box-content,
  body .elementor .e-loop-item.type-services .elementor-icon-box-title,
  body .elementor .e-loop-item.type-services .elementor-icon-box-description {
    text-align: right !important;
  }
  body .elementor .e-loop-item.type-services .elementor-image-box-img,
  body .elementor .e-loop-item.type-services .elementor-icon-box-icon {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  body .elementor .e-loop-item.type-services .elementor-widget-icon-list .elementor-icon-list-items,
  body .elementor .e-loop-item.type-services .elementor-widget-icon-list .elementor-icon-list-item {
    justify-content: flex-start !important;
  }
  body .elementor .e-loop-item.type-services .elementor-widget-icon-list .elementor-icon-list-text {
    text-align: right !important;
  }

  /* === EXCEPTION: form fields keep RTL right-aligned for input usability === */
  body .elementor .elementor-form .elementor-field-group label,
  body .elementor .elementor-form .elementor-field-label,
  body .elementor .elementor-form .elementor-field-type-acceptance label {
    text-align: right !important;
  }
  body .elementor .elementor-form input,
  body .elementor .elementor-form textarea,
  body .elementor .elementor-form select {
    text-align: right !important;
  }
  /* Submit button stays centered (it is a button, not a field) — no override needed */
}


/* ========== ICON-LIST RTL ROWS (mobile) — block centered, rows RTL ========== */
@media (max-width: 767px) {
  /* The <ul> stays a column flex but now centers each <li> horizontally */
  body .elementor .elementor-widget-icon-list .elementor-icon-list-items {
    align-items: center !important;
    justify-content: center !important;
  }
  /* Each row shrinks to fit-content so it can sit centered as a block */
  body .elementor .elementor-widget-icon-list .elementor-icon-list-item {
    width: auto !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
    justify-content: flex-start !important;
  }
  /* Inner anchor / wrapper: RTL-natural row (icon ends up on the right via dir=rtl) */
  body .elementor .elementor-widget-icon-list .elementor-icon-list-item > a,
  body .elementor .elementor-widget-icon-list .elementor-icon-list-item > span {
    width: auto !important;
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }
  /* Text aligned right (RTL natural) — overrides earlier text-align:center */
  body .elementor .elementor-widget-icon-list .elementor-icon-list-text {
    text-align: right !important;
  }
  /* Service-loop icon-lists keep right alignment — already covered by the services exception block above, but reaffirm here for cascade safety */
  body .elementor .e-loop-item.type-services .elementor-widget-icon-list .elementor-icon-list-items {
    align-items: flex-end !important;
    justify-content: flex-start !important;
  }
}


/* ========== TESTIMONIAL CAROUSEL — PREMIUM POLISH (5 stars, gray content area, purple footer) ========== */
/* Outer card: subtle border, soft shadow, rounded */
body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial {
  background: #FFFFFF !important;
  border: 1px solid #EAEAF0 !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.08), 0 2px 8px rgba(90,47,168,0.06) !important;
  margin: 14px 8px !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Content area: subtle light-gray inner panel + 5 yellow stars */
body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__content {
  background: #FAFAFC !important;
  padding: 22px 22px 18px 22px !important;
  flex: 1 1 auto !important;
  position: relative !important;
  border-bottom: 1px solid #ECECF1 !important;
}
body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__content::before {
  content: "\2605 \2605 \2605 \2605 \2605" !important;
  display: block !important;
  color: #F8D94E !important;
  font-size: 18px !important;
  letter-spacing: 3px !important;
  line-height: 1 !important;
  margin: 0 0 12px 0 !important;
  text-align: right !important;
  direction: ltr !important;
  unicode-bidi: isolate !important;
  text-shadow: 0 1px 2px rgba(248,217,78,0.25) !important;
  font-family: "Heebo", Arial, sans-serif !important;
}

/* Review text */
body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__text {
  color: #1F2937 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  font-weight: 400 !important;
  text-align: right !important;
  margin: 0 !important;
}

/* Footer: dark purple, premium contrast */
body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__footer {
  background: linear-gradient(135deg, #3D1761 0%, #5A2FA8 100%) !important;
  padding: 16px 22px !important;
  margin: 0 !important;
  flex: 0 0 auto !important;
}

/* Cite — block-level, no italics */
body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__cite {
  font-style: normal !important;
  display: block !important;
  text-align: right !important;
}

/* Reviewer name — strong white */
body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__name {
  color: #FFFFFF !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  display: block !important;
  margin: 0 0 2px 0 !important;
  line-height: 1.3 !important;
  font-family: "Heebo", Arial, sans-serif !important;
}

/* Reviewer title (city/situation) — yellow accent */
body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__title {
  color: #F8D94E !important;
  font-weight: 500 !important;
  font-size: 12px !important;
  display: block !important;
  line-height: 1.3 !important;
  letter-spacing: 0.2px !important;
}

/* Mobile-specific compactness — keep cards lightweight */
@media (max-width: 767px) {
  body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial {
    margin: 10px 4px !important;
    border-radius: 14px !important;
  }
  body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__content {
    padding: 18px !important;
  }
  body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__content::before {
    font-size: 16px !important;
    letter-spacing: 2px !important;
    margin-bottom: 10px !important;
  }
  body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__text {
    font-size: 14px !important;
    line-height: 1.55 !important;
  }
  body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__footer {
    padding: 14px 18px !important;
  }
  body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__name {
    font-size: 14px !important;
  }
  body .elementor .elementor-widget-testimonial-carousel .elementor-testimonial__title {
    font-size: 11.5px !important;
  }
}


/* === TESTIMONIAL FOOTER GRADIENT — defeat WP-Rocket lazy-bg rule === */
/* High-specificity rule that beats WP-Rocket's universal background-image:none on lazy containers */
body.elementor-page .elementor .e-con .elementor-widget-testimonial-carousel .swiper-slide .elementor-testimonial .elementor-testimonial__footer,
body .elementor-page .elementor .e-con .elementor-widget-testimonial-carousel .swiper-slide .elementor-testimonial .elementor-testimonial__footer,
body .elementor .e-con.e-parent .elementor-widget-testimonial-carousel .swiper-slide .elementor-testimonial .elementor-testimonial__footer {
  background-color: #3D1761 !important;
  background-image: linear-gradient(135deg, #3D1761 0%, #5A2FA8 100%) !important;
  padding: 16px 22px !important;
}
@media (max-width: 767px) {
  body.elementor-page .elementor .e-con .elementor-widget-testimonial-carousel .swiper-slide .elementor-testimonial .elementor-testimonial__footer,
  body .elementor-page .elementor .e-con .elementor-widget-testimonial-carousel .swiper-slide .elementor-testimonial .elementor-testimonial__footer,
  body .elementor .e-con.e-parent .elementor-widget-testimonial-carousel .swiper-slide .elementor-testimonial .elementor-testimonial__footer {
    padding: 14px 18px !important;
  }
}/* End custom CSS */