/* Phone-only corrections. Desktop and laptop styling is intentionally untouched. */
@media (max-width: 991.98px) {
  .Aboutsec { margin-bottom: 0 !important; overflow: hidden !important; padding: 48px 0 !important; }
  .Aboutsec .bg-mg { display: none !important; }
  .Aboutsec .row { align-items: center !important; display: flex; flex-direction: column; }
  .Aboutsec .row > [class*="col-"] { flex: 0 0 100%; max-width: 100%; width: 100%; }
  .Aboutsec .aboutimg { inset: auto !important; margin: 0 auto 28px !important; position: relative !important; transform: none !important; width: min(300px, 78vw) !important; }
  .Aboutsec .aboutimg::after { display: none !important; }
  .Aboutsec .aboutimg img { display: block; height: auto !important; object-fit: contain; width: 100% !important; }
  .Aboutsec .about-content { background: transparent !important; box-shadow: none !important; margin: 0 !important; padding: 0 4px !important; text-align: center; }
  .Aboutsec .samecont h5 { font-size: 30px; line-height: 1.15; margin-bottom: 20px; text-align: center; }
  .Aboutsec .samecont p { margin: 0; text-align: left; width: 100%; }
  .Aboutsec .button-item { justify-content: center; margin-top: 22px; }
  .Aboutsec .btn-ne { gap: 14px; }
  .Aboutsec .btn-ne img,
  .Aboutsec .btn-ne:hover img { width: 90px; }
}
@media (max-width: 767.98px) {
  .Aboutsec {
    margin-bottom: 0 !important;
    overflow: hidden !important;
    padding: 48px 0 !important;
  }
  .Aboutsec .bg-mg { display: none !important; }
  .Aboutsec .row {
    align-items: center !important;
    display: flex;
    flex-direction: column;
  }
  .Aboutsec .row > [class*="col-"] {
    flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
  }
  .Aboutsec .aboutimg {
    inset: auto !important;
    margin: 0 auto 28px !important;
    position: relative !important;
    transform: none !important;
    width: min(300px, 78vw) !important;
  }
  .Aboutsec .aboutimg::after { display: none !important; }
  .Aboutsec .aboutimg img {
    display: block;
    height: auto !important;
    object-fit: contain;
    width: 100% !important;
  }
  .Aboutsec .about-content {
    background: transparent !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 4px !important;
    text-align: center;
  }
  .Aboutsec .samecont h5 {
    font-size: 30px;
    line-height: 1.15;
    margin-bottom: 20px;
    text-align: center;
  }
  .Aboutsec .samecont p {
    margin: 0;
    text-align: left;
    width: 100%;
  }
  .Aboutsec .button-item {
    justify-content: center;
    margin-top: 22px;
  }
  .Aboutsec .btn-ne { gap: 14px; }
  .Aboutsec .btn-ne img,
  .Aboutsec .btn-ne:hover img { width: 90px; }

  .testimonial-section { overflow: visible; }
  .testimonialSlider { width: 100%; overflow: hidden; }
  .testimonialSlider .swiper-wrapper { align-items: flex-start; }
  .testimonialSlider .swiper-slide { height: auto; }
  .testimonial-layout { display: flex !important; flex-direction: column; min-height: 0 !important; }
  .testimonial-layout .left-panel { width: 100%; min-height: 0; padding: 34px 20px 32px; justify-content: flex-start; align-items: flex-start; text-align: left; }
  .testimonial-layout .left-panel h2 { font-size: 28px; line-height: 1.15; }
  .testimonial-layout .big-quote { margin: 26px 0; }
  .testimonial-layout .big-quote img { width: 28px; }
  .testimonial-layout .author-name { width: auto; max-width: 100%; font-size: 30px; line-height: 1.12; letter-spacing: 1px; }
  .testimonial-layout .author-role { margin-top: 10px; font-size: 11px; letter-spacing: 5px; }
  .testimonial-layout .image-panel { width: 100%; height: 310px; margin: 0; }
  .testimonial-layout .image-panel img { width: 100%; height: 100%; object-fit: cover; object-position: center top; animation: none !important; transform: none !important; }
  .testimonial-layout .right-panel { width: 100%; min-height: 0; padding: 34px 20px 38px; align-items: flex-start; justify-content: flex-start; text-align: left; }
  .testimonial-layout .right-panel p { width: 100%; max-width: 100%; margin: 0; font-size: 16px; line-height: 1.7; }
  .testimonial-layout .quote-bg { display: none; }
  .testimonial-layout .stars { margin-top: 20px; font-size: 24px; letter-spacing: 4px; }
}

@media (max-width: 420px) {
  .testimonial-layout .image-panel { height: 280px; }
  .testimonial-layout .author-name { font-size: 27px; }
}
/* Keep the footer email readable instead of breaking at arbitrary letters. */
.footer .linksftr.lastchild { margin-left: 0 !important; }
.footer .social-icons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.footer a.footer-email {
  display: inline-flex;
  font-size: 13px;
  overflow-wrap: normal !important;
  text-transform: none !important;
  white-space: nowrap;
  word-break: normal !important;
}

@media (max-width: 991.98px) and (min-width: 768px) {
  .footer .row > [class*="col-"] {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .footer a.footer-email {
    display: inline-flex;
    white-space: nowrap;
  }
  .footer-email .email-local,
  .footer-email .email-domain {
    display: inline;
  }
}

@media (max-width: 420px) {
  .footer a.footer-email { font-size: 12px; }
}
