.banner {
  position:relative;
}

.banner_image img { 
  width:100%;
  display:block;
  height:auto;
}

.banner_content_right {
    position: absolute;
    top: 0;
    right: 0;
    width: 60%;
    height: 100%;
    padding: 10%;
    display: flex;
    align-items: center;
    padding-right: 60px;
}

.banner_content_right_shift {
  position: absolute;
  top: 0;
  right: 0;
  width: 60%;
  height: 100%;
  padding: 10%; /* extra padding on the right */
  display: flex;
  align-items: center;
  justify-content: flex-end;     /* push content to the right */
  padding-right: 60px;
}

.banner_content_left {
    position: absolute;
    top: 0;
    left: 0;
    width: 60%;
    height: 100%;
    padding: 10%;
    display: flex;
    align-items: center;
    padding-left: 60px;
}

.banner_text {
  background:rgba(0,0,0,0.65);
  color:#fff;
  padding:30px 50px;
  max-width:100%;
}

body .banner_text h4{
  margin:0 0 15px;
  font-size:38px;
    font-family: Lato,Verdana,Arial,sans-serif!important;
    font-weight: 600 !important;
}

.banner_text p {
  margin:0;
  font-size:20px;
  font-weight:300;
}

/* Mobile adjustment */
@media (max-width:991.5px) {
  .banner_content {
    position:relative;
    width:100%;
    padding:20px;
  }

  .banner_text {
    background:#fff;
    color:#000;
    max-width:100%;
    text-align:center;
  }
}
.video-sec .video-block {
    width: 50%;
    padding: 40px 0;
    max-width: calc(50% - 30px);
}
.video-in {
    position: relative;
    padding-top: 56.35%;
}
.video-in iframe {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
}

.video-inner .row-col {
    display: flex;
    flex-wrap: wrap;
    gap: 60px;
}

@media screen and (max-width: 767px) {
    .video-inner .left-block {
        border-bottom: 2px solid #fff;
    }
}

/* === SONIS PSA – Scoped Impact font === */

/* Headings only (recommended) */
.sonis-psa h1,
.sonis-psa h2,
/* .sonis-psa h3, */
.sonis-psa h4 {
  /* font-family: 'ImpactURW', Impact, Arial, sans-serif !important; */
  font-weight: bold !important;
  letter-spacing: 0.02em;
}

.sonis-psa h3 {
  font-weight: bold;
}

@media (max-width: 767px) {
  .sonis-psa h3 {
    font-size: 16px !important;
  }
}

/* Body copy – keep readable (recommended) */
.sonis-psa p,
.sonis-psa li {
  font-family: Arial, Helvetica, sans-serif;
}

/* =====================================================
   SONIS PSA – FULL MOBILE FIX (ALL SECTIONS)
   ===================================================== */
@media (max-width: 991px) {

  /* ---------- GLOBAL SAFETY ---------- */
  .sonis-psa * {
    box-sizing: border-box;
  }


  /* ---------- BANNERS (TOP SECTIONS) ---------- */

  .sonis-psa .banner {
    position: relative;
    display: block;
  }

  .sonis-psa .banner_image img {
    width: 100%;
    height: auto;
    display: block;
  }

  /* Disable all desktop overlay positioning */
  .sonis-psa .banner_content_right,
  .sonis-psa .banner_content_left,
  .sonis-psa .banner_content_right_shift {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    padding: 16px !important;
    display: block !important;
  }

  .sonis-psa .banner_text {
    max-width: 100% !important;
    padding: 16px !important;
  }


  /* ---------- VIDEO SECTION ---------- */

  .sonis-psa .video-inner .row-col {
    display: block !important;
  }

 .sonis-psa .video-block {
    width: 100% !important;
    margin-bottom: 0;
    max-width: 100%;
    padding: 70px 0;
}
.sonis-psa .video-block.left-block {
    padding-bottom: 0;
}
  /* ---------- CAROUSEL ---------- */

  /* Stop desktop overlay behaviour */
  .sonis-psa .image_carousel .car_detail_warp {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    padding: 16px !important;
    display: block !important;
  }

  .sonis-psa .image_carousel .car_desc_wrap {
    max-width: 100% !important;
    padding: 16px !important;
  }

  /* Ensure images scale nicely */
  .sonis-psa .car_image img {
    width: 100%;
    height: auto;
    display: block;
  }

  /* Remove arrows on mobile (swipe UX only) */
  .sonis-psa button.slick-arrow {
    display: none !important;
  }


  /* ---------- TYPOGRAPHY (Impact SAFE ON MOBILE) ---------- */

  .sonis-psa h4 {
    font-size: 20px !important;
    line-height: 1.2 !important;
    font-weight: normal !important;
  }

  .sonis-psa p {
    font-size: 14px !important;
    line-height: 1.4 !important;
  }
}

/* =====================================================
   SONIS PSA – AMAZON-STYLE MOBILE (NO IMAGE MANIPULATION)
   ===================================================== */
@media (max-width: 991px) {

  /* ----- Banner layout ----- */
  .sonis-psa .banner {
    display: block;
    margin: 0;
  }

  /* ----- Images: untouched ----- */
  .sonis-psa .banner_image {
    margin: 0;
    padding: 0;
  }

  .sonis-psa .banner_image img {
    width: 100%;
    height: auto;
    display: block;
  }

  /* ----- Text UNDER image ----- */
  .sonis-psa .banner_content_left,
  .sonis-psa .banner_content_right,
  .sonis-psa .banner_content_right_shift {
    position: relative !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    left: auto !important;
    right: auto !important;
    transform: none !important; /* fixes Enhanced Comfort */
    text-align: left !important;
  }

  /* ----- Amazon-style text panel ----- */
  .sonis-psa .banner_text {
    background: #000;
    color: #fff;
    padding: 16px;
    margin: 0;
  }

  /* ----- Mobile typography ----- */
  .sonis-psa .banner_text h4 {
    font-size: 20px !important;
    line-height: 1.2;
    margin: 0 0 8px;
    font-weight: normal !important;
  }

  .sonis-psa .banner_text p {
    font-size: 14px;
    line-height: 1.45;
    margin: 0;
  }
}

/* =====================================================
   SONIS PSA – FIX BLANK CAROUSEL IMAGES (MOBILE ONLY)
   ===================================================== */
@media (max-width: 991px) {

  /* Allow slick slides to size to stacked content */
  .sonis-psa .image_carousel .slick-slide {
    height: auto !important;
  }

  /* IMPORTANT: only adjust inner wrapper on mobile */
  .sonis-psa .image_carousel .slick-slide > div {
    display: block !important;
    position: static !important;
    height: auto !important;
  }

  /* Ensure image contributes height */
  .sonis-psa .image_carousel .car_image {
    display: block;
    position: relative;
  }

  .sonis-psa .image_carousel .car_image picture {
    display: block;
  }

  .sonis-psa .image_carousel .car_image img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }
}

.car_image img {
    width: 100% !important;