/*Google Fonts local
/* ibm-plex-sans-regular - cyrillic_cyrillic-ext_greek_latin_latin-ext_vietnamese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/ibm-plex-sans-v23-cyrillic_cyrillic-ext_greek_latin_latin-ext_vietnamese-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-italic - cyrillic_cyrillic-ext_greek_latin_latin-ext_vietnamese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/ibm-plex-sans-v23-cyrillic_cyrillic-ext_greek_latin_latin-ext_vietnamese-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-500 - cyrillic_cyrillic-ext_greek_latin_latin-ext_vietnamese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/ibm-plex-sans-v23-cyrillic_cyrillic-ext_greek_latin_latin-ext_vietnamese-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-500italic - cyrillic_cyrillic-ext_greek_latin_latin-ext_vietnamese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 500;
  src: url('../fonts/ibm-plex-sans-v23-cyrillic_cyrillic-ext_greek_latin_latin-ext_vietnamese-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-700 - cyrillic_cyrillic-ext_greek_latin_latin-ext_vietnamese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/ibm-plex-sans-v23-cyrillic_cyrillic-ext_greek_latin_latin-ext_vietnamese-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-700italic - cyrillic_cyrillic-ext_greek_latin_latin-ext_vietnamese */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/ibm-plex-sans-v23-cyrillic_cyrillic-ext_greek_latin_latin-ext_vietnamese-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* pt-sans-regular - cyrillic_cyrillic-ext_latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/pt-sans-v18-cyrillic_cyrillic-ext_latin_latin-ext-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* pt-sans-italic - cyrillic_cyrillic-ext_latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'PT Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/pt-sans-v18-cyrillic_cyrillic-ext_latin_latin-ext-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* pt-sans-700 - cyrillic_cyrillic-ext_latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'PT Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/pt-sans-v18-cyrillic_cyrillic-ext_latin_latin-ext-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* pt-sans-700italic - cyrillic_cyrillic-ext_latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'PT Sans';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/pt-sans-v18-cyrillic_cyrillic-ext_latin_latin-ext-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* pt-sans-caption-regular - cyrillic_cyrillic-ext_latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'PT Sans Caption';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/pt-sans-caption-v20-cyrillic_cyrillic-ext_latin_latin-ext-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* pt-sans-caption-700 - cyrillic_cyrillic-ext_latin_latin-ext */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'PT Sans Caption';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/pt-sans-caption-v20-cyrillic_cyrillic-ext_latin_latin-ext-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* Responsiver Hero-Slider – überschreibt feste Höhen des Templates */
.owl-carousel .acm-hero-item {
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  width: 100%;
  height: clamp(220px, 45vw, 560px); /* skaliert mit Viewport, min/max begrenzt */
  display: flex;
  align-items: center;
}

/* Container darf nicht breiter als der Slider werden */
.owl-carousel .acm-hero-item .item.container {
  width: 100%;
  max-width: 100%;
  padding-left: 16px;
  padding-right: 16px;
}

/* Text/Content im Slider responsiv verkleinern */
.owl-carousel .hero-content-inner {
  font-size: clamp(14px, 2.2vw, 20px);
}

/* Tablet */
@media (max-width: 991px) {
  .owl-carousel .acm-hero-item {
    height: clamp(200px, 55vw, 420px);
  }
}

/* Smartphone */
@media (max-width: 575px) {
  .owl-carousel .acm-hero-item {
    height: clamp(180px, 65vw, 320px);
  }
  .owl-carousel .hero-content-inner {
    font-size: 14px;
  }
}

/* Verhindert horizontales Scrollen durch den Slider auf kleinen Screens */
.owl-carousel,
.owl-stage-outer {
  max-width: 100vw;
  overflow: hidden !important;
}
/* 1) Sicherheitsnetz gegen horizontales Scrollen der ganzen Seite */
html, body {
  overflow-x: hidden;
  max-width: 100%;
}

/* 2) Grundverhalten wie zuvor */
.owl-carousel .acm-hero-item {
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  width: 100%;
  height: clamp(220px, 45vw, 560px);
  display: flex;
  align-items: center;
}

/* 3) NUR für das Visitenkarten-Bild: rechten Bildausschnitt priorisieren,
      damit die Adresse sichtbar bleibt statt zentriert gecroppt zu werden */
.owl-carousel .acm-hero-item[style*="schwindt_hattingen.jpg"] {
  background-position: right center !important;
}

/* 4) Auf Mobile zusätzlich mehr Höhe für dieses Bild, damit weniger
      seitlich weggeschnitten wird (bei "cover" gilt: höher = weniger Crop) */
@media (max-width: 575px) {
  .owl-carousel .acm-hero-item[style*="schwindt_bochum_halle.jpg"] {
    height: clamp(260px, 80vw, 420px);
    background-position: right center !important;
  }
}

/* Tablet/Smartphone-Höhen für alle anderen Slides bleiben wie gehabt */
@media (max-width: 991px) {
  .owl-carousel .acm-hero-item {
    height: clamp(200px, 55vw, 420px);
  }
}
@media (max-width: 575px) {
  .owl-carousel .acm-hero-item {
    height: clamp(180px, 65vw, 320px);
  }
}