.articleWrap,
.contentMain {
  font-size: 1.03rem;
  line-height: 1.76;
  color: #3f3a33;
}

.contentMain > *:last-child,
.articleWrap > *:last-child {
  margin-bottom: 0;
}

.contentMain p,
.articleWrap p {
  margin: 0 0 1.05rem;
}

.contentMain .page-header,
.articleWrap .page-header {
  margin: 0 0 1.1rem;
  padding: 0.45rem 0 0.55rem;
  border: 0;
  border-bottom: 1px solid #e2d4c0;
  border-left: 2px solid #c7a478;
  padding-left: 0.65rem;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.contentMain .page-header h1,
.contentMain .page-header h2,
.articleWrap .page-header h1,
.articleWrap .page-header h2 {
  margin: 0;
  color: #2f281f;
  line-height: 1.18;
  letter-spacing: 0.01em;
}

.contentMain .page-header > h1,
.articleWrap .page-header > h1 {
  font-size: clamp(1.65rem, 2.6vw, 2.05rem);
  font-weight: 700;
}

.contentMain .page-header > h2,
.articleWrap .page-header > h2 {
  font-size: clamp(1.45rem, 2.2vw, 1.8rem);
  font-weight: 700;
  border-bottom: 0px;
}

.contentMain h1,
.contentMain h2,
.contentMain h3,
.articleWrap h1,
.articleWrap h2,
.articleWrap h3 {
  color: #2a2a26;
  font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
  font-weight: 700;
  text-wrap: balance;
}

.contentMain h1,
.articleWrap h1 {
  margin: 0 0 1rem;
  font-size: clamp(1.58rem, 2.4vw, 1.95rem);
  line-height: 1.2;
}

.contentMain h2,
.articleWrap h2 {
  margin: 1.75rem 0 0.85rem;
  font-size: clamp(1.3rem, 2vw, 1.65rem);
  line-height: 1.25;
  padding-bottom: 0.18rem;
  border-bottom: 1px solid rgba(199, 164, 120, 0.36);
}

.contentMain h3,
.articleWrap h3 {
  margin: 1.45rem 0 0.72rem;
  font-size: clamp(1.08rem, 1.55vw, 1.26rem);
  line-height: 1.3;
  color: #3b3126;
}

.contentMain ul,
.contentMain ol,
.articleWrap ul,
.articleWrap ol {
  margin: 0 0 1.1rem;
  padding-left: 1.35rem;
}

.contentMain li,
.articleWrap li {
  margin-bottom: 0.32rem;
}

.contentMain blockquote,
.articleWrap blockquote {
  margin: 1.2rem 0;
  padding: 0.7rem 1rem;
  border-left: 3px solid #c7a478;
  background: #f8f2e8;
  color: #4a4339;
}

.contentMain table,
.articleWrap table {
  margin: 1rem 0 1.2rem;
}

/* Horizontale Bildleiste fuer Inhaltsbereiche (z. B. Startseite) */
.contentMain .contentImagesCarousel,
.articleWrap .contentImagesCarousel {
  position: relative;
  margin: 1.25rem 0 1.5rem;
  padding: 0.55rem 0.6rem;
  border: 1px solid #dfd0bc;
  border-radius: 12px;
  background: #fbf7f0;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.55);
}

.contentMain .contentImagesViewport,
.articleWrap .contentImagesViewport {
  overflow: hidden;
}

.contentMain .contentImages,
.articleWrap .contentImages {
  --content-image-height: clamp(132px, 18vw, 176px);
  display: flex;
  align-items: stretch;
  gap: 0.75rem;
  margin: 0;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  scrollbar-color: rgba(147, 117, 79, 0.7) rgba(238, 226, 209, 0.85);
  padding: 0.1rem;
}

.contentMain .contentImages::-webkit-scrollbar,
.articleWrap .contentImages::-webkit-scrollbar {
  height: 9px;
}

.contentMain .contentImages::-webkit-scrollbar-track,
.articleWrap .contentImages::-webkit-scrollbar-track {
  background: rgba(238, 226, 209, 0.85);
  border-radius: 999px;
}

.contentMain .contentImages::-webkit-scrollbar-thumb,
.articleWrap .contentImages::-webkit-scrollbar-thumb {
  background: rgba(147, 117, 79, 0.75);
  border-radius: 999px;
}

.contentMain .contentImages a,
.articleWrap .contentImages a {
  flex: 0 0 clamp(220px, 28vw, 290px);
  height: var(--content-image-height);
  display: block;
  scroll-snap-align: start;
  border-radius: 10px;
}

.contentMain .contentImages img,
.articleWrap .contentImages img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 10px;
  border: 1px solid #dfd0bc;
  background: #f6f0e6;
  box-shadow: 0 8px 14px rgba(35, 37, 30, 0.1);
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.contentMain .contentImages img:hover,
.articleWrap .contentImages img:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 18px rgba(35, 37, 30, 0.16);
}

.contentMain .contentImagesArrow,
.articleWrap .contentImagesArrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  border: 1px solid #cfb794;
  border-radius: 999px;
  background: rgba(255, 252, 247, 0.96);
  color: #65472a;
  font-size: 1.05rem;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 4px 10px rgba(36, 33, 27, 0.16);
  z-index: 2;
}

.contentMain .contentImagesArrow:hover,
.articleWrap .contentImagesArrow:hover {
  background: #fff;
}

.contentMain .contentImagesArrowPrev,
.articleWrap .contentImagesArrowPrev {
  left: 0.2rem;
}

.contentMain .contentImagesArrowNext,
.articleWrap .contentImagesArrowNext {
  right: 0.2rem;
}

.contentMain .contentImagesCarousel:not(.is-scrollable) .contentImagesArrow,
.articleWrap .contentImagesCarousel:not(.is-scrollable) .contentImagesArrow {
  display: none;
}

@media (max-width: 560px) {
  .contentMain .contentImages,
  .articleWrap .contentImages {
    gap: 0.6rem;
  }

  .contentMain .contentImages a,
  .articleWrap .contentImages a {
    flex-basis: min(82vw, 280px);
  }
}

/* Neutralisiert alte Inline-Typografie aus Editor-Inhalten */
.contentMain span[style],
.articleWrap span[style],
.contentMain font,
.articleWrap font {
  font-family: inherit !important;
  font-size: inherit !important;
  /*font-style: inherit !important;
  font-weight: inherit !important;*/
  line-height: inherit !important;
  letter-spacing: inherit !important;
  /*color: inherit !important;*/
  text-decoration: inherit !important;
  text-transform: inherit !important;
  background: none !important;
}
