/* Shared rules for Hebrew, English and Russian. No fixed text widths. */
.bsp-canvas .elementor .bsp-cta-row.e-con,
.bsp-canvas .elementor .bsp-cta-row.e-con > .e-con-inner {
  display:flex!important; flex-direction:row!important; flex-wrap:wrap!important;
  align-items:stretch!important; justify-content:flex-start; gap:10px!important;
  width:100%; max-width:100%; min-width:0;
}
.bsp-canvas .elementor .bsp-cta-row > .elementor-widget-button,
.bsp-canvas .elementor .bsp-cta-row > .e-con-inner > .elementor-widget-button {
  flex:0 1 auto!important; width:auto!important; min-width:0; max-width:100%!important; margin:0!important;
}
.bsp-canvas .elementor .bsp-cta-row .elementor-button {
  display:inline-flex; align-items:center; justify-content:center;
  min-height:46px; height:100%; max-width:100%; padding:13px 22px;
  white-space:normal; overflow-wrap:anywhere; text-align:center; line-height:1.25;
}
.bsp-canvas .elementor .bsp-cta-row .elementor-button-text { white-space:nowrap; }
.bsp-canvas .elementor .bsp-footer-links .elementor-button { white-space:normal; overflow-wrap:anywhere; }
.bsp-canvas .elementor .bs-el-contact .bsp-cta-row { grid-column:1/-1; }
.bsp-canvas .elementor .bs-el-contact > .elementor-widget-heading,
.bsp-canvas .elementor .bs-el-contact > .elementor-widget-text-editor,
.bsp-canvas .elementor .bs-el-contact > .bsp-contact-form-widget { flex-basis:100%; min-width:0; }
/* Floating contact and accessibility buttons occupy opposite corners in every language. */
.bsp-canvas .elementor .bsp-floating-actions-widget { inset-inline-start:auto!important; inset-inline-end:auto!important; left:auto!important; right:14px!important; }
.bsp-a11y { left:14px!important; right:auto!important; }
.bsp-float-panel { display:flex; flex-wrap:wrap; gap:6px; min-width:0; max-width:calc(100vw - 28px); }
.bsp-float-panel[hidden] { display:none; }
.bsp-float-panel a { flex:1 1 auto; text-align:center; }
.cookie-note { max-width:calc(100vw - 28px); bottom:80px; }
@media(max-width:1000px) {
  .bsp-canvas .elementor .bsp-header.e-con.e-flex > .e-con-inner { flex-wrap:wrap; gap:0; }
  .bsp-canvas .elementor .bsp-header-links.e-con.e-flex {
    position:static; top:auto; left:auto; right:auto; order:3; flex:0 0 100%;
    width:100%; max-width:100%; padding:16px 0 8px; box-shadow:none;
  }
  .bsp-canvas .elementor .bsp-header-links.e-con.e-flex > .e-con-inner {
    flex-direction:row!important; flex-wrap:wrap!important; align-items:stretch!important;
    justify-content:flex-start!important; gap:8px!important; border-top:1px solid #39434a; padding-top:12px;
  }
  .bsp-canvas .elementor .bsp-header-links .bsp-nav-link { width:auto!important; flex:1 1 calc(50% - 8px)!important; min-width:0; }
  .bsp-canvas .elementor .bsp-header-links .bsp-nav-link .elementor-button {
    display:flex; justify-content:center; align-items:center; min-height:44px;
    width:100%; padding:10px 7px; font-size:16px; line-height:1.3; white-space:normal; overflow-wrap:anywhere;
  }
  .bsp-canvas .elementor .bsp-header-links .bsp-header-whatsapp { width:auto!important; flex:1 1 calc(50% - 8px)!important; min-width:0; margin:0!important; }
  .bsp-canvas .elementor .bsp-header-links .bsp-header-whatsapp .elementor-button { display:flex; align-items:center; justify-content:center; min-height:44px; padding:10px 7px; }
}
@media(max-width:540px) {
  .bsp-canvas .elementor .bsp-cta-row > .elementor-widget-button,
  .bsp-canvas .elementor .bsp-cta-row > .e-con-inner > .elementor-widget-button { flex:1 1 0!important; }
  .bsp-canvas .elementor .bsp-cta-row .elementor-button { width:100%; padding:12px 10px; font-size:15px; }
  .bsp-canvas .elementor .bsp-floating-actions-widget { left:auto!important; right:10px!important; bottom:10px; }
  .bsp-a11y { left:10px!important; }
}
/* Text zoom can wrap a label rather than clip it or force horizontal scrolling. */
@media(max-width:319px) { .bsp-canvas .elementor .bsp-cta-row .elementor-button-text { white-space:normal; } }

.bsr-fixed-contact { position:fixed; right:14px; bottom:18px; z-index:52; }
@media(max-width:540px) { .bsr-fixed-contact { right:10px; bottom:10px; } }

/* Contain the SVG's unused right margin instead of shifting its box offscreen. */
@media(max-width:1000px) {
 .bsp-canvas .elementor .bsp-header.e-con > .bsp-header-logo.e-con.e-flex {
   right:16px!important; left:auto!important; width:96px!important; max-width:96px!important; overflow:hidden;
 }
 .bsp-canvas .elementor .bsp-header-logo .elementor-widget-image a img[src$=".svg"] {
   width:140px!important; max-width:none!important;
 }
}
@media(max-width:540px) {
 .bs-lang-ru .bs-el-hero h1 { font-size:clamp(30px,10.5vw,44px)!important; }
 .bsp-canvas .elementor h1,.bsp-canvas .elementor h2,.bsp-canvas .elementor h3 { overflow-wrap:anywhere; }
}
