/* Jopestkil 2026-10: safe branded-hero and responsive image improvements. */
/* Standalone branded banners have their own wording; keep live page copy below,
   rather than overlaying text and making the marketing graphics unreadable. */
.v18-page .v18-hero.v18-hero--branded{
  padding:0!important;background:#fff!important;color:#17392b!important;
}
.v18-hero--branded .jp-branded-banner{
  display:block;width:100%;height:auto;max-width:100%;background:#fff;
}
.v18-hero--branded > .v18-shell{
  padding:clamp(26px,3.3vw,48px) 0 clamp(34px,4vw,58px);
}
.v18-page .v18-hero--branded h1{color:#0f3b29!important;max-width:920px}
.v18-page .v18-hero--branded p{color:#3c5147!important}
.v18-page .v18-hero--branded .v18-breadcrumb{color:#4b6457}
.v18-page .v18-hero--branded .v18-breadcrumb a{color:#165b37}
.v18-page .v18-hero--branded .v18-hero__eyebrow{color:#08713b}
/* All individual location pages: no dark gradient over lettering in the photo.
   The photo and the localized H1/intro are fully visible as independent blocks. */
.ed32-location .ed32-hero{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  min-height:0!important;background:#122b1d!important;overflow:hidden;
}
.ed32-location .ed32-hero__bg{
  position:relative!important;inset:auto!important;transform:none!important;
  width:100%;height:auto;aspect-ratio:1402 / 645;flex-shrink:0;
  background-image:url('../images/location-hero-jopestkil-team.webp');
  background-position:center;background-repeat:no-repeat;background-size:100% 100%;
  background-color:#fff;
}
.ed32-location .ed32-hero__overlay{display:none!important}
.ed32-location .ed32-hero__inner{
  position:relative!important;width:min(1180px,calc(100% - 48px));
  padding:clamp(36px,4vw,60px) 0!important;color:#fff;
}
.ed32-location .ed32-hero__copy{max-width:920px}
.ed32-location .ed32-hero__copy > p{max-width:880px}
/* Promotional posters must be legible in the main service image panels, not
   shrunk into 360x310 thumbnails or partly hidden by decorative badges. */
body.jp-service-v20 .svc20-visual{
  min-height:0!important;display:flex!important;flex-direction:column!important;
  justify-content:flex-start!important;align-items:stretch!important;
  padding:12px!important;gap:10px;
}
body.jp-service-v20 .svc20-visual::before,
body.jp-service-v20 .svc20-visual::after{display:none!important}
body.jp-service-v20 .svc20-visual > img{
  position:relative;z-index:1;width:100%!important;height:auto!important;
  max-width:100%!important;max-height:none!important;object-fit:contain!important;
  display:block;filter:none!important;
}
body.jp-service-v20 .svc20-visual-note{
  position:static!important;left:auto!important;right:auto!important;bottom:auto!important;
  width:100%;margin:0!important;box-shadow:none!important;
}
/* Service overview cards use portrait space to display full branded artwork
   instead of cropping the key details and contact information. */
.v18-page .v18-service-card__image{aspect-ratio:4 / 5;background:#edf3ef}
.v18-page .v18-service-card__image img{
  width:100%!important;height:100%!important;object-fit:contain!important;padding:0!important;
}
/* Remove padded miniature images on location service cards. */
.ed32-location .ed32-service-card__image{aspect-ratio:4 / 5}
.ed32-location .ed32-service-card__image img{
  padding:0!important;width:100%!important;height:100%!important;object-fit:contain!important;
}
/* The illustrated related-service cards also need their full usable area. */
.jp-related-card__media--contain{padding:0!important}
.jp-related-card__media--contain img{object-fit:contain!important;object-position:center!important}
@media(max-width:640px){
 .ed32-location .ed32-hero__inner{width:min(1180px,calc(100% - 30px));padding:32px 0!important}
 .ed32-location .ed32-hero__copy>p{font-size:1rem;line-height:1.7}
 .v18-page .v18-hero--branded > .v18-shell{padding:26px 0 38px}
 body.jp-service-v20 .svc20-visual{padding:8px!important}
}

/* Larger service illustration panels in local landing pages. */
.ed32-location .ed32-image-frame--service{aspect-ratio:4 / 5}
.ed32-location .ed32-image-frame--service img,
.ed32-location .ed32-image-frame--portrait img,
.ed32-location .ed32-image-frame--wide img{padding:0!important}
