/* Bildlayout: motivgerechte Ausschnitte ohne seitliche Leerflächen. */
.site-v6 picture.photo-20260925 {
  display:block; width:100%; aspect-ratio:auto; overflow:hidden; background:#edf3f6;
}
.site-v6 picture.photo-20260925 img {
  display:block; width:100%; height:auto; max-height:none;
  object-fit:cover; object-position:50% 45%; transform:none;
}
/* Die Hochformatmotive behalten in den Leistungskarten ausreichend Höhe. */
.site-v6 .v5-service-visual-photo picture.photo-20260925 {
  aspect-ratio:4 / 5;
}
.site-v6 .v5-service-visual-photo picture.photo-20260925 img {
  width:100%; height:100%; max-height:none; object-fit:cover;
}
.site-v6 .v5-service-visual-photo img[src*="winterdienst"] { object-position:50% 62%; }
.site-v6 .v5-service-visual-photo img[src*="fassadenreparatur"] { object-position:50% 48%; }
.site-v6 .v5-service-visual-photo img[src*="objektkontrolle"] { object-position:50% 35%; }
/* Das Gespräch ist der persönliche Einstieg; die Bildunterschrift liegt darunter. */
.site-v6 .v58-hero-visual picture.photo-20260925 { aspect-ratio:4 / 5; }
.site-v6 .v58-hero-visual picture.photo-20260925 img {
  height:100%; max-height:none; object-fit:cover; object-position:50% 38%;
}
.site-v6 .v58-hero-visual figcaption { position:static; }
.site-v6 .v58-split-visual picture.photo-20260925,
.site-v6 .media-frame picture.photo-20260925 { aspect-ratio:4 / 5; }
.site-v6 .v58-split-visual picture.photo-20260925 img,
.site-v6 .media-frame picture.photo-20260925 img { height:100%; max-height:none; object-fit:cover; }
/* Beide Collagen bleiben vollständig sichtbar, in ihrem eigenen Seitenverhältnis. */
.site-v6 .v595-showcase-card picture.photo-20260925 { aspect-ratio:auto; }
.site-v6 .v595-showcase-card picture.photo-20260925 img {
  width:100%; height:auto; max-height:none; object-fit:contain;
}

/* Korrektur Leistungsübersicht: Bildhöhe an den Rahmen binden. */
.site-v6.page-leistungen .service-grid {
  max-width:1080px; margin-inline:auto;
  grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch;
}
.site-v6.page-leistungen .service-grid > .service-card:last-child:nth-child(odd) {
  grid-column:auto; width:auto; justify-self:stretch;
}
.site-v6.page-leistungen .service-card .pic {
  aspect-ratio:4 / 5; flex:none; width:100%;
}
.site-v6.page-leistungen .service-card .pic picture.photo-20260925 {
  position:absolute; inset:0; width:100%; height:100%; aspect-ratio:auto;
}
.site-v6.page-leistungen .service-card .pic picture.photo-20260925 img {
  display:block; width:100%; height:100%; max-height:none;
  object-fit:cover; object-position:50% 45%; transform:none;
}
.site-v6.page-leistungen .service-card .pic picture.photo-20260925 img[src*="winterdienst"] { object-position:50% 62%; }
.site-v6.page-leistungen .service-card .pic picture.photo-20260925 img[src*="fassadenreparatur"] { object-position:50% 48%; }
.site-v6.page-leistungen .service-card .pic picture.photo-20260925 img[src*="objektkontrolle"] { object-position:50% 35%; }
@media(max-width:960px) and (min-width:661px) {
  .site-v6.page-leistungen .service-grid { max-width:720px; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .site-v6.page-leistungen .service-grid > .service-card:last-child:nth-child(odd) {
    grid-column:1 / -1; width:calc((100% - 24px) / 2); justify-self:center;
  }
}
@media(max-width:660px) {
  .site-v6.page-leistungen .service-grid { max-width:380px; grid-template-columns:minmax(0,1fr); }
}

/* Breite Erklärgrafik: Text und Motive vollständig erhalten. */
.site-v6 .work-scope-visual { max-width:960px; margin:0 auto 36px; overflow:hidden; border:1px solid rgba(10,34,74,.10); border-radius:24px; background:#fff; box-shadow:0 16px 40px rgba(6,26,57,.09); }
.site-v6 .work-scope-visual > a, .site-v6 .work-scope-visual picture { display:block; }
.site-v6 .work-scope-visual img { display:block; width:100%; height:auto; max-height:none; object-fit:contain; }
.site-v6 .work-scope-visual figcaption { padding:16px 22px; color:var(--blue); font-size:14px; line-height:1.6; border-top:3px solid var(--green); }
.site-v6 .work-scope-visual figcaption a { font-weight:700; text-decoration:underline; }
@media(max-width:660px) { .site-v6 .work-scope-visual { border-radius:16px; margin-bottom:24px; } .site-v6 .work-scope-visual figcaption { padding:12px 16px; } }

/* Einheitliche finale Leistungsbanner; keine festen Bildhöhen, kein Beschnitt. */
.site-v6 .service-banner-section { padding-top:24px; }
.site-v6 .service-banner { width:100%; max-width:1080px; margin:0 auto 36px; overflow:hidden; border-radius:24px; background:#fff; border:1px solid rgba(10,34,74,.1); box-shadow:0 18px 44px rgba(6,26,57,.12); }
.site-v6 .service-banner > a, .site-v6 .service-banner picture { display:block; width:100%; }
.site-v6 .service-banner img { display:block; width:100%; height:auto; max-height:none; object-fit:contain; transform:none; }
.site-v6 .service-banner figcaption { padding:10px 18px; text-align:right; font-size:13px; border-top:3px solid var(--green); }
.site-v6 .service-banner figcaption a { color:var(--blue); text-decoration:underline; font-weight:700; }
.site-v6 .service-banner-copy { max-width:900px; margin-inline:auto; }
@media(max-width:660px) { .site-v6 .service-banner { border-radius:16px; margin-bottom:24px; } .site-v6 .service-banner-section { padding-top:16px; } }

/* Lesbare Bannertexte auf kleinen Bildschirmen statt Schrift nur im Bild. */
.site-v6 .service-banner .banner-mobile-copy { display:none; }
.site-v6 .service-banner figcaption > a { display:inline-flex; align-items:center; min-height:44px; }
@media(max-width:660px) {
  .site-v6 .service-banner figcaption { text-align:left; padding:16px 18px; }
  .site-v6 .service-banner .banner-mobile-copy { display:block; color:var(--blue); font-size:16px; line-height:1.6; }
  .site-v6 .banner-mobile-copy h2 { font-size:22px; line-height:1.25; margin:0 0 10px; overflow-wrap:anywhere; }
  .site-v6 .banner-mobile-copy p { margin:0 0 12px; }
}
