/* RTL - Hebrew Direction */
.elementor-icon-box-wrapper { direction: rtl; text-align: right; }
.elementor-icon-box-content { text-align: right; }
.elementor-widget-text-editor { direction: rtl; text-align: right; }
.elementor-widget-text-editor p { direction: rtl; text-align: right; }
.elementor-testimonial__content, .elementor-testimonial__name { direction: rtl; text-align: right; }
.elementor-nav-menu { direction: rtl; }

/* Floating Contact Buttons */
.im-float-buttons { position: fixed; bottom: 56px; left: 20px; z-index: 9998; display: flex; flex-direction: column; gap: 12px; }
.im-float-btn { width: 56px; height: 56px; border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 16px rgba(0,0,0,0.25); transition: transform 0.2s ease; text-decoration: none !important; }
.im-float-btn:hover { transform: scale(1.1); }
.im-float-btn.whatsapp { background: #25D366; }
.im-float-btn.phone { background: #1a4a7a; }
.im-float-btn svg { width: 28px; height: 28px; fill: #fff; }

/* Legal Footer Bar */
.im-legal-footer { position: fixed; bottom: 0; left: 0; right: 0; z-index: 9997; background: rgba(17,17,17,0.95); padding: 10px 30px; text-align: center; direction: rtl; font-size: 13px; color: #aaa; }
.im-legal-footer a { color: #ccc !important; text-decoration: none !important; margin: 0 10px; pointer-events: auto !important; }
.im-legal-footer a:hover { color: #fff !important; text-decoration: underline !important; }

/* ===== HERO - 2 Column Layout ===== */
.elementor-element-420fa8b {
  padding-right: 46% !important;
  padding-left: 4% !important;
  min-height: 100vh !important;
  justify-content: center !important;
  align-items: flex-start !important;
  box-sizing: border-box !important;
  position: relative !important;
  overflow: visible !important;
}
/* parent containers also need overflow visible */
.elementor-element-420fa8b > .elementor-container,
.elementor-element-420fa8b > .e-con-inner {
  overflow: visible !important;
}
/* Heading - global (clamp works at all sizes) */
.elementor-element-5e7f955 .elementor-heading-title {
  font-size: clamp(26px, 3vw, 48px) !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
  direction: rtl !important;
}
@media (min-width: 768px) {
.elementor-element-5e7f955 .elementor-heading-title { text-align: right !important; }
.elementor-element-50e93b4 {
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  width: 46% !important;
  overflow: visible !important;
}
.elementor-element-50e93b4 .elementor-widget-container {
  display: flex !important;
  justify-content: center !important;
  align-items: flex-start !important;
  height: 100% !important;
}
.elementor-element-69c69f0 img {
  width: 100% !important;
  height: auto !important;
  max-height: 95vh !important;
  object-fit: contain !important;
  object-position: top center !important;
  display: block !important;
}
.elementor-element-c2bab65 { width: 100% !important; }
.elementor-element-488e7fa .elementor-widget-container p {
  font-size: 17px !important;
  line-height: 1.9 !important;
  color: #ccc !important;
}
}
@media (max-width: 767px) {
.e-con.elementor-element-420fa8b,
.e-con-boxed.elementor-element-420fa8b {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  min-height: auto !important;
  padding: 16px 12px 20px 12px !important;
  overflow: visible !important;
  align-items: flex-start !important;
}
.elementor-element-50e93b4 {
  position: static !important;
  width: 48% !important;
  height: auto !important;
  inset: unset !important;
  order: 4 !important;
  align-self: flex-start !important;
  padding: 0 !important;
}
.elementor-element-c2bab65 {
  width: 49% !important;
  max-width: 49% !important;
  order: 3 !important;
  align-self: center !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 4px !important;
}
.elementor-element-69c69f0 img {
  height: 90vw !important;
  width: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: bottom center !important;
  display: block !important;
}
.elementor-element-488e7fa, .elementor-element-488e7fa p {
  font-size: 11px !important;
  line-height: 1.5 !important;
  color: #ffffff !important;
}
}
/* Logo in header - size control */
.ast-site-identity .custom-logo {
  max-height: 65px !important;
  width: auto !important;
}
@media (max-width: 767px) {
  .ast-site-identity .custom-logo {
    max-height: 50px !important;
    width: auto !important;
  }
}