/* JM Funeral custom brand + responsive images */

/* Logo + text always side-by-side (single logo only) */
.brand-logo,
a.brand-logo,
.header-logo .brand-logo,
.mobile-logo .brand-logo,
.footer-logo .brand-logo {
  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  width: auto !important;
  max-width: none !important;
  text-decoration: none !important;
  line-height: 1.2;
}

/* Hide any leftover sticky duplicate */
.header-logo .sticky-on {
  display: none !important;
}

.brand-logo .logo,
.brand-logo img.logo,
.header-logo .brand-logo img,
.header-logo img.logo {
  width: 52px !important;
  height: 52px !important;
  max-width: 52px !important;
  min-width: 52px !important;
  flex: 0 0 52px !important;
  object-fit: contain !important;
  display: block !important;
}

.brand-logo .brand-text {
  display: inline-block !important;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.15;
  color: #1a1a1a;
  white-space: nowrap !important;
  flex: 0 1 auto;
  max-width: none !important;
}

/* Gold text on dark home header */
.header-layout3 .brand-logo .brand-text,
.header-style3 .brand-logo .brand-text {
  color: #e8c547 !important;
}

.brand-logo--footer .brand-text,
.footer-logo .brand-text {
  color: #ffffff !important;
}

.header-logo {
  background-color: transparent !important;
  max-height: none !important;
  max-width: none !important;
  width: auto !important;
  min-width: 230px;
  padding: 6px 12px 6px 6px !important;
  display: flex !important;
  align-items: center !important;
  overflow: visible !important;
}

.header-style3 .header-logo {
  background-color: transparent !important;
}

.vs-menu-wrapper .mobile-logo {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px;
}

.vs-menu-wrapper .mobile-logo .brand-text {
  color: #1a1a1a !important;
  font-size: 16px;
}

.preloader-inner .logo {
  width: 90px !important;
  height: auto !important;
  max-width: 120px !important;
}

.footer-logo .brand-logo .logo,
.footer-logo .brand-logo img.logo {
  width: 48px !important;
  height: 48px !important;
  max-width: 48px !important;
  min-width: 48px !important;
  flex: 0 0 48px !important;
}

.footer-logo .brand-text {
  font-size: 16px;
}

/* Responsive images site-wide (not brand logo) */
img:not(.logo) {
  max-width: 100%;
  height: auto;
}

.service-img,
.details-img1,
.about-img,
.blog-img,
.project-img,
.team-img,
.author-img,
.contact-media,
.map-layout1 {
  overflow: hidden;
}

.service-img img,
.details-img1 img,
.about-img img,
.blog-img img,
.project-img img,
.team-img img,
.blog-group-imgs img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
}

.service-style3 .service-img {
  aspect-ratio: 4 / 3;
}

.service-style3 .service-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Tablet */
@media (max-width: 991px) {
  .header-logo {
    min-width: 200px !important;
    max-width: none !important;
  }

  .brand-logo .logo,
  .brand-logo img.logo,
  .header-logo .brand-logo img,
  .header-logo img.logo {
    width: 44px !important;
    height: 44px !important;
    max-width: 44px !important;
    min-width: 44px !important;
    flex: 0 0 44px !important;
  }

  .brand-logo .brand-text {
    font-size: 15px !important;
    white-space: nowrap !important;
  }
}

/* Mobile — still logo LEFT, text RIGHT */
@media (max-width: 575px) {
  .header-logo {
    min-width: 0 !important;
    max-width: none !important;
    padding: 4px 8px 4px 4px !important;
  }

  .brand-logo,
  a.brand-logo {
    gap: 8px !important;
  }

  .brand-logo .logo,
  .brand-logo img.logo,
  .header-logo .brand-logo img,
  .header-logo img.logo {
    width: 40px !important;
    height: 40px !important;
    max-width: 40px !important;
    min-width: 40px !important;
    flex: 0 0 40px !important;
  }

  .brand-logo .brand-text {
    font-size: 13px !important;
    white-space: nowrap !important;
    max-width: none !important;
  }
}
