/* =====================================================
 * VOCALIS.PRO — Responsive Fix
 * Generated by fix_responsive.py
 * Fixes: images crushed on mobile, horizontal overflow
 * ===================================================== */

/* 1. Prevent horizontal scroll on all pages */
html, body { overflow-x: hidden; }

/* 2. Global image responsiveness safety net */
img { max-width: 100%; height: auto; }

/* 3. Elementor image widget — force responsive display */
.elementor-widget-image a { display: block; max-width: 100%; }
.elementor-widget-image img {
  display: block !important;
  max-width: 100% !important;
  height: auto !important;
}

/* 4. Fix custom hero image classes */
.v-illu { max-width: 100% !important; width: 100%; height: auto; }
.v-ei-woman img { max-width: 100%; height: auto; }

/* 5. Mobile: reset negative margins that cause overflow */
@media (max-width: 767px) {
  /* Generic Elementor column overflow protection */
  .e-con, .elementor-column, .elementor-widget-wrap {
    overflow: visible;
  }
  .elementor-section > .elementor-container {
    max-width: 100% !important;
  }
  /* post-3041 */
  .elementor-3041 .elementor-element.elementor-element-177114e {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3041 .elementor-element.elementor-element-177114e img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3041 .elementor-element.elementor-element-24f46a17 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3041 .elementor-element.elementor-element-24f46a17 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3196 */
  .elementor-3196 .elementor-element.elementor-element-3c1a730 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3196 .elementor-element.elementor-element-3c1a730 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3196 .elementor-element.elementor-element-45e58b1 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3196 .elementor-element.elementor-element-45e58b1 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3196 .elementor-element.elementor-element-f5060e5 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3196 .elementor-element.elementor-element-f5060e5 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3230 */
  .elementor-3230 .elementor-element.elementor-element-2347da7 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3230 .elementor-element.elementor-element-2347da7 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3230 .elementor-element.elementor-element-d79a148 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3230 .elementor-element.elementor-element-d79a148 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3312 */
  .elementor-3312 .elementor-element.elementor-element-5ed2296 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3312 .elementor-element.elementor-element-5ed2296 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3312 .elementor-element.elementor-element-b9581e9 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3312 .elementor-element.elementor-element-b9581e9 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3336 */
  .elementor-3336 .elementor-element.elementor-element-8d2ebb2 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3336 .elementor-element.elementor-element-8d2ebb2 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3336 .elementor-element.elementor-element-b6a74a9 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3336 .elementor-element.elementor-element-b6a74a9 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3388 */
  .elementor-3388 .elementor-element.elementor-element-2d41ad7 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3388 .elementor-element.elementor-element-2d41ad7 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3388 .elementor-element.elementor-element-ec07c7a {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3388 .elementor-element.elementor-element-ec07c7a img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3411 */
  .elementor-3411 .elementor-element.elementor-element-65e75d0 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3411 .elementor-element.elementor-element-65e75d0 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3411 .elementor-element.elementor-element-f46cea7 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3411 .elementor-element.elementor-element-f46cea7 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3419 */
  .elementor-3419 .elementor-element.elementor-element-6e58aed {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3419 .elementor-element.elementor-element-6e58aed img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3419 .elementor-element.elementor-element-c26c7d5 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3419 .elementor-element.elementor-element-c26c7d5 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3443 */
  .elementor-3443 .elementor-element.elementor-element-743448b {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3443 .elementor-element.elementor-element-743448b img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3443 .elementor-element.elementor-element-8920fff {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3443 .elementor-element.elementor-element-8920fff img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3455 */
  .elementor-3455 .elementor-element.elementor-element-11253b9 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3455 .elementor-element.elementor-element-11253b9 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3455 .elementor-element.elementor-element-395ea45 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3455 .elementor-element.elementor-element-395ea45 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3465 */
  .elementor-3465 .elementor-element.elementor-element-11b2e97 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3465 .elementor-element.elementor-element-11b2e97 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3465 .elementor-element.elementor-element-4dcb99a {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3465 .elementor-element.elementor-element-4dcb99a img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3478 */
  .elementor-3478 .elementor-element.elementor-element-32053e7 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3478 .elementor-element.elementor-element-32053e7 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3478 .elementor-element.elementor-element-ea63677 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3478 .elementor-element.elementor-element-ea63677 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3492 */
  .elementor-3492 .elementor-element.elementor-element-27016b7 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3492 .elementor-element.elementor-element-27016b7 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3492 .elementor-element.elementor-element-56e2acd {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3492 .elementor-element.elementor-element-56e2acd img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3500 */
  .elementor-3500 .elementor-element.elementor-element-3c394f5 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3500 .elementor-element.elementor-element-3c394f5 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3500 .elementor-element.elementor-element-f1786b2 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3500 .elementor-element.elementor-element-f1786b2 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3512 */
  .elementor-3512 .elementor-element.elementor-element-2d78e87 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3512 .elementor-element.elementor-element-2d78e87 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3512 .elementor-element.elementor-element-3e6f550 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3512 .elementor-element.elementor-element-3e6f550 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3524 */
  .elementor-3524 .elementor-element.elementor-element-06b218f {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3524 .elementor-element.elementor-element-06b218f img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-3524 .elementor-element.elementor-element-4487b76 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3524 .elementor-element.elementor-element-4487b76 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-3548 */
  .elementor-3548 .elementor-element.elementor-element-b280cf4 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-3548 .elementor-element.elementor-element-b280cf4 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  /* post-4569 */
  .elementor-4569 .elementor-element.elementor-element-5e442cf {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-4569 .elementor-element.elementor-element-5e442cf img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
  .elementor-4569 .elementor-element.elementor-element-7663418 {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
  }
  .elementor-4569 .elementor-element.elementor-element-7663418 img {
    max-width: 100% !important;
    height: auto !important;
    width: auto !important;
  }
}

/* 6. Tablet fixes (768–1024px) */
@media (max-width: 1024px) and (min-width: 768px) {
  .elementor-widget-image img {
    max-width: 100% !important;
    height: auto !important;
  }
}