/* =========================================================
   St. Michaelis – Modul-Stylesheet (hero, spalter, karussell,
   slideshow, teams, flipbook, instagram + Musik-Design)
   Baut auf main.css auf und nutzt die --st-* Design-Tokens.
   ========================================================= */

/* ---------- Tokens an Theme koppeln (Michel-Fallbacks) ---------- */
:root{
	--stm-primary:var(--st-color-primary,#002F5D);
	--stm-accent:var(--st-color-accent,#B51F29);
	--stm-lightblue:var(--st-color-lightblue,#CAD9E0);
	--stm-midblue:var(--st-color-secondary,#034B91);
	--stm-gold:var(--st-color-gold,#D1AC57);
	--stm-gap:var(--st-space-m,2rem);
}

/* ---------- Headline-Farben generell (blau / rot) für ALLE Module ---------- */
.module__headline-1{display:block;color:var(--st-color-primary,#002F5D);}
.module__headline-2{display:block;color:var(--st-color-accent,#B51F29);}

/* ---------- Button-Variante Secondary (main.css stylt .btn/.btn--primary) ---------- */
/* 31.07.: Altlast entfernt - .btn--secondary bekam frueher zusaetzlich einen
   2px-inset-Schatten zur 1px-Kontur (wirkte "zu fett"). Styling: Buttons v2 unten. */

/* =========================================================
   Spalter 1–4
   ========================================================= */
.module--spalter .cols__row{display:grid;gap:var(--stm-gap);align-items:start;}
.module--spalter-1 .cols__row{grid-template-columns:1fr;}
.module--spalter-2 .cols__row{grid-template-columns:1fr 1fr;}
.module--spalter-3 .cols__row{grid-template-columns:repeat(3,1fr);}
.module--spalter-4 .cols__row{grid-template-columns:repeat(4,1fr);}
.module__inner.split-70-30 .cols__row{grid-template-columns:7fr 3fr;}
.module__inner.split-30-70 .cols__row{grid-template-columns:3fr 7fr;}

.spalter__head{margin-bottom:0;}
.spalter__head .module__headline{margin-bottom:0;}
.module--spalter .module__inner{grid-template-columns:1fr;row-gap:1.5rem;}
/* Bild-Text 2-Spalter: Kopf in Textspalte, Bild volle Spaltenhoehe oben-buendig */
.has-bildtext .cols__row{align-items:stretch;}
.has-bildtext .spalter__head{margin-bottom:1rem;}
.has-bildtext .col--type-image{align-self:stretch;min-height:340px;}
.has-bildtext .col--type-image .col__media{height:100%;margin:0;}
.has-bildtext .col--type-image .col__img,.has-bildtext .col--type-image img{height:100%;width:100%;object-fit:cover;display:block;}
/* Video-Facade in Spalten (YouTube/Vimeo): Poster + Play -> Embed beim Klick */
.col__media--video{position:relative;margin-bottom:var(--st-space-s,1rem);}
.col__video-facade{position:relative;display:block;width:100%;aspect-ratio:16/9;border:0;padding:0;cursor:pointer;background:var(--st-color-primary,#002F5D) 50%/cover no-repeat;overflow:hidden;}
.col__video-facade::after{content:"";position:absolute;inset:0;background:rgba(0,47,93,.18);transition:background .2s ease;}
.col__video-facade:hover::after{background:rgba(0,47,93,.04);}
.col__video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:66px;height:66px;border-radius:999px;background:rgba(255,255,255,.92);z-index:1;box-shadow:0 4px 18px rgba(0,0,0,.25);}
.col__video-play::before{content:"";position:absolute;top:50%;left:56%;transform:translate(-50%,-50%);border-style:solid;border-width:11px 0 11px 18px;border-color:transparent transparent transparent var(--st-color-primary,#002F5D);}
.col__video-embed{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;margin-bottom:var(--st-space-s,1rem);}
.col__video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
/* Video im Bild-Text-Spalter: FESTES 16:9 statt Hoehe der Textspalte (31.07.) */
.has-bildtext .col--type-video{align-self:start;}
.has-bildtext .col--type-video .col__media--video{height:auto;margin:0;}
.has-bildtext .col--type-video .col__video-facade,.has-bildtext .col--type-video .col__video-embed{aspect-ratio:16/9;height:auto;margin:0;}
.module__inner.is-intro .spalter__head .module__kicker{margin-bottom:.35em;}
.module__inner.is-intro .spalter__head{text-align:center;max-width:872px;margin-left:auto;margin-right:auto;}
.module--spalter-1 .module__inner.is-intro{max-width:872px;margin-inline:auto;}
/* Intro-Checkbox: Inhalt IMMER zentrieren - ueberschreibt jede WYSIWYG-Ausrichtung
   (inline text-align aus dem Editor) per !important (31.07.). */
.module__inner.is-intro .col__text,
.module__inner.is-intro .col__text *{text-align:center!important;}
.module__inner.is-intro .col__text p>a.btn{margin-left:.3rem;margin-right:.3rem;}
.module__inner.hl-xl .module__headline{font-size:clamp(2.4rem,4.4vw,3.6rem);}

.col__media{margin-bottom:var(--st-space-s,1rem);}
.col__media img,.col__media video{width:100%;height:auto;display:block;}
.col__subhead{margin:0 0 .5em;line-height:1.15;color:var(--st-color-primary,#002F5D);
	text-transform:uppercase;font-weight:700;}
.col__subhead--gross{font-size:clamp(1.3rem,2vw,1.6rem);}
.col__subhead--klein{font-size:1.05rem;}
.col__text{line-height:var(--st-lh-base,1.6);}
.col__cta{margin-top:var(--st-space-s,1rem);display:flex;gap:12px;flex-wrap:wrap;}

@media (max-width:900px){
	.module--spalter-2 .cols__row,.module--spalter-3 .cols__row,.module--spalter-4 .cols__row,
	.module__inner.split-70-30 .cols__row,.module__inner.split-30-70 .cols__row{grid-template-columns:1fr;}
}

/* =========================================================
   Hero-Slider
   ========================================================= */
.hero-slider{position:relative;overflow:hidden;}
/* 31.07.: FESTE Hero-Hoehen statt Browserhoehe (Figma: Homepage 717, Verteiler 500) */
.hero-slider--s{min-height:0;height:500px;}
.hero-slider--m{min-height:0;height:600px;}
.hero-slider--l{min-height:0;height:717px;}
@media(max-width:782px){ /* Figma Mobile: 600/444 */
	.hero-slider--s{height:444px;}
	.hero-slider--m{height:520px;}
	.hero-slider--l{height:600px;}
}
.hero-slider__track{position:absolute;inset:0;}
.hero-slider__slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease,transform .6s ease;}
.hero-slider__slide.is-active{opacity:1;z-index:1;}
.hero-slider:not(.is-ready) .hero-slider__slide:first-child{opacity:1;}
.hero-slider.is-single .hero-slider__slide{opacity:1;position:relative;}
.hero-slider.effect-slide .hero-slider__slide{opacity:1;}
.hero-slider .hero{height:100%;}

.hero-slider__slide.hero{position:absolute;display:flex;align-items:center;}
.hero-slider.is-single .hero-slider__slide.hero{position:relative;}
.hero__media{position:absolute;inset:0;z-index:0;}
.hero__media img,.hero__video{width:100%;height:100%;object-fit:cover;}
/* Musik V-Ausschnitt: fester Winkel -> Oberkante skaliert mit Hero-Hoehe (L/M/S) */
.is-musik .hero__media{clip-path:polygon(25% 0,75% 0,50% 100%);}
.hero-slider--m.is-musik .hero__media{clip-path:polygon(29% 0,71% 0,50% 100%);}
.hero-slider--s.is-musik .hero__media{clip-path:polygon(34% 0,66% 0,50% 100%);}
/* Michel-/Musik-Design: weisser Kasten entfaellt (31.07., ragte ins V-Dreieck) */
.hero-slider.is-musik .hero__box{background:transparent;}
.hero__box{position:relative;z-index:1;background:rgba(255,255,255,.85);padding:2.5rem;width:clamp(440px,36vw,680px);max-width:none;
	margin-left:0;}
.hero__topline{color:var(--st-color-accent,#B51F29);font-family:var(--st-font-head,inherit);text-transform:uppercase;font-weight:700;
	font-size:1.05rem;letter-spacing:0;margin:0 0 .6em;}
.hero__headline{margin:0 0 .5em;font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;line-height:.9;letter-spacing:0;
	font-size:clamp(2.5rem,5.2vw,5rem);}
.hero__text{color:var(--st-color-text,#1a1a1a);margin:0 0 1.2em;}
.hero__cta.btn{margin-top:.25rem;}

.hero-slider__nav{position:absolute;right:24px;bottom:24px;z-index:3;display:flex;gap:8px;}
.hero-slider__arrow{width:44px;height:44px;border:0;border-radius:999px;
	background:rgba(255,255,255,.9);cursor:pointer;font-size:1.1rem;line-height:1;}
.hero-slider__dots{position:absolute;left:24px;bottom:28px;z-index:3;display:flex;gap:8px;}
.hero-slider__dots button{width:10px;height:10px;border-radius:999px;border:0;background:rgba(255,255,255,.6);cursor:pointer;padding:0;}
.hero-slider__dots button[aria-current="true"]{background:#fff;}
@media(max-width:900px){ .hero__box{margin:0 var(--st-pad,20px);width:auto;max-width:none;padding:1.75rem;} }

/* =========================================================
   Vanilla-Slider (Karussell, Slideshow, Spalten-Slideshow)
   ========================================================= */
.stm-slider{position:relative;overflow:hidden;}
.stm-slider__track{position:relative;}
.stm-slider__slide{position:absolute;inset:0;opacity:0;transition:opacity .5s ease,transform .5s ease;}
.stm-slider__slide.is-active{opacity:1;position:relative;} /* aktive Folie traegt die Hoehe (29.07.) */
.stm-slider:not(.is-ready) .stm-slider__slide:first-child{position:relative;opacity:1;}
.stm-slider__slide img{width:100%;height:auto;display:block;}
.stm-slider__prev,.stm-slider__next{position:absolute;top:50%;transform:translateY(-50%);z-index:3;
	width:44px;height:44px;border:0;border-radius:999px;background:rgba(255,255,255,.9);cursor:pointer;font-size:1.1rem;}
.stm-slider__prev{left:12px;} .stm-slider__next{right:12px;}
.stm-slider__dots{position:absolute;left:0;right:0;bottom:12px;z-index:3;display:flex;gap:8px;justify-content:center;}
.stm-slider__dots button{width:10px;height:10px;border-radius:999px;border:0;background:rgba(0,0,0,.25);cursor:pointer;padding:0;}
.stm-slider__dots button[aria-current="true"]{background:var(--st-color-primary,#002F5D);}

/* Karussell (Kacheln) – Karten-Karussell */
.stm-cards-carousel{position:relative;}
.stm-cards__head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--st-space-m,2rem);margin-bottom:var(--st-space-m,2rem);flex-wrap:wrap;}
.stm-cards__heading{max-width:60ch;}
.stm-cards__heading .module__headline{margin:.2em 0 0;}
.stm-cards__controls{display:flex;align-items:center;gap:var(--st-space-s,1rem);}
.stm-cards__arrows{display:flex;gap:.5rem;}
.stm-cards__arrow{width:44px;height:44px;border-radius:999px;border:1px solid var(--st-color-primary,#002F5D);
  background:#fff;color:var(--st-color-primary,#002F5D);font-size:1.5rem;line-height:1;cursor:pointer;
  display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease;}
.stm-cards__arrow:hover{background:var(--st-color-primary,#002F5D);color:#fff;}
.stm-cards__arrow[disabled]{opacity:.35;cursor:default;}
.stm-cards__arrow[disabled]:hover{background:#fff;color:var(--st-color-primary,#002F5D);}

.stm-cards{list-style:none;margin:0;padding:0 0 .5rem;display:grid;grid-auto-flow:column;
  grid-auto-columns:minmax(260px,1fr);gap:var(--st-space-m,2rem);
  overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;
  scrollbar-width:none;-ms-overflow-style:none;}
.stm-cards::-webkit-scrollbar{display:none;}
@media(min-width:700px){ .stm-cards{grid-auto-columns:calc((100% - 3*var(--st-space-m,2rem))/4);} }
.stm-card{scroll-snap-align:start;}
.stm-card__inner{display:flex;flex-direction:column;gap:.85rem;text-decoration:none;color:inherit;}
.stm-card__media{display:block;aspect-ratio:1/1;overflow:hidden;background:var(--st-color-mist,#CAD9E0);border-radius:2px;}
.stm-card__img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;}
a.stm-card__inner:hover .stm-card__img{transform:scale(1.04);}
.stm-card__title{font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;
  letter-spacing:.04em;font-size:1.05rem;color:var(--st-color-primary,#002F5D);}

.stm-cards__dots{display:flex;gap:.5rem;justify-content:center;margin-top:var(--st-space-m,2rem);}
.stm-cards__dots button{width:9px;height:9px;border-radius:999px;border:0;background:rgba(0,47,93,.25);cursor:pointer;padding:0;}
.stm-cards__dots button[aria-current="true"]{background:var(--st-color-primary,#002F5D);}
@media(max-width:700px){ .stm-cards{grid-auto-columns:78%;} .stm-cards__arrows{display:none;} }

/* =========================================================
   Slideshow / Galerie – Raster+Lightbox, Thumbnail-Slider, Coverflow
   ========================================================= */
.stm-ss__head{margin-bottom:var(--st-space-m,2rem);}
.stm-ss__head .module__headline{margin:.2em 0 0;}
.stm-ss__caption{margin:.5rem 0 0;font-size:.88rem;line-height:1.4;color:var(--st-color-slate,#5C788E);}
.stm-ss__caption-text{color:var(--st-color-ink,#1a1a1a);}
.stm-ss__credit{font-style:italic;opacity:.85;}

/* --- Raster + Lightbox --- */
.stm-gallery-grid{display:grid;gap:var(--st-space-s,1rem);grid-template-columns:repeat(3,1fr);}
.stm-gallery-grid--2{grid-template-columns:repeat(2,1fr);}
.stm-gallery-grid--3{grid-template-columns:repeat(3,1fr);}
.stm-gallery-grid--4{grid-template-columns:repeat(4,1fr);}
@media(max-width:900px){ .stm-gallery-grid,.stm-gallery-grid--3,.stm-gallery-grid--4{grid-template-columns:repeat(2,1fr);} }
@media(max-width:520px){ .stm-gallery-grid,.stm-gallery-grid--2,.stm-gallery-grid--3,.stm-gallery-grid--4{grid-template-columns:1fr;} }
.stm-gallery__item{margin:0;}
.stm-gallery__btn{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;overflow:hidden;border-radius:2px;}
.stm-gallery__img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/3;transition:transform .4s ease;}
.stm-gallery__btn:hover .stm-gallery__img{transform:scale(1.04);}

/* Lightbox-Overlay (per JS injiziert) */
.stm-lightbox{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;
  background:rgba(0,20,40,.92);opacity:0;visibility:hidden;transition:opacity .25s ease;}
.stm-lightbox.is-open{opacity:1;visibility:visible;}
.stm-lightbox__img{max-width:88vw;max-height:78vh;object-fit:contain;display:block;box-shadow:0 10px 40px rgba(0,0,0,.4);}
.stm-lightbox__cap{position:absolute;left:0;right:0;bottom:24px;text-align:center;color:#fff;font-size:.95rem;padding:0 1rem;}
.stm-lightbox__cap .stm-ss__credit{color:rgba(255,255,255,.75);}
.stm-lightbox__btn{position:absolute;top:50%;transform:translateY(-50%);width:54px;height:54px;border:0;border-radius:999px;
  background:rgba(255,255,255,.15);color:#fff;font-size:2rem;line-height:1;cursor:pointer;transition:background .15s;}
.stm-lightbox__btn:hover{background:rgba(255,255,255,.3);}
.stm-lightbox__prev{left:2vw;} .stm-lightbox__next{right:2vw;}
.stm-lightbox__close{position:absolute;top:20px;right:24px;width:44px;height:44px;font-size:1.6rem;transform:none;}
@media(max-width:600px){ .stm-lightbox__btn{width:44px;height:44px;font-size:1.5rem;} }

/* --- Thumbnail-Slider --- */
.stm-thumbs__stage{position:relative;background:var(--st-color-mist,#CAD9E0);border-radius:2px;overflow:hidden;}
.stm-thumbs__slide{margin:0;display:none;}
.stm-thumbs__slide.is-active{display:block;}
.stm-thumbs__img{width:100%;max-height:70vh;object-fit:contain;display:block;background:#000;}
.stm-thumbs__stage .stm-ss__caption{position:absolute;left:0;right:0;bottom:0;margin:0;padding:.75rem 1rem;
  background:linear-gradient(transparent,rgba(0,20,40,.75));color:#fff;}
.stm-thumbs__stage .stm-ss__caption .stm-ss__caption-text{color:#fff;}
.stm-thumbs__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:46px;height:46px;border:0;border-radius:999px;
  background:rgba(255,255,255,.85);color:var(--st-color-primary,#002F5D);font-size:1.6rem;line-height:1;cursor:pointer;}
.stm-thumbs__arrow[data-dir="prev"]{left:12px;} .stm-thumbs__arrow[data-dir="next"]{right:12px;}
.stm-thumbs__nav{list-style:none;margin:.75rem 0 0;padding:0;display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:thin;}
.stm-thumbs__thumb{padding:0;border:2px solid transparent;background:none;cursor:pointer;border-radius:2px;overflow:hidden;flex:0 0 auto;}
.stm-thumbs__thumb img{width:88px;height:64px;object-fit:cover;display:block;}
.stm-thumbs__thumb.is-active{border-color:var(--st-color-primary,#002F5D);}

/* --- Coverflow --- */
.stm-coverflow{position:relative;display:flex;align-items:center;gap:.5rem;}
.stm-coverflow__track{list-style:none;margin:0;padding:1rem 0;display:flex;align-items:center;justify-content:center;
  gap:1rem;overflow:hidden;flex:1;min-height:0;}
.stm-coverflow__item{flex:0 0 auto;width:clamp(160px,42%,620px);opacity:.45;transform:scale(.82);
  transition:opacity .4s ease,transform .4s ease;filter:saturate(.9);}
.stm-coverflow__item figure{margin:0;}
.stm-coverflow__item.is-active{opacity:1;transform:scale(1);filter:none;}
.stm-coverflow__img{width:100%;max-height:64vh;object-fit:contain;display:block;border-radius:2px;}
.stm-coverflow__arrow{flex:0 0 auto;width:48px;height:48px;border:1px solid var(--st-color-primary,#002F5D);border-radius:999px;
  background:#fff;color:var(--st-color-primary,#002F5D);font-size:1.6rem;line-height:1;cursor:pointer;transition:background .15s,color .15s;}
.stm-coverflow__arrow:hover{background:var(--st-color-primary,#002F5D);color:#fff;}

/* =========================================================
   Teams
   ========================================================= */
.stm-team__head{margin-bottom:var(--st-space-m,2rem);}
.stm-team__head .module__headline{margin:.2em 0 0;}

/* Raster */
.stm-team-grid{display:grid;gap:var(--st-space-m,2rem);grid-template-columns:repeat(3,1fr);}
.stm-team-grid--2{grid-template-columns:repeat(2,1fr);}
.stm-team-grid--3{grid-template-columns:repeat(3,1fr);}
.stm-team-grid--4{grid-template-columns:repeat(4,1fr);}
@media(max-width:900px){ .stm-team-grid,.stm-team-grid--3,.stm-team-grid--4{grid-template-columns:repeat(2,1fr);} }
@media(max-width:560px){ .stm-team-grid,.stm-team-grid--2,.stm-team-grid--3,.stm-team-grid--4{grid-template-columns:1fr;} }

/* Personenkarte */
.stm-team-card{display:flex;flex-direction:column;height:100%;}
.stm-team-card__media{aspect-ratio:3/4;overflow:hidden;background:var(--st-color-mist,#CAD9E0);border-radius:2px;margin-bottom:1rem;}
.stm-team-card__img{width:100%;height:100%;object-fit:cover;display:block;}
.stm-team-card__body{display:flex;flex-direction:column;gap:.35rem;}
.stm-team-card__name{margin:0;font-family:var(--st-font-head,inherit);font-size:1.2rem;font-weight:700;color:var(--st-color-primary,#002F5D);}
.stm-team-card__role{margin:0 0 .35rem;font-weight:600;color:var(--st-color-accent,#B51F29);}
.stm-team-card__text{font-size:1.25rem;line-height:1.5;margin:.5rem 0 0;}
.stm-team-card__contact{margin:.25rem 0 0;font-size:.92rem;line-height:1.5;}
.stm-team-card__contact dd{margin:0;}
.stm-team-card__contact dd a{color:var(--st-color-primary,#002F5D);text-decoration:none;}
.stm-team-card__contact dd a:hover{text-decoration:underline;}
.stm-team-card__contact-label{font-weight:700;color:var(--st-color-primary,#002F5D);margin-top:.15rem;}
.stm-team-card__more{display:inline-flex;align-items:center;gap:.35em;margin-top:.6rem;font-weight:600;
  color:var(--st-color-accent,#B51F29);text-decoration:none;}
.stm-team-card__more:hover{text-decoration:underline;}

/* Musik-Design: Akzente blau statt rot */
.is-musik .stm-team-card__role,
.is-musik .stm-team-card__more{color:var(--st-color-primary,#002F5D);}

/* Karussell-Variante nutzt die stm-cards-Mechanik */
.stm-cards--team{grid-auto-columns:minmax(240px,1fr);}
@media(min-width:700px){ .stm-cards--team{grid-auto-columns:calc((100% - 2*var(--st-space-m,2rem))/3);} }
.stm-cards__controls--top{display:flex;justify-content:flex-end;margin-bottom:1rem;}

/* =========================================================
   Downloads – Datei-Karten
   ========================================================= */

/* =========================================================
   Flipbook
   ========================================================= */
.flipbook{max-width:900px;margin:0 auto;text-align:center;}
.flipbook__cover img{width:100%;height:auto;display:block;margin-bottom:var(--st-space-s,1rem);}
.flipbook__embed{position:relative;padding-top:66%;}
.flipbook__embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.flipbook__open{margin-top:var(--st-space-s,1rem);}

/* =========================================================
   Instagram / Social
   ========================================================= */
.instagram__handle{margin:0 0 var(--st-space-s,1rem);font-weight:700;color:var(--st-color-primary,#002F5D);}
.instagram__handle a{color:inherit;text-decoration:none;}
.instagram-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.instagram-item{position:relative;display:block;overflow:hidden;aspect-ratio:1/1;background:var(--st-color-bg-alt,#f2f3f5);}
.instagram-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease;}
.instagram-item:hover img{transform:scale(1.04);}
.instagram-item__cap{position:absolute;inset:auto 0 0 0;padding:8px;font-size:.8rem;background:rgba(0,47,93,.7);color:#fff;
	opacity:0;transition:.2s;}
.instagram-item:hover .instagram-item__cap{opacity:1;}
.instagram__feed-placeholder{padding:var(--st-space-l,4rem);border:1px dashed var(--st-color-border,#e2e4e8);text-align:center;color:var(--st-color-muted,#5a5a5a);}
@media(max-width:900px){ .instagram-grid{grid-template-columns:repeat(2,1fr);} }

/* =========================================================
   Musik-Design: Topline + Headline komplett Primärblau, CTA Secondary
   ========================================================= */
.is-musik .module__kicker,
.is-musik .hero__topline,
.is-musik .module__headline,
.is-musik .module__headline-1,
.is-musik .module__headline-2,
.is-musik .hero__headline,
.is-musik .hero__headline .module__headline-1,
.is-musik .hero__headline .module__headline-2,
.is-musik .col__subhead,
.is-musik .stm-hl__last{color:var(--st-color-primary,#002F5D)!important;}
.is-musik .btn--primary{background:transparent;color:var(--st-color-primary,#002F5D);box-shadow:inset 0 0 0 1px currentColor;}

/* =========================================================
   Spenden
   ========================================================= */
.spenden__purpose{font-weight:700;color:var(--st-color-primary,#002F5D);margin:0 0 1rem;}
.spenden__amounts{list-style:none;margin:0 0 1.5rem;padding:0;display:flex;gap:12px;flex-wrap:wrap;}
.spenden__amount{border:2px solid var(--st-color-primary,#002F5D);border-radius:8px;padding:.6rem 1rem;text-align:center;min-width:88px;}
.spenden__amount-value{display:block;font-weight:800;font-size:1.25rem;color:var(--st-color-primary,#002F5D);}
.spenden__amount-label{display:block;font-size:.85rem;color:var(--st-color-muted,#5a5a5a);}

/* =========================================================
   Tickets
   ========================================================= */
.tickets-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--st-space-m,2rem);margin-bottom:1.5rem;}
.ticket-card{border:1px solid var(--st-color-border,#e2e4e8);border-radius:8px;padding:1.5rem;display:flex;flex-direction:column;}
.ticket-card__title{margin:0 0 .25em;color:var(--st-color-primary,#002F5D);}
.ticket-card__price{margin:0 0 .5em;font-weight:800;font-size:1.4rem;color:var(--st-color-accent,#B51F29);}
.ticket-card__desc{margin:0 0 1rem;font-size:.95rem;line-height:1.5;flex:1;}
@media(max-width:900px){ .tickets-grid{grid-template-columns:1fr;} }

/* =========================================================
   Glockengeläut (Audio)
   ========================================================= */
.glocken{list-style:none;margin:0;padding:0;display:grid;gap:1rem;}
.glocken__item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px 20px;
	padding:1rem 1.25rem;background:var(--st-color-bg-alt,#f2f3f5);border-radius:8px;}
.glocken__title{font-weight:700;color:var(--st-color-primary,#002F5D);}
.glocken__player{width:100%;max-width:360px;grid-column:2;}
.glocken__info{grid-column:1/-1;font-size:.9rem;color:var(--st-color-muted,#5a5a5a);}
@media(max-width:640px){ .glocken__item{grid-template-columns:1fr;} .glocken__player{grid-column:1;max-width:none;} }


/* =========================================================
   Button-System (Figma) – Pill, Pfeil, Zustände, SM/2XL
   ========================================================= */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;font-family:var(--st-font-head,inherit);font-weight:500;font-size:1.25rem;line-height:1;height:60px;padding:0 2rem;border-radius:999px;border:1px solid transparent;text-decoration:none;cursor:pointer;white-space:nowrap;-webkit-appearance:none;appearance:none;transition:all .3s ease-in-out;}
.btn:hover,.btn:focus-visible,.btn:active{text-decoration:none;} /* main.css a:hover unterstreicht sonst */
.btn--sm{height:50px;font-size:1rem;font-weight:400;padding:0 1.625rem;gap:.625em;}
.btn__ico{font-size:1.1em;line-height:0;display:inline-flex;align-items:center;}
.btn__text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15;}
.btn__sub{font-weight:400;font-size:.76em;opacity:.9;}
/* 31.07. CTA-Finale: SVG-Pfeile statt Unicode-Zeichen - rendert bei ALLEN Usern
   identisch (gepunktete Ersatz-Glyphen einzelner System-Fonts adé). Das Chevron hat
   Pfeil-Groesse und wird beim Hover nur VERLAENGERT (rechts verankert). */
.btn--primary::after,.btn--secondary::after,.btn--primary-neg::after,.btn--text::after{content:"";display:inline-block;flex:0 0 auto;width:.62em;height:.95em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 15'%3E%3Cpath d='M2 1.8 8 7.5 2 13.2' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right center/auto 100%;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 15'%3E%3Cpath d='M2 1.8 8 7.5 2 13.2' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right center/auto 100%;transition:all .3s ease-in-out;}
.btn--primary:hover::after,.btn--primary:focus-visible::after,.btn--primary:active::after,
.btn--secondary:hover::after,.btn--secondary:focus-visible::after,.btn--secondary:active::after,
.btn--primary-neg:hover::after,.btn--primary-neg:focus-visible::after,.btn--primary-neg:active::after,
.btn--text:hover::after,.btn--text:focus-visible::after,.btn--text:active::after{width:1.28em;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 15'%3E%3Cpath d='M1 7.5h16.4M12 1.8 18 7.5 12 13.2' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 15'%3E%3Cpath d='M1 7.5h16.4M12 1.8 18 7.5 12 13.2' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");}
.btn--arrow-left::after{transform:scaleX(-1);}
.btn--arrow-left{flex-direction:row-reverse;}
.btn--stacked::after,.btn--sound::after,.btn--rotate::after,.btn--ics::after,.btn--spenden::after,.btn--ticket::after,.btn--noarrow::after{content:none;}
.btn--primary{background:var(--st-color-primary,#002F5D);color:#fff;}
.btn--primary:hover,.btn--primary:focus-visible{background:var(--st-color-accent,#B51F29);color:#fff;}
.btn--primary:active{background:#8F1620;color:#fff;}
.btn--primary-neg{background:#fff;color:var(--st-color-primary,#002F5D);}
.btn--primary-neg:hover,.btn--primary-neg:focus-visible{background:#fff;color:var(--st-color-accent,#B51F29);}
.btn--primary-neg:active{color:#8F1620;}
.btn--secondary{background:#fff;color:var(--st-color-primary,#002F5D);border-color:var(--st-color-primary,#002F5D);}
.btn--secondary:hover,.btn--secondary:focus-visible{color:var(--st-color-secondary,#034B91);border-color:var(--st-color-secondary,#034B91);}
.btn--secondary:active{background:var(--st-color-primary,#002F5D);color:#fff;border-color:var(--st-color-primary,#002F5D);}
.btn--text{background:none;border:0;height:auto;padding:.25em 0;color:var(--st-color-primary,#002F5D);gap:.4em;font-weight:700;}
.btn--text:hover,.btn--text:focus-visible,.btn--text:active{color:var(--st-color-secondary,#034B91);}
.btn--text.btn--neg{color:#fff;}
.btn--text.btn--neg:hover{color:var(--st-color-lightblue,#CAD9E0);}
.btn--ics{background:#fff;color:var(--st-color-primary,#002F5D);border-color:var(--st-color-primary,#002F5D);}
.btn--ics:hover,.btn--ics:focus-visible{border-color:var(--st-color-secondary,#034B91);color:var(--st-color-secondary,#034B91);}
.btn--rotate{background:var(--st-color-primary,#002F5D);color:#fff;font-size:.9rem;height:40px;padding:0 1.1rem;}
.btn--stacked{height:auto;padding:.6rem 1.6rem;}
.btn:disabled,.btn.is-disabled,.btn[aria-disabled="true"]{background:#fff!important;color:var(--st-neutral-300,#B0B0B0)!important;border-color:var(--st-neutral-300,#B0B0B0)!important;cursor:default;pointer-events:none;}
.btn--text:disabled,.btn--text.is-disabled{background:none!important;border:0!important;color:var(--st-neutral-300,#B0B0B0)!important;}
.textlink{color:var(--st-color-accent,#B51F29);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .15s ease;}
.textlink:hover,.textlink:focus-visible{border-bottom-color:currentColor;}

/* =========================================================
   Klickelemente (Figma) – Breadcrumb, Mehr-anzeigen, Navdots,
   Scroll-down, Slider-Arrows (Zustände), Paginierung
   ========================================================= */
.stm-breadcrumb{font-size:.8rem;color:var(--st-neutral-400,#888);display:flex;flex-wrap:wrap;gap:.45em;align-items:center;}
.stm-breadcrumb a{color:var(--st-neutral-400,#888);text-decoration:none;}
.stm-breadcrumb a:hover{color:var(--st-color-primary,#002F5D);}
.stm-breadcrumb__sep{color:var(--st-neutral-300,#B0B0B0);font-size:.9em;}
.stm-breadcrumb__current{color:var(--st-neutral-950,#222);font-weight:700;}
.stm-more-toggle{background:none;border:0;cursor:pointer;color:var(--st-neutral-500,#6D6D6D);font-size:.95rem;display:inline-flex;align-items:center;gap:.6em;padding:.4em 0;}
.stm-more-toggle:hover{color:var(--st-color-primary,#002F5D);}
.stm-more-toggle__ico{width:.5em;height:.5em;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);display:inline-block;margin-top:-.18em;transition:transform .2s ease;}
.stm-more-toggle[aria-expanded="true"] .stm-more-toggle__ico{transform:rotate(-135deg);margin-top:.12em;}
.stm-cards__dots button,.stm-slider__dots button,.hero-slider__dots button,.stm-dots button{width:8px;height:8px;border-radius:999px;border:0;background:var(--st-neutral-300,#B0B0B0);cursor:pointer;padding:0;transition:width .2s ease,background .2s ease;}
.stm-cards__dots button[aria-current="true"],.stm-slider__dots button[aria-current="true"],.hero-slider__dots button[aria-current="true"],.stm-dots button[aria-current="true"]{width:26px;background:var(--st-color-primary,#002F5D);}
.stm-eq{display:inline-flex;gap:14px;align-items:flex-start;}
.stm-eq__col{position:relative;display:flex;flex-direction:column;gap:7px;align-items:center;}
.stm-eq__col > span{width:6px;height:6px;border-radius:999px;background:var(--st-neutral-300,#B0B0B0);}
.stm-eq__bar{position:absolute;left:50%;transform:translateX(-50%);width:6px;border-radius:999px;background:var(--st-color-primary,#002F5D);}
.stm-scroll-down{width:40px;height:40px;border-radius:999px;border:1.5px solid currentColor;background:none;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:.85;transition:opacity .2s ease;font-size:1.05rem;line-height:0;}
.stm-scroll-down:hover{opacity:1;}
.stm-arrow{width:38px;height:38px;border-radius:999px;border:1.5px solid var(--st-color-primary,#002F5D);background:#fff;color:var(--st-color-primary,#002F5D);font-size:1.05rem;line-height:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease;}
.stm-arrow:hover{background:var(--st-color-lightblue,#CAD9E0);}
.stm-arrow:active{background:var(--st-color-primary,#002F5D);color:#fff;}
.stm-arrow:disabled,.stm-arrow[disabled],.stm-arrow.is-inactive{border-color:var(--st-neutral-300,#B0B0B0);color:var(--st-neutral-300,#B0B0B0);background:#fff;cursor:default;}
.stm-cards__arrow:hover,.stm-coverflow__arrow:hover{background:var(--st-color-lightblue,#CAD9E0);border-color:var(--st-color-primary,#002F5D);color:var(--st-color-primary,#002F5D);}
.stm-cards__arrow[disabled]{border-color:var(--st-neutral-300,#B0B0B0);color:var(--st-neutral-300,#B0B0B0);}
.stm-pagination{display:flex;align-items:center;gap:.55rem;justify-content:center;flex-wrap:wrap;}
.stm-pagination__num{min-width:1.6em;text-align:center;color:var(--st-neutral-400,#888);text-decoration:none;font-weight:600;padding:.1em .2em;}
.stm-pagination__num:hover,.stm-pagination__num:focus-visible{color:var(--st-color-primary,#002F5D);text-decoration:underline;}
.stm-pagination__num[aria-current="page"],.stm-pagination__num.is-active{color:var(--st-color-primary,#002F5D);font-weight:700;}
.stm-pagination__edge{color:var(--st-color-primary,#002F5D);text-decoration:none;font-size:1.15rem;line-height:1;padding:0 .3em;background:none;border:0;cursor:pointer;}
.stm-pagination__edge:hover{color:var(--st-color-secondary,#034B91);}
.stm-pagination__edge[disabled],.stm-pagination__edge.is-inactive{color:var(--st-neutral-300,#B0B0B0);pointer-events:none;}
.stm-pager{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;}
.stm-pager__link{display:inline-flex;align-items:center;gap:.6em;color:var(--st-color-primary,#002F5D);text-decoration:none;font-weight:600;}
.stm-pager__link:hover{color:var(--st-color-secondary,#034B91);}
.stm-pager__center{font-weight:700;}


/* ============ Teaser-Features (2026-07-23) ============ */
.col__media--map{position:relative;width:100%;min-height:340px;height:100%;}
.col__media--map iframe{display:block;width:100%;height:100%;min-height:340px;border:0;}
.has-bildtext .col--type-map{align-self:stretch;}
.has-bildtext .col--type-map .col__media--map{height:100%;}
.col__form{width:100%;}
.col__form .wpforms-container{margin:0;}
.stm-slider__caption{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;justify-content:flex-start;padding:1.25rem;}
.stm-slider__caption-box{background:rgba(255,255,255,.9);padding:1rem 1.25rem;max-width:80%;}
.stm-slider__caption-title{display:block;font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;color:var(--st-color-primary,#002F5D);letter-spacing:.03em;}
.stm-slider__caption-link{display:inline-block;margin-top:.35rem;color:var(--st-color-primary,#002F5D);font-weight:700;text-decoration:none;}
.stm-slider__caption-link::after{content:" \2192";}
.stm-slider__caption-link:hover{color:var(--st-color-accent,#B51F29);}
.col__media,.col__media--video,.col__media--cards{position:relative;}
.col__sound{position:absolute;right:1rem;bottom:1rem;z-index:3;}
.col__sound-audio{display:none;}
.is-textmore .col--type-none .col__text{position:relative;overflow:hidden;}
.is-textmore .col--type-none .col__text.is-clamped{max-height:18em;}
.is-textmore .col--type-none .col__text.is-clamped::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4em;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff);pointer-events:none;}
.col__text-toggle{display:inline-flex;align-items:center;gap:.4rem;margin-top:.75rem;background:none;border:0;padding:0;cursor:pointer;color:var(--st-color-primary,#002F5D);font-weight:700;font-family:inherit;font-size:inherit;}
.col__text-toggle::after{content:"\25BE";transition:transform .2s ease;}
.col__text-toggle[aria-expanded="true"]::after{transform:rotate(180deg);}
.col__text-toggle:hover{color:var(--st-color-accent,#B51F29);}
.teaser-grid{display:flex;flex-wrap:wrap;gap:var(--st-space-s,16px);grid-template-columns:none;}
.teaser-grid__item{--tg-gap:var(--st-space-s,16px);flex:0 0 auto;display:block;text-decoration:none;color:inherit;}
.teaser-grid .tg--full{flex-basis:100%;}
.teaser-grid .tg--half{flex-basis:calc(50% - var(--tg-gap)/2);}
.teaser-grid .tg--two_thirds{flex-basis:calc(66.666% - var(--tg-gap)/3);}
.teaser-grid .tg--one_third{flex-basis:calc(33.333% - var(--tg-gap)*2/3);}
.teaser-grid .tg--quarter{flex-basis:calc(25% - var(--tg-gap)*3/4);}
.teaser-grid__media{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--st-color-lightblue,#CAD9E0);}
.tg--full .teaser-grid__media{aspect-ratio:21/9;}
.teaser-grid__img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease;}
.teaser-grid__item:hover .teaser-grid__img{transform:scale(1.05);}
.teaser-grid__overlay{position:absolute;left:0;right:0;bottom:0;padding:1.25rem;display:flex;flex-direction:column;gap:.25rem;background:linear-gradient(to top,rgba(0,47,93,.72),rgba(0,47,93,0));}
.teaser-grid__title{font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#fff;}
.teaser-grid__cta{font-weight:700;color:#fff;}
.teaser-grid__cta::after{content:" \2192";}
.teaser-grid__item:hover .teaser-grid__cta{color:var(--st-color-accent,#B51F29);}
@media (max-width:820px){
  .teaser-grid__item{flex-basis:100% !important;}
  .teaser-grid__media,.tg--full .teaser-grid__media{aspect-ratio:16/9;}
}


/* --- Fix: Slider-Kacheln Hoehe (2026-07-23) --- */
.col__media--cards{position:relative;aspect-ratio:4/3;overflow:hidden;min-height:320px;}
.col__media--cards .stm-slider{position:absolute;inset:0;height:100%;}
.col__media--cards .stm-slider__track{height:100%;}
.col__media--cards .stm-slider__slide img{width:100%;height:100%;object-fit:cover;}
.has-bildtext .col--type-slider_cards{align-self:stretch;}
.has-bildtext .col--type-slider_cards .col__media--cards{aspect-ratio:auto;height:100%;min-height:360px;}


/* ============ Akkordeon-Modul (2026-07-23) ============ */
.module--accordion .module__headline{margin-bottom:1.5rem;}
.module--accordion .accordion__item{border-top:1px solid var(--st-neutral-300,#D1D1D1);}
.module--accordion .accordion__item:last-child{border-bottom:1px solid var(--st-neutral-300,#D1D1D1);}
.accordion__title{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.15rem 0;font-family:var(--st-font-head,inherit);font-weight:700;font-size:1.125rem;color:var(--st-color-primary,#002F5D);}
.accordion__title::-webkit-details-marker{display:none;}
.accordion__title::after{content:"";flex:0 0 auto;width:22px;height:22px;background:
  linear-gradient(var(--st-color-primary,#002F5D),var(--st-color-primary,#002F5D)) center/100% 2px no-repeat,
  linear-gradient(var(--st-color-primary,#002F5D),var(--st-color-primary,#002F5D)) center/2px 100% no-repeat;
  transition:transform .25s ease;}
.accordion__item[open] .accordion__title::after{background:
  linear-gradient(var(--st-color-primary,#002F5D),var(--st-color-primary,#002F5D)) center/100% 2px no-repeat;}
.accordion__title:hover{color:var(--st-color-accent,#B51F29);}
.accordion__title:hover::after{background:
  linear-gradient(var(--st-color-accent,#B51F29),var(--st-color-accent,#B51F29)) center/100% 2px no-repeat,
  linear-gradient(var(--st-color-accent,#B51F29),var(--st-color-accent,#B51F29)) center/2px 100% no-repeat;}
.accordion__item[open] .accordion__title:hover::after{background:
  linear-gradient(var(--st-color-accent,#B51F29),var(--st-color-accent,#B51F29)) center/100% 2px no-repeat;}
.accordion__body{padding:.25rem 0 1.5rem;max-width:70ch;}
.accordion__body p{margin:0 0 .75rem;}
.accordion__body p:last-child{margin-bottom:0;}

/* ============ Zitat-Modul (2026-07-23 v2, nach Figma) ============ */
.module--quote .module__inner.quote{max-width:872px;margin-left:auto;margin-right:auto;}
.quote__fig{margin:0;display:flex;flex-direction:column;}
.quote--has-image .quote__media{align-self:center;margin-bottom:2rem;}
.quote__img{width:260px;height:260px;border-radius:14px;object-fit:cover;display:block;}
.quote__mark{font-family:var(--st-font-head,Georgia,serif);font-weight:700;font-size:5.5rem;line-height:.6;color:var(--st-color-lightblue,#CAD9E0);display:block;height:.55em;}
.quote__text{font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;color:var(--st-color-primary,#002F5D);line-height:1.05;margin:.25rem 0 0;}
.quote--l .quote__text{font-size:clamp(2rem,4.4vw,3.25rem);}
.quote--m .quote__text{font-size:clamp(1.6rem,3.4vw,2.5rem);}
.quote--s .quote__text{font-size:clamp(1.25rem,2.6vw,1.9rem);text-transform:none;line-height:1.4;} /* 31.07.: S-Zitat brauchte mehr Zeilenabstand */
.quote__caption{margin-top:1.5rem;text-align:center;display:flex;flex-direction:column;gap:.2rem;}
.quote__author{font-weight:700;color:var(--st-color-accent,#B51F29);text-transform:uppercase;letter-spacing:.03em;}
.quote__extra{color:var(--st-color-ink,#222);opacity:.85;}
.module--quote.is-musik{background:var(--st-color-primary,#002F5D);}
/* Module MIT Hintergrundflaeche brauchen trotz global entferntem Modul-Padding
   (31.07., main.css) weiterhin vertikalen INNENabstand: */
.module.has-bg,.module.theme--dark,.module--quote.is-musik{padding-top:var(--st-space-l,4rem);padding-bottom:var(--st-space-l,4rem);}
.module--quote.is-musik .quote__text{color:#fff;}
.module--quote.is-musik .quote__mark{color:rgba(255,255,255,.4);}
.module--quote.is-musik .quote__author{color:var(--st-color-gold,#D1AC57);}
.module--quote.is-musik .quote__extra{color:rgba(255,255,255,.8);}


/* ============ Akkordeon neben Bild (2026-07-23) ============ */
.module--accordion .module__inner.has-media .accordion__grid{display:grid;gap:2.5rem;align-items:start;}
.module--accordion .acc--two_thirds .accordion__grid{grid-template-columns:2fr 1fr;}
.module--accordion .acc--half .accordion__grid{grid-template-columns:1fr 1fr;}
.accordion__media{align-self:stretch;}
.accordion__img{width:100%;height:100%;min-height:320px;object-fit:cover;display:block;border-radius:2px;}
@media (max-width:820px){
  .module--accordion .acc--two_thirds .accordion__grid,
  .module--accordion .acc--half .accordion__grid{grid-template-columns:1fr;}
  .accordion__img{min-height:220px;}
}

/* ============ Parallax v2 – ueberlappende Kacheln (2026-07-23) ============ */
.module--parallax .plx__block{display:grid;gap:0;align-items:start;position:relative;}
.module--parallax .plx__block--1{grid-template-columns:1.12fr .88fr;grid-template-rows:auto auto;}
.module--parallax .plx__block--1 .plx__media{grid-column:1;grid-row:1 / span 2;align-self:center;}
.module--parallax .plx__block--1 .plx__hlbox{grid-column:2;grid-row:1;align-self:start;margin-left:-7rem;margin-top:2.5rem;}
.module--parallax .plx__block--1 .plx__copy{grid-column:2;grid-row:2;padding-left:1.5rem;margin-top:1.25rem;}
.module--parallax .plx__block--2{grid-template-columns:.88fr 1.12fr;grid-template-rows:auto auto;margin-top:-5rem;}
.module--parallax .plx__block--2 .plx__media{grid-column:2;grid-row:1 / span 2;align-self:center;}
.module--parallax .plx__block--2 .plx__hlbox{grid-column:1;grid-row:1;justify-self:end;margin-right:-7rem;margin-top:2.5rem;}
.module--parallax .plx__block--2 .plx__copy{grid-column:1;grid-row:2;padding-right:1.5rem;justify-self:end;max-width:30rem;}
.module--parallax .plx__hlbox{position:relative;z-index:2;background:rgba(255,255,255,.85);padding:2rem 2.25rem;max-width:34rem;}
.module--parallax .plx__img{box-shadow:none;border-radius:2px;width:100%;height:auto;display:block;}
.module--parallax .plx__headline .plx__hl{display:block;}
.module--parallax .plx__copy{max-width:30rem;}
@media (max-width:820px){
  .module--parallax .plx__block--1,.module--parallax .plx__block--2{grid-template-columns:1fr;margin-top:0;}
  .module--parallax .plx__block+.plx__block{margin-top:2.5rem;}
  .module--parallax .plx__block .plx__media,
  .module--parallax .plx__block .plx__hlbox,
  .module--parallax .plx__block .plx__copy{grid-column:1;margin:0;justify-self:stretch;max-width:none;}
  .module--parallax .plx__block .plx__hlbox{margin-top:-3rem;margin-left:1rem;margin-right:1rem;}
  .module--parallax .plx__copy{padding:1.25rem 0 0;}
}

/* Parallax-Button: nur Chevron (Doppel-Pfeil vermeiden) */
.module--parallax .plx__btn::after{content:none;}


/* ============ Parallax Collage (Modul 2, 3 Bilder) 2026-07-23 ============ */
.plx--collage .plx-c{display:grid;grid-template-columns:1fr 1fr;column-gap:3rem;row-gap:0;align-items:start;}
.plx-c__item{position:relative;}
.plx-c__item--1{grid-column:1 / -1;grid-row:1;}
.plx-c__item--2{grid-column:2;grid-row:2;}
.plx-c__item--3{grid-column:1;grid-row:2;margin-top:5rem;}
.plx-c__img{display:block;width:100%;height:auto;border-radius:2px;}
.plx-c__box{position:relative;z-index:2;background:rgba(255,255,255,.88);padding:1.75rem 2rem;margin-top:-3.5rem;margin-left:-1.5rem;max-width:82%;}
.plx-c__item--1 .plx-c__box{max-width:56%;margin-left:0;}
.plx-c__box .plx__text{color:var(--st-color-ink,#222);margin:0 0 1.1rem;line-height:1.6;}
.plx-c__box .plx__actions{margin:0;}
@media (max-width:820px){
  .plx--collage .plx-c{grid-template-columns:1fr;}
  .plx-c__item--1,.plx-c__item--2,.plx-c__item--3{grid-column:1;margin-top:0;}
  .plx-c__item+.plx-c__item{margin-top:2rem;}
  .plx-c__box,.plx-c__item--1 .plx-c__box{max-width:90%;margin-left:1rem;margin-top:-2.5rem;}
}

/* ===== Karussell-Karten: hochkant + zentrierter Titel (Figma, 2026-07-23) ===== */
.module--karussell .stm-card__media{aspect-ratio:4/5;}
.module--karussell .stm-card__title{text-align:center;}

/* ===== Zitat: Text zentriert (Figma-Korrektur 2026-07-23) ===== */
.module--quote .quote__text{text-align:center;}
.module--quote .quote__mark{text-align:left;}
.module--quote .quote__img{border-radius:2px;}


/* ===== Zitat-Anführungszeichen als SVG (Figma, 2026-07-23) ===== */
.module--quote .quote__mark{display:block;width:78px;height:auto;color:var(--st-color-lightblue,#CAD9E0);margin:0 0 .75rem;text-align:left;}
.module--quote .quote__mark svg{width:78px;height:auto;fill:currentColor;display:block;}
.module--quote.is-musik .quote__mark{color:rgba(255,255,255,.45);}


/* ============ Mega-Menü Desktop (Nachtschicht 2026-07-25) ============ */
.site-header{position:relative;}
.nav-menu--mega{display:flex;gap:2.5rem;align-items:center;list-style:none;margin:0;padding:0;}
.nav-menu--mega .nav-menu__link{font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--st-color-primary,#002F5D);text-decoration:none;padding:1.35rem 0;display:inline-block;border-bottom:3px solid transparent;}
.nav-menu--mega .nav-menu__item:hover > .nav-menu__link,
.nav-menu--mega .nav-menu__item:focus-within > .nav-menu__link,
.nav-menu--mega .nav-menu__item.is-current > .nav-menu__link{border-bottom-color:var(--st-color-primary,#002F5D);} /* 31.07.: aktiver Punkt = gleicher Strich */
/* ==== Mega-Menue nach Figma (31.07., Nodes 8001:15422 + 8004:2045) ====
   Links 366px Ebene-2 | (optional) 360px Ebene-3 mit Innenschatten | Teaser-Hero,
   der sich beim Oeffnen der 3. Ebene zur Seite schiebt (left 366px -> 726px). */
.mega{position:absolute;left:0;right:0;top:100%;height:min(620px,calc(100vh - 140px));background:#fff;box-shadow:0 30px 60px rgba(0,0,0,.18);z-index:60;overflow:hidden;}
.mega[hidden]{display:none;}
.mega__inner{position:relative;height:100%;max-width:none;margin:0;padding:0;display:block;}
.mega__l2{list-style:none;margin:0;padding:48px 40px;position:absolute;left:0;top:0;bottom:0;width:366px;display:flex;flex-direction:column;gap:24px;overflow-y:auto;}
.mega__l2-item a{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:1rem;color:var(--st-color-primary,#002F5D);text-decoration:none;}
.mega__l2-item.is-active a,.mega__l2-item a:hover{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px;}
.mega__chev{flex:0 0 auto;width:10px;height:15px;font-size:0;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 15'%3E%3Cpath d='M2 1.8 8 7.5 2 13.2' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 15'%3E%3Cpath d='M2 1.8 8 7.5 2 13.2' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;}
.mega__l3{position:absolute;left:366px;top:0;bottom:0;width:360px;background:#fff;box-shadow:inset 8px 0 13px rgba(0,0,0,.05);padding:48px 40px;overflow-y:auto;opacity:0;visibility:hidden;transition:opacity .25s ease;}
.mega.has-l3 .mega__l3{opacity:1;visibility:visible;}
.mega__l3-list{list-style:none;margin:0;padding:0;display:none;flex-direction:column;gap:26px;}
.mega__l3-list.is-active{display:flex;}
.mega__l3-list a{font-size:1.25rem;line-height:1.5;font-weight:400;color:var(--st-color-ink,#222);text-decoration:none;}
.mega__l3-list a:hover{color:var(--st-color-secondary,#034B91);text-decoration:underline;text-underline-offset:5px;}
.mega__teasers{position:absolute;top:0;right:0;bottom:0;left:366px;transition:left .35s ease;overflow:hidden;} /* schiebt sich zur Seite */
.mega.has-l3 .mega__teasers{left:726px;}
.mega__teaser{display:none;position:absolute;inset:0;min-height:0;}
.mega__teaser.is-active{display:block;}
.mega__teaser-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.mega__teaser-box{position:absolute;left:0;top:42px;width:400px;min-height:347px;margin:0;max-width:none;background:rgba(255,255,255,.8);display:flex;flex-direction:column;justify-content:center;padding:44px 38px 44px 24px;z-index:2;}
.mega__teaser-hl{margin:0 0 1.5rem;font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;font-size:clamp(2.4rem,3.1vw,3.75rem);line-height:.85;}
.mega__hl1{display:block;color:var(--st-color-primary,#002F5D);}
.mega__hl2{display:block;color:var(--st-color-accent,#B51F29);}
.mega__teaser-copy{margin:0 0 2.5rem;color:var(--st-color-ink,#222);font-size:1.25rem;line-height:1.5;}
.mega__teaser-btn{white-space:nowrap;align-self:flex-start;}
@media (max-width:1000px){
  .mega{display:none !important;}
}

/* Mega-Menü Fix: Panel vollbreit (li/nav dürfen nicht positioniert sein) – nur Desktop */
@media (min-width:1001px){
  .site-nav:has(.nav-menu--mega){position:static !important;}
  .nav-menu--mega > .nav-menu__item{position:static !important;}
}


/* ============ WPForms-Styling nach Figma (2026-07-26, v2 hohe Spezifität) ============ */
body div.wpforms-container-full,body div.wpforms-container{--wpforms-field-border-color:var(--st-color-lightblue,#CAD9E0);--wpforms-field-border-radius:8px;--wpforms-field-text-color:var(--st-color-primary,#002F5D);--wpforms-button-background-color:var(--st-color-primary,#002F5D);--wpforms-button-border-radius:999px;max-width:640px;}
body div.wpforms-container-full .wpforms-form .wpforms-field{padding:9px 0;}
body div.wpforms-container-full .wpforms-form input[type=text],body div.wpforms-container-full .wpforms-form input[type=email],body div.wpforms-container-full .wpforms-form select,body div.wpforms-container-full .wpforms-form textarea{width:100%;max-width:100%;border:1px solid var(--st-color-lightblue,#CAD9E0);border-radius:8px !important;padding:.7em 1.05em;height:auto;color:var(--st-color-primary,#002F5D);background:#fff;font-family:inherit;font-size:1rem;line-height:1.4;}
body div.wpforms-container-full .wpforms-form input::placeholder,body div.wpforms-container-full .wpforms-form textarea::placeholder{color:rgba(0,47,93,.72);opacity:1;}
body div.wpforms-container-full .wpforms-form select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'><path d='M1 1l6 6 6-6' fill='none' stroke='%23002F5D' stroke-width='2'/></svg>");background-repeat:no-repeat;background-position:right 1em center;padding-right:2.6em;}
body div.wpforms-container-full .wpforms-form textarea{min-height:210px !important;}
body div.wpforms-container-full .wpforms-form .wpforms-field-label{display:none;}
body div.wpforms-container-full .wpforms-form .wpforms-field-checkbox ul{list-style:none;margin:0;padding:0;}
body div.wpforms-container-full .wpforms-form .wpforms-field-checkbox li{display:flex;align-items:flex-start;gap:.6rem;margin:.35rem 0;}
body div.wpforms-container-full .wpforms-form .wpforms-field-checkbox li input[type=checkbox]{width:20px;height:20px;accent-color:var(--st-color-primary,#002F5D);flex:0 0 auto;margin-top:2px;}
body div.wpforms-container-full .wpforms-form .wpforms-field-checkbox li label{color:var(--st-color-ink,#222);font-size:.95rem;margin:0;}
body div.wpforms-container-full .wpforms-form .wpforms-submit-container{text-align:right;padding-top:.6rem;}
body div.wpforms-container-full .wpforms-form button[type=submit]{display:inline-flex;align-items:center;gap:.6em;background:var(--st-color-primary,#002F5D) !important;color:#fff !important;border:0;border-radius:999px !important;padding:.85em 1.8em;font-weight:700;font-family:inherit;font-size:1rem;line-height:1.2;height:auto;cursor:pointer;transition:background .2s ease;}
body div.wpforms-container-full .wpforms-form button[type=submit]:after{content:"\2192";}
body div.wpforms-container-full .wpforms-form button[type=submit]:hover{background:var(--st-color-accent,#B51F29) !important;}
.module--newsletter .wpforms-container:after,.module--form .wpforms-container:after{content:"*Pflichtfelder";display:block;font-size:.8rem;color:var(--st-neutral-600,#6D6D6D);margin-top:.5rem;text-align:left;}


/* ============ Mobile Navigation – Header + Drill-Down (2026-07-26) ============ */
@media (min-width:1001px){
  .header-search{display:none;}
  .site-branding__logo--stacked{display:none;}
  .mnav{display:none;}
}
@media (max-width:1000px){
  /* --- Header nach Figma: Burger links, Logo (gestapelt) mittig, Suche rechts --- */
  .site-topbar{display:none;}
  .site-header__inner{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 14px;}
  .nav-toggle{display:flex;order:1;}
  .nav-toggle__bar{background:var(--st-color-primary,#002F5D);}
  .site-branding{order:2;flex:1;display:flex;justify-content:center;}
  .site-branding__logo--full,.site-branding__logo--mark{display:none !important;}
  .site-branding__logo--stacked{display:block;height:62px;width:auto;}
  .header-search{order:3;display:flex;align-items:center;justify-content:center;width:44px;height:44px;color:var(--st-color-primary,#002F5D);}
  body.mnav-lock{overflow:hidden;}

  /* --- Overlay unterhalb des Headers --- */
  #site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;z-index:80;box-shadow:0 30px 60px rgba(0,0,0,.18);border-top:1px solid var(--st-neutral-200,#E7E7E7);max-height:calc(100vh - 80px);overflow-y:auto;overscroll-behavior:contain;}
  #site-nav.is-open{display:block;max-height:calc(100vh - 80px);}
  #site-nav .nav-menu--mega{display:none;}

  /* --- Drill-Down --- */
  .mnav ul{list-style:none;margin:0;padding:0;}
  .mnav__panel--sub{display:none;}
  .mnav.has-sub .mnav__panel--root{display:none;}
  .mnav__panel--sub.is-active{display:block;animation:mnavIn .22s ease;}
  .mnav__row{display:flex;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1.05rem 1.4rem;background:none;border:0;border-bottom:1px solid var(--st-color-lightblue,#CAD9E0);font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:1.05rem;color:var(--st-color-primary,#002F5D);text-decoration:none;text-align:left;cursor:pointer;}
  .mnav__chev{font-size:1.5rem;line-height:1;color:var(--st-color-primary,#002F5D);}
  .mnav__back{display:flex;align-items:center;gap:.5rem;width:100%;padding:.9rem 1.4rem;background:var(--st-color-bg,#F4F4F2);border:0;border-bottom:1px solid var(--st-color-lightblue,#CAD9E0);font-family:var(--st-font-head,inherit);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:var(--st-color-primary,#002F5D);cursor:pointer;text-align:left;}
  .mnav__title{display:block;padding:1.1rem 1.4rem;border-bottom:2px solid var(--st-color-primary,#002F5D);font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;font-size:1.15rem;letter-spacing:.03em;color:var(--st-color-accent,#B51F29);text-decoration:none;}
  .mnav__l2-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--st-color-lightblue,#CAD9E0);}
  .mnav__l2-row > a{flex:1;display:block;padding:1rem 1.4rem;font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--st-color-primary,#002F5D);text-decoration:none;}
  .mnav__acc{flex:0 0 auto;width:44px;height:44px;margin-right:.6rem;background:none;border:0;cursor:pointer;position:relative;}
  .mnav__acc::after{content:"";position:absolute;inset:12px;background:
    linear-gradient(var(--st-color-primary,#002F5D),var(--st-color-primary,#002F5D)) center/100% 2px no-repeat,
    linear-gradient(var(--st-color-primary,#002F5D),var(--st-color-primary,#002F5D)) center/2px 100% no-repeat;transition:transform .2s ease;}
  .mnav li.is-open > .mnav__l2-row .mnav__acc::after{background:
    linear-gradient(var(--st-color-primary,#002F5D),var(--st-color-primary,#002F5D)) center/100% 2px no-repeat;}
  .mnav__l3{display:none;background:var(--st-color-bg,#F4F4F2);}
  .mnav li.is-open > .mnav__l3{display:block;}
  .mnav__l3 a{display:block;padding:.75rem 1.4rem .75rem 2.1rem;color:var(--st-color-primary,#002F5D);text-decoration:none;border-bottom:1px solid rgba(202,217,224,.55);}
  .mnav__meta{padding:1.1rem 1.4rem 2rem;}
  .mnav__meta a{display:block;padding:.55rem 0;color:var(--st-color-ink,#222);text-decoration:none;font-size:.95rem;}
}
@keyframes mnavIn{from{transform:translateX(24px);opacity:.4;}to{transform:none;opacity:1;}}

/* ============ Footer mobil nach Figma „7 Mob Mobile Footer" (2026-07-26) ============ */
@media (max-width:782px){
  .site-footer__cols{grid-template-columns:1fr !important;gap:0;}
  .site-footer__col{padding:22px 0;border-bottom:1px solid rgba(255,255,255,.25);}
  .site-footer__col:first-child{padding-top:0;}
  .site-footer__col--social{border-bottom:0;}
  .site-footer__bottom{display:flex;flex-direction:column;align-items:center;border-top:1px solid rgba(255,255,255,.25);margin-top:8px;}
  .site-footer__logo,.site-footer__logo--center{position:static;transform:none;background:transparent;padding:24px 0 4px;order:1;margin:0;}
  .site-footer__meta{order:2;width:100%;}
  .site-footer__meta::before{display:none;}
  .site-footer__meta-menu{flex-wrap:wrap;justify-content:center;column-gap:24px;row-gap:10px;padding:12px 0 26px;}
  .site-footer__meta-menu li{background:transparent;}
}

/* Mobile: lange Headline-Wörter umbrechen (min-content-Overflow, 2026-07-26) */
@media (max-width:1000px){
  .module__headline,.quote__text,.plx__headline{hyphens:auto;overflow-wrap:anywhere;}
  .cols__row,.cols__row>.col{min-width:0;}
}

/* Fix: Meta-Links im Mobile-Menü einrücken (Spezifität vs. .mnav ul) 2026-07-27 */
@media (max-width:1000px){ .mnav ul.mnav__meta{padding:1.1rem 1.4rem 2rem;} }


/* ============ Karussell "Aktuelles"/"Veranstaltungen" + Team-Formular (2026-07-27, Figma 8081:1051) ============ */
.nkar{display:grid;grid-template-columns:minmax(240px,.9fr) 2.1fr;gap:3rem;align-items:center;}
.nkar__intro{display:flex;flex-direction:column;gap:1.4rem;align-items:flex-start;min-width:0;}
.nkar__intro-img{max-width:65%;height:auto;align-self:flex-end;margin-bottom:-2rem;}
.nkar__headline{font-size:clamp(2.4rem,4.5vw,4.2rem);line-height:.95;margin:0;}
.nkar__cta{margin:0;}
.nkar__main{min-width:0;}
@media(min-width:700px){ .nkar .stm-cards{grid-auto-columns:calc((100% - 2*var(--st-space-m,2rem))/3);} }
.nkar .stm-card__media{aspect-ratio:auto;}
.nkar-card__inner{display:flex;flex-direction:column;gap:.3rem;text-decoration:none;height:100%;}
.nkar-card{display:flex;} .nkar-card>.nkar-card__inner{flex:1;} /* 31.07.: gleiche Kartenhoehe */
.nkar-card__media{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--st-color-lightblue,#CAD9E0);}
.nkar-card__img{width:100%;height:100%;object-fit:cover;display:block;}
.nkar-card__date{position:absolute;top:0;left:0;background:rgba(34,34,34,.85);color:#fff;font-size:.72rem;font-weight:700;padding:.3rem .6rem;letter-spacing:.04em;}
.nkar-card__badge{position:absolute;top:0;left:0;background:var(--st-color-primary,#002F5D);color:#fff;font-size:.72rem;font-weight:700;padding:.3rem .6rem;letter-spacing:.04em;text-transform:uppercase;}
.nkar-card__title,.nkar-card__when{font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;color:var(--st-color-primary,#002F5D);font-size:.92rem;line-height:1.3;margin-top:.55rem;}
.nkar-card__sub,.nkar-card__evtitle{color:var(--st-color-accent,#B51F29);font-weight:700;font-size:.9rem;line-height:1.35;}
.nkar-card__desc{color:#555;font-size:.85rem;line-height:1.4;}
.nkar-card__go{color:var(--st-color-ink,#222);font-size:.85rem;margin-top:auto;padding-top:.35rem;} /* 31.07.: immer auf einer Hoehe */
.nkar-card__inner:hover .nkar-card__go,.nkar-card__inner:hover .nkar-card__title{color:var(--st-color-accent,#B51F29);}
.nkar__topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem;}
.nkar__tabs{display:flex;gap:1.6rem;}
.nkar__tab{background:none;border:0;padding:0;font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.95rem;color:var(--st-color-primary,#002F5D);cursor:pointer;}
.nkar__tab.is-active,.nkar__tab:hover{color:var(--st-color-accent,#B51F29);}
.nkar__main[data-tab="heute"] .stm-card[data-today="0"]{display:none;}
.nkar__empty{color:#666;margin:.5rem 0 0;}
@media(max-width:900px){
  .nkar{grid-template-columns:1fr;gap:1.25rem;}
  .nkar__intro{align-items:center;text-align:center;}
  .nkar__intro-img{align-self:center;margin-bottom:0;max-width:45%;}
}
.stm-team-form{display:grid;grid-template-columns:1fr 1.3fr;gap:3rem;align-items:start;}
.stm-team-form__hint{color:#666;}
@media(max-width:820px){ .stm-team-form{grid-template-columns:1fr;gap:1.5rem;} }

/* Fix: Intro-Headline im nkar darf auch auf Desktop trennen (2026-07-27) */
.nkar__headline{hyphens:auto;overflow-wrap:anywhere;}

/* Fix: gestapeltes Logo auf Desktop sicher verstecken (stm-assets.css setzt .site-branding__logo display:block) 2026-07-27 */
@media (min-width:1001px){ .site-branding__logo.site-branding__logo--stacked{display:none;} }

/* Fix: Sound-Button verankert sich in seiner Spalte (sitzt unten rechts im Motiv, Figma) 2026-07-27 */
.col:has(.col__soundwrap){position:relative;}


/* ============ Teaser-Rework nach Figma-Abgleich (2026-07-27) ============ */
/* Teaserkacheln: eigener Modul-Wrapper, max 1440px, Link-Zeile UNTER dem Bild */
.module--teasergrid .module__inner{max-width:1440px;}
.teaser-grid{max-width:1440px;margin-left:auto;margin-right:auto;}
.teaser-grid__item{display:flex;flex-direction:column;gap:.9rem;text-decoration:none;}
.teaser-grid__media{position:relative;display:block;overflow:hidden;aspect-ratio:16/9;}
.tg--full .teaser-grid__media{aspect-ratio:32/9;}
.teaser-grid__label{display:block;text-align:center;font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.95rem;color:var(--st-color-primary,#002F5D);transition:color .15s ease;}
.teaser-grid__item:hover .teaser-grid__label{color:var(--st-color-accent,#B51F29);}
.teaser-grid__overlay{display:none;}
@media (max-width:820px){ .teaser-grid__media,.tg--full .teaser-grid__media{aspect-ratio:16/9;} }

/* Slider-Kachel (Caption-Box): blau/rot-Split + "Mehr erfahren"-Zeile */
.stm-slider__caption-box{background:#fff;padding:1rem 1.25rem;max-width:75%;}
.stm-slider__caption-title{display:block;font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;letter-spacing:.02em;font-size:1.15rem;line-height:1.1;color:var(--st-color-primary,#002F5D);}
.stm-slider__caption-title .cap-1{display:block;color:var(--st-color-primary,#002F5D);}
.stm-slider__caption-title .cap-2{display:block;color:var(--st-color-accent,#B51F29);}
.stm-slider__caption-link{display:inline-block;margin-top:.4rem;font-size:.85rem;font-weight:500;color:var(--st-color-ink,#222);text-decoration:none;}
.stm-slider__caption-link::after{content:" \203A";}
.stm-slider__caption-link:hover{color:var(--st-color-accent,#B51F29);}

/* Slider-Nav: Dots mittig + Pfeile rechts UNTER dem Bild */
.col__media--cards{margin-bottom:2.6rem;}
.col__media--cards .stm-slider__nav{position:absolute;top:100%;left:0;right:0;display:flex;align-items:center;justify-content:center;margin-top:.9rem;min-height:1.4rem;}
.stm-slider__dots{display:flex;gap:.45rem;align-items:center;}
.stm-slider__dots button{width:8px;height:8px;border-radius:999px;border:0;padding:0;background:var(--st-neutral-300,#D1D1D1);cursor:pointer;transition:all .2s ease;}
.stm-slider__dots button[aria-current="true"]{width:22px;background:var(--st-color-primary,#002F5D);}
.stm-slider__navarrows{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;gap:.9rem;}
.stm-slider__prev,.stm-slider__next{background:none;border:0;padding:0;font-size:1.3rem;line-height:1;color:var(--st-color-primary,#002F5D);cursor:pointer;}
.stm-slider__prev:disabled,.stm-slider__next:disabled{color:var(--st-neutral-300,#D1D1D1);cursor:default;}
.stm-slider__prev:hover:not(:disabled),.stm-slider__next:hover:not(:disabled){color:var(--st-color-accent,#B51F29);}

/* Meta-Zeilen (Glockengelaeut: Label blau VERSAL, Wert rot) */
.col__text .stm-meta{margin:.5rem 0 0;}
.col__text .stm-meta strong{display:block;color:var(--st-color-primary,#002F5D);text-transform:uppercase;letter-spacing:.05em;font-size:.82rem;}
.col__text .stm-meta span{color:var(--st-color-accent,#B51F29);font-weight:700;font-size:.9rem;line-height:1.4;}

/* Meta-Zeilen: Wert-Text rot auch ohne span (TinyMCE strippt spans) 2026-07-27 */
.col__text .stm-meta{color:var(--st-color-accent,#B51F29);font-weight:700;font-size:.9rem;line-height:1.45;}

/* is-intro Bild-Text: Kopf zentriert, Spaltentext bleibt linksbuendig (Glockengelaeut) 2026-07-27 */
.module--spalter .is-intro .col .col__text{text-align:left;}

/* Teaserkacheln: Link-Balken halbtransparent unten AUF dem Bild (Figma-Detail) 2026-07-27 */
.teaser-grid__item{gap:0;}
.teaser-grid__bar{position:absolute;left:0;right:0;bottom:0;padding:.95rem 1rem;background:rgba(255,255,255,.85);text-align:center;font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.95rem;color:var(--st-color-primary,#002F5D);transition:color .15s ease;}
.teaser-grid__item:hover .teaser-grid__bar{color:var(--st-color-accent,#B51F29);}


/* ============ Karussells dynamisiert: Anschnitt + Dots + Pfeile (Figma, 2026-07-27) ============ */
/* Angeschnittener Eintrag: News/Events ~2,4 Karten, generisches Karussell ~4,3 Karten je View */
@media(min-width:700px){
  .nkar .stm-cards{grid-auto-columns:calc((100% - var(--nkarbleed,0px) - 2*var(--st-space-m,2rem))/2.4);}
  .module--karussell .stm-cards{grid-auto-columns:calc((100% - 4*var(--st-space-m,2rem))/4.3);}
}
/* Dots: aktiv = blaue Pille */
.stm-cards__dots button{width:8px;height:8px;background:var(--st-neutral-300,#D1D1D1);transition:width .2s ease,background .2s ease;}
.stm-cards__dots button[aria-current="true"]{width:22px;background:var(--st-color-primary,#002F5D);}

/* News-Feinschliff (31.07., Kundenticket module-11): schmalere Gaps, Titel lh 1.1,
   kompakter Datums-Badge, Hover nur "Mehr erfahren", Anschnitt AUSSERHALB des Satzspiegels */
.stm-cards--news{gap:1.5rem;}
.nkar-card__title{line-height:1.1;}
.nkar-card__date,.nkar-card__badge{font-size:.75rem;line-height:1;padding:5px 8px;}
.nkar-card__inner:hover,.nkar-card__inner:hover span{text-decoration:none;}
.nkar-card__inner:hover .nkar-card__go{text-decoration:underline;}
.module--newsblog,.module--events{overflow-x:clip;} /* Bleed ohne Seiten-Scrollbalken */

/* ==== Code-Modul: Embeds/iframes responsiv 16:9 (31.07., Webcam-Ticket) ====
   Wie die Live-Seite (padding-bottom 56.25%-Hack), nur modern per aspect-ratio.
   width/height-Attribute des eingefuegten iframes werden ueberschrieben; eine
   feste Hoehe per Inline-style="height:..px" gewinnt weiterhin (bewusst). */
.module--code iframe{display:block;width:100%;aspect-ratio:16/9;height:auto;border:0;}

.stm-hn__customico{width:30px;height:30px;object-fit:contain;max-width:none;display:block;} /* Quick-Navi: getauschte Icons */

/* ==== Breadcrumbs (31.07., Figma Seite "Layout") ==== */
.stm-bc{margin:1.5rem 0 1rem;}
.stm-bc__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;}
.stm-bc__item{display:inline-flex;align-items:center;font-size:.75rem;font-weight:500;line-height:1.5;letter-spacing:.0125em;color:var(--st-neutral-300,#B0B0B0);}
.stm-bc__item.is-current{color:var(--st-neutral-400,#888888);}
.stm-bc__link{color:inherit;text-decoration:none;}
.stm-bc__link:hover{color:var(--st-neutral-400,#888888);text-decoration:none;}
/* Nach einem Hero: Breadcrumb DIREKT an die Hero-Kante (fix 40px, unabhaengig vom Spacer);
   der "Abstand unten" des Heros wirkt erst NACH dem Breadcrumb (Kundenregel 31.07.).
   Margin-Collapse-Mathe: Ziel 40px = max(HeroSpacer, mt) bzw. HeroSpacer + negatives mt. */
.module--hero + .stm-bc{margin-top:-10px;margin-bottom:50px;} /* Default-Spacer 50 */
.module--hero.spacer--0 + .stm-bc{margin-top:40px;margin-bottom:0;}
.module--hero.spacer--25 + .stm-bc{margin-top:40px;margin-bottom:25px;}
.module--hero.spacer--50 + .stm-bc{margin-top:-10px;margin-bottom:50px;}
.module--hero.spacer--75 + .stm-bc{margin-top:-35px;margin-bottom:75px;}
.module--hero.spacer--100 + .stm-bc{margin-top:-60px;margin-bottom:100px;}
.module--hero.spacer--150 + .stm-bc{margin-top:-110px;margin-bottom:150px;}
.stm-bc__item:not(:last-child)::after{content:"";width:20px;height:20px;flex:0 0 auto;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 15'%3E%3Cpath d='M2 1.8 8 7.5 2 13.2' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/auto 9px;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 15'%3E%3Cpath d='M2 1.8 8 7.5 2 13.2' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/auto 9px;}

.nnews__main.stm-cards-carousel,.nkar__main{--nkarbleed:calc(var(--st-gutter,60px) + max(0px,(100vw - 1320px)/2));margin-right:calc(-1*var(--nkarbleed));}

/* Pfeile: schlicht, blau, disabled grau (statt Kreis-Buttons) */
.nkar .stm-cards__arrows,.module--karussell .stm-cards__arrows{gap:1rem;}
.nkar .stm-cards__arrow,.module--karussell .stm-cards__arrow{width:auto;height:auto;border:0;border-radius:0;background:none;font-size:1.5rem;line-height:1;color:var(--st-color-primary,#002F5D);padding:.15rem .2rem;}
.nkar .stm-cards__arrow:hover,.module--karussell .stm-cards__arrow:hover{background:none;color:var(--st-color-accent,#B51F29);}
.nkar .stm-cards__arrow[disabled],.module--karussell .stm-cards__arrow[disabled]{opacity:1;color:var(--st-neutral-300,#D1D1D1);}
.nkar .stm-cards__arrow[disabled]:hover,.module--karussell .stm-cards__arrow[disabled]:hover{background:none;color:var(--st-neutral-300,#D1D1D1);}
/* Badge-Farben nach Kategorie (Figma: Gottesdienste rot, Musik blau, Vortrag gold) */
.nkar-card__badge{background:var(--st-color-primary,#002F5D);}
.nkar-card__badge.badge--gottesdienste{background:var(--st-color-accent,#B51F29);}
.nkar-card__badge.badge--musik{background:var(--st-color-primary,#002F5D);}
.nkar-card__badge.badge--vortrag{background:var(--st-color-gold,#D1AC57);}


/* ============ Teams-Rework nach Figma (2026-07-27) ============ */
/* Karte: Foto quadratisch + Credit-Overlay, Name VERSAL blau, Funktion rot (Musik: blau) */
.stm-team-card__media{position:relative;overflow:hidden;aspect-ratio:424/280;margin-bottom:1.25rem;}
.stm-cards--team .stm-team-card__media{aspect-ratio:312/280;}
.stm-team-grid--minimal .stm-team-card__media{aspect-ratio:424/380;}
.stm-team-card__body{gap:0;}
.stm-team-card__img{width:100%;height:100%;object-fit:cover;display:block;}
.stm-team-card__credit{position:absolute;left:0;bottom:0;background:rgba(34,34,34,.7);color:#fff;font-size:.62rem;padding:.2rem .45rem;letter-spacing:.02em;}
.stm-team-card__name{font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;letter-spacing:.02em;font-size:1.25rem;line-height:1.1;color:var(--st-color-primary,#002F5D);margin:0 0 .875rem;}
.stm-team-card__role{color:var(--st-color-accent,#B51F29);font-weight:500;font-size:1.25rem;line-height:1.3;margin:0;}
.is-musik .stm-team-card__role{color:var(--st-color-primary,#002F5D);}
/* Kontaktblock */
.stm-team-card__contact{margin:1.75rem 0 0;}
.stm-team-card__contact-head{font-family:var(--st-font-head,inherit);font-weight:700;color:var(--st-color-primary,#002F5D);margin:0 0 .75rem;font-size:1.25rem;}
.stm-team-card__contact-line{margin:0 0 .75rem;font-size:1.25rem;color:var(--st-color-ink,#222);line-height:1.5;}
.stm-team-card__contact-line a{color:inherit;text-decoration:none;}
.stm-team-card__iconlink{margin:0 0 .75rem;font-size:1.25rem;}
.stm-team-card__iconlink a{display:inline-flex;align-items:center;gap:.375rem;color:var(--st-color-accent,#B51F29);text-decoration:none;font-weight:400;}
.stm-team-card__iconlink a:hover{text-decoration:underline;}
.stm-team-card__iconlink .stm-ic{display:inline-flex;width:20px;height:20px;color:var(--st-color-accent,#B51F29);}
.stm-team-card__iconlink .stm-ic svg{width:20px;height:20px;}
.stm-team-card__more{font-size:1rem;font-weight:500;color:var(--st-color-ink,#222);text-decoration:none;margin-top:1.75rem;}
.stm-cards--team .stm-team-card__more{margin-top:1rem;}
.stm-team-card__more:hover{color:var(--st-color-accent,#B51F29);}
/* Raster minimal: zentrierte Namenszeile */
.stm-team-grid--minimal .stm-team-card--minimal{text-align:center;}
.stm-team-card__caption{margin:1rem 0 0;font-family:var(--st-font-head,inherit);font-weight:700;color:var(--st-color-primary,#002F5D);font-size:1.25rem;}
/* Team-Karussell: Anschnitt wie Figma (~4,3 Karten) */
@media(min-width:700px){ .stm-cards--team{grid-auto-columns:calc((100% - 4*var(--st-space-m,2rem))/4.3);} }
.stm-team-carousel .stm-cards__arrows{gap:1rem;}
.stm-team-carousel .stm-cards__arrow{width:auto;height:auto;border:0;border-radius:0;background:none;font-size:1.5rem;line-height:1;color:var(--st-color-primary,#002F5D);padding:.15rem .2rem;}
.stm-team-carousel .stm-cards__arrow:hover{background:none;color:var(--st-color-accent,#B51F29);}
.stm-team-carousel .stm-cards__arrow[disabled]{opacity:1;color:var(--st-neutral-300,#D1D1D1);}

/* ============================================================
   Flipbook 2.0 (27.07.) – PDF.js + StPageFlip, Controls nach Figma
   ============================================================ */
.stm-flip__dl-top{margin:0 0 1.75rem;}
.stm-flip__dl-top a{color:var(--st-color-primary,#002F5D);font-weight:700;text-decoration:none;}
.stm-flip__dl-top a:hover{color:var(--st-color-accent,#B51F29);}
.stm-flip{position:relative;max-width:1160px;margin:0 auto;outline:none;}
.stm-flip__scroll{overflow:hidden;}
.stm-flip__scroll.is-zoomed{overflow:auto;max-height:80vh;}
.stm-flip__stagewrap{position:relative;padding:1.5rem 4rem 2rem;}
.stm-flip__book{margin:0 auto;transition:transform .25s ease;}
.stm-flip__book .stf__parent{margin:0 auto;}
.stm-flip__book img{box-shadow:0 10px 30px rgba(0,0,0,.18);}
.stm-flip__status{text-align:center;color:var(--st-neutral-500,#767676);padding:3rem 0;}
.stm-flip.is-ready .stm-flip__status{display:none;}

/* Kreis-Pfeile links/rechts */
.stm-flip__arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;padding:0;border-radius:50%;border:2px solid var(--st-color-primary,#002F5D);background:#fff;color:var(--st-color-primary,#002F5D);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:5;transition:color .15s,border-color .15s,opacity .15s;}
.stm-flip__arrow svg{width:20px;height:20px;max-width:none;flex:0 0 auto;}
.stm-flip__arrow:hover{color:var(--st-color-accent,#B51F29);border-color:var(--st-color-accent,#B51F29);}
.stm-flip__arrow[disabled]{opacity:.35;cursor:default;pointer-events:none;}
.stm-flip__arrow--prev{left:0;}
.stm-flip__arrow--next{right:0;}

/* Bedienleiste unten */
.stm-flip__bar{display:flex;align-items:center;gap:1.5rem;margin-top:1rem;padding:0 .25rem;}
.stm-flip__tools{display:flex;align-items:center;gap:.9rem;}
.stm-flip__iconbtn{background:none;border:0;padding:0;width:26px;height:26px;color:var(--st-color-primary,#002F5D);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;}
.stm-flip__iconbtn svg{width:22px;height:22px;max-width:none;flex:0 0 auto;}
.stm-flip__iconbtn:hover{color:var(--st-color-accent,#B51F29);}

/* Fortschrittsbalken */
.stm-flip__range{flex:1;appearance:none;-webkit-appearance:none;height:4px;border-radius:2px;background:var(--st-neutral-200,#E3E8EE);cursor:pointer;}
.stm-flip__range::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--st-color-primary,#002F5D);border:0;}
.stm-flip__range::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--st-color-primary,#002F5D);border:0;}
.stm-flip__range::-moz-range-progress{background:var(--st-color-primary,#002F5D);height:4px;border-radius:2px;}

/* Thumbnail-Overlay */
.stm-flip__thumbs{position:absolute;inset:0;z-index:10;background:rgba(255,255,255,.96);overflow:auto;padding:2rem;}
.stm-flip__thumbgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem;}
.stm-flip__thumb{position:relative;border:1px solid var(--st-neutral-200,#E3E8EE);background:#fff;padding:0;cursor:pointer;}
.stm-flip__thumb img{display:block;width:100%;height:auto;}
.stm-flip__thumb span{position:absolute;right:.35rem;bottom:.35rem;font-size:.75rem;color:#fff;background:var(--st-color-primary,#002F5D);padding:.05rem .4rem;border-radius:2px;}
.stm-flip__thumb:hover{border-color:var(--st-color-primary,#002F5D);}

/* Vollbild */
.stm-flip.is-fullscreen{background:#fff;padding:2rem;display:flex;flex-direction:column;justify-content:center;}
.stm-flip.is-fullscreen .stm-flip__stagewrap{padding-top:0;}

/* Mobil */
@media (max-width:767px){
	.stm-flip__stagewrap{padding:1rem 2.4rem 1.5rem;}
	.stm-flip__arrow{width:36px;height:36px;}
	.stm-flip__bar{gap:1rem;}
}

/* ============================================================
   News-Rework (27.07.) – „News aus dem Michel" / „Neuigkeiten"
   ============================================================ */
/* Karte: Datum-Badge blau, Bild-Credit-Overlay, fetter Mehr-erfahren-Link */
.nkar-card__date{background:var(--st-color-primary,#002F5D);}
.nkar-card__credit{position:absolute;left:0;bottom:0;background:rgba(34,34,34,.55);color:#fff;font-size:.62rem;padding:.15rem .45rem;line-height:1.2;}
.nkar-card__go{font-weight:700;}

/* Karussell-Kopf: Topline/Headline links · Alle-News-Button + Pfeile rechts */
.nnews__head{display:flex;justify-content:space-between;align-items:center;gap:2rem;margin-bottom:2.5rem;}
.nnews__headings{min-width:0;}
.nnews__headline{margin:0;}
.nnews__actions{display:flex;align-items:center;gap:1.75rem;flex:0 0 auto;}
.nnews__main{min-width:0;position:relative;}
.nnews__main .stm-cards__controls--top{position:absolute;top:-3.4rem;right:6.5rem;margin:0;}
.stm-nnews .stm-cards__arrows{gap:1.1rem;}
.stm-nnews .stm-cards__arrow{width:auto;height:auto;border:0;border-radius:0;background:none;font-size:1.4rem;line-height:1;color:var(--st-color-primary,#002F5D);padding:.15rem .2rem;}
.stm-nnews .stm-cards__arrow:hover{background:none;color:var(--st-color-accent,#B51F29);}
.stm-nnews .stm-cards__arrow[disabled]{opacity:1;color:var(--st-color-lightblue,#CAD9E0);}
.stm-nnews .stm-cards__arrow[disabled]:hover{background:none;color:var(--st-color-lightblue,#CAD9E0);}
@media(min-width:700px){ .stm-nnews .stm-cards{grid-auto-columns:calc((100% - var(--nkarbleed,0px) - 3*1.5rem)/4);} }
@media(max-width:900px){
	.nnews__head{flex-direction:column;align-items:flex-start;gap:1rem;}
	.nnews__main .stm-cards__controls--top{position:static;display:flex;justify-content:flex-end;margin-bottom:.5rem;}
	.stm-nnews .stm-cards{grid-auto-columns:calc((100% - var(--nkarbleed,0px) - 1.4*1.5rem)/2.4);}
}
@media(max-width:600px){ .stm-nnews .stm-cards{grid-auto-columns:calc((100% - var(--nkarbleed,0px) - .3*1.5rem)/1.3);} }

/* Raster „Neuigkeiten" – 4-spaltig, gleiche Karten */
.nnews__gridhead{margin-bottom:2.5rem;}
.nnews-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.25rem 1.5rem;}
.nnews-grid__item{min-width:0;}
@media(max-width:1000px){ .nnews-grid{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:560px){ .nnews-grid{grid-template-columns:1fr;} }

/* Google Map – Dummy-Kartenbild nach Figma (27.07.) */
.stm-map{margin:0;max-width:1320px;}
.stm-map__img{display:block;width:100%;height:auto;}

/* 404-Seite „Heiliger Bimbam" (27.07.) */
.stm-404{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:center;padding-top:2.5rem;padding-bottom:3.5rem;}
.stm-404__text{min-width:0;}
.stm-404__media{display:flex;justify-content:center;}
.stm-404__media img{width:auto;max-width:100%;max-height:520px;}
.stm-404__search{display:flex;align-items:center;gap:1.1rem;max-width:340px;margin-top:1.5rem;}
.stm-404__search input{flex:1;min-width:0;border:0;border-bottom:1px solid var(--st-neutral-300,#D1D1D1);border-radius:0;padding:.45rem 0;font:inherit;color:var(--st-color-ink,#222);background:none;outline:none;appearance:none;-webkit-appearance:none;}
.stm-404__search input::placeholder{color:var(--st-neutral-500,#767676);}
.stm-404__search input:focus{border-bottom-color:var(--st-color-primary,#002F5D);}
.stm-404__search button{background:none;border:0;padding:.2rem;color:var(--st-color-ink,#222);cursor:pointer;display:inline-flex;}
.stm-404__search button svg{max-width:none;flex:0 0 auto;}
.stm-404__search button:hover{color:var(--st-color-accent,#B51F29);}
@media(max-width:800px){
	.stm-404{grid-template-columns:1fr;gap:2rem;}
	.stm-404__media{order:-1;}
	.stm-404__media img{max-height:300px;}
}

/* ============================================================
   Slideshow-Rework (27.07.) – 5 Galerien nach Figma
   ============================================================ */
/* Kopf: Headline links, Pfeile rechts unten (Galerie 1) */
.stm-ss__head{margin-bottom:1.25rem;}
.stm-ss__head--arrows{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;}
.stm-ss__copy{margin-top:.5rem;max-width:70ch;}
.stm-ss__arrows{display:flex;gap:1.1rem;flex:0 0 auto;}
.stm-ss__arrow{background:none;border:0;padding:.15rem .2rem;color:var(--st-color-primary,#002F5D);cursor:pointer;display:inline-flex;}
.stm-ss__arrow svg{max-width:none;flex:0 0 auto;}
.stm-ss__arrow:hover{color:var(--st-color-accent,#B51F29);}
.stm-ss__arrow[disabled]{color:var(--st-color-lightblue,#CAD9E0);cursor:default;}

/* Punkte: aktiv = blaue Pille */
.stm-ss__dots{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:1.1rem;}
.stm-ss__dot{width:8px;height:8px;border-radius:4px;border:0;padding:0;background:var(--st-neutral-300,#D1D1D1);cursor:pointer;transition:all .2s;}
.stm-ss__dot.is-active{width:22px;background:var(--st-color-primary,#002F5D);}

/* Bild-Credit-Overlay (unten links auf dem Bild) */
.stm-ss__imgcredit{position:absolute;left:0;bottom:0;background:rgba(34,34,34,.55);color:#fff;font-size:.62rem;padding:.15rem .45rem;line-height:1.2;margin:0;}

/* Zweifarbige Labels (VERSAL, „|“ = Zeile 2 rot) */
.stm-ss__l1{display:block;color:var(--st-color-primary,#002F5D);}
.stm-ss__l2{display:block;color:var(--st-color-accent,#B51F29);}

/* ---------- Galerie 1: Hauptbild + Thumbs/Texte ---------- */
.stm-g1__stage{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--st-color-lightblue,#CAD9E0);}
.stm-g1__slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .35s;}
/* 31.07.: Bilduebergang "Bewegen" (Moduleinstellung) */
.stm-g1[data-transition="slide"] .stm-g1__slide{transition:opacity .15s;}
.stm-g1__slide.is-slide-r{animation:stmG1SlideR .35s ease both;}
.stm-g1__slide.is-slide-l{animation:stmG1SlideL .35s ease both;}
@keyframes stmG1SlideR{from{transform:translateX(60px);}to{transform:translateX(0);}}
@keyframes stmG1SlideL{from{transform:translateX(-60px);}to{transform:translateX(0);}}
.stm-g1__slide.is-active{opacity:1;}
.stm-g1__img{width:100%;height:100%;object-fit:cover;display:block;}
.stm-g1__thumbnav{list-style:none;display:flex;gap:6px;margin:6px 0 0;padding:0;}
.stm-g1__thumbnav li{flex:1;min-width:0;}
.stm-g1__thumb{display:block;width:100%;aspect-ratio:16/10;overflow:hidden;border:0;padding:0;cursor:pointer;opacity:.85;background:none;}
.stm-g1__thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.stm-g1__thumb:hover,.stm-g1__thumb.is-active{opacity:1;outline:2px solid var(--st-color-primary,#002F5D);outline-offset:-2px;}
.stm-g1__textnav{list-style:none;display:flex;justify-content:flex-start;flex-wrap:wrap;gap:.5rem 2rem;margin:1.25rem 0 0;padding:0 .25rem;max-height:5.5rem;overflow-y:auto;} /* 31.07.: nicht buendig, scrollt bei vielen Texten */
.stm-g1__navtext{background:none;border:0;padding:0;cursor:pointer;font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:.85rem;color:var(--st-color-primary,#002F5D);}
.stm-g1__navtext:hover,.stm-g1__navtext.is-active{color:var(--st-color-accent,#B51F29);}

/* ---------- Galerie 2: Karten-Raster ---------- */
.stm-g2{display:grid;gap:2.25rem 1.75rem;}
.stm-g2--2{grid-template-columns:repeat(2,minmax(0,1fr));}
.stm-g2--3{grid-template-columns:repeat(3,minmax(0,1fr));}
.stm-g2--4{grid-template-columns:repeat(4,minmax(0,1fr));}
.stm-g2__open{display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;background:none;border:0;padding:0;cursor:pointer;text-align:left;width:100%;height:100%;font:inherit;}
.stm-g2__card{display:flex;} .stm-g2__card>.stm-g2__open{flex:1;}
.stm-g2__media{display:block;width:100%;aspect-ratio:4/3;overflow:hidden;background:var(--st-color-lightblue,#CAD9E0);}
.stm-g2__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s;}
.stm-g2__open:hover .stm-g2__media img{transform:scale(1.04);}
.stm-g2__title{font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;font-size:1.75rem;line-height:1.1;margin-top:1rem;color:var(--st-color-primary,#002F5D);}
.stm-g2__title .stm-ss__l1,.stm-g2__title .stm-ss__l2{display:inline;}
.stm-g2__teaser{color:var(--st-color-ink,#222);font-size:1.25rem;line-height:1.5;}
.stm-g2__more{color:var(--st-color-ink,#222);font-size:1rem;font-weight:500;margin-top:auto;padding-top:.6rem;} /* 31.07.: immer auf einer Hoehe, Figma 16/Medium */
.stm-g2__open:hover .stm-g2__more{color:var(--st-color-accent,#B51F29);}

/* ---------- Galerie 3: justified Raster ---------- */
/* 31.07.: gleichmaessiges Raster (Kundenwunsch: kein Flattern unten/rechts) */
.stm-g3{display:grid;gap:14px;grid-template-columns:repeat(var(--g3cols,3),minmax(0,1fr));}
.stm-g3__item{margin:0;}
.stm-g3__btn{position:relative;display:block;width:100%;border:0;padding:0;background:none;cursor:pointer;overflow:hidden;}
.stm-g3__img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block;}
.stm-g3__item.no-nums .stm-g3__file{display:none;}
.stm-g3__file{position:absolute;top:.4rem;right:.55rem;color:#fff;font-size:.7rem;text-shadow:0 1px 3px rgba(0,0,0,.55);opacity:0;transition:opacity .15s;}
.stm-g3__btn:hover .stm-g3__file{opacity:1;}
.stm-g3__copyright{position:absolute;left:0;bottom:0;background:rgba(34,34,34,.55);color:#fff;font-size:.62rem;padding:.15rem .45rem;}

/* ---------- Overlays (Galerie 2 + 3) ---------- */
body.stm-ov-open{overflow:hidden;}
.stm-ov{position:fixed;inset:0;z-index:9000;display:none;background:rgba(255,255,255,.88);}
.stm-ov.is-open{display:block;}
.stm-ov__frame{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:3.5rem 5rem;}
/* 31.07.: Box-Wrapper - Close/Pfeile/Dots sitzen AN der Lightbox, nicht am Browser-Rand */
.stm-ov__box{position:relative;width:min(880px,92vw);}
.stm-ov__card{position:relative;background:#fff;box-shadow:0 18px 60px rgba(0,0,0,.25);width:100%;max-height:82vh;overflow:auto;}
.stm-ov__close{position:absolute;top:-2.6rem;right:0;z-index:3;background:none;border:0;padding:.3rem;color:var(--st-color-ink,#222);cursor:pointer;display:inline-flex;}
.stm-ov__close svg{max-width:none;}
.stm-ov__close:hover{color:var(--st-color-accent,#B51F29);}
.stm-ov__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:42px;height:42px;min-width:42px;padding:0;box-sizing:border-box;aspect-ratio:1;border-radius:50%;border:1px solid var(--st-neutral-300,#D1D1D1);background:#fff;color:var(--st-color-primary,#002F5D);cursor:pointer;display:flex;align-items:center;justify-content:center;}
.stm-ov__arrow svg{max-width:none;flex:0 0 auto;}
.stm-ov__arrow:hover{border-color:var(--st-color-accent,#B51F29);color:var(--st-color-accent,#B51F29);}
.stm-ov__arrow--prev{left:-56px;}
.stm-ov__arrow--next{right:-56px;}
@media(max-width:1260px){ .stm-ov__arrow--prev{left:-14px;} .stm-ov__arrow--next{right:-14px;} }
.stm-ov__dots{position:absolute;left:0;right:0;top:100%;padding-top:1rem;margin:0;}

/* Overlay Galerie 2: Text-Modal */
.stm-ov--g2 .stm-ov__box{width:min(1092px,92vw);}
.stm-ov--g2 .stm-ov__card{padding:2.2rem 2.25rem 2.5rem;}
.stm-ov__g2top{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,6fr);gap:2rem;align-items:stretch;}
.stm-ov__g2head{display:flex;flex-direction:column;justify-content:center;} /* 31.07.: Headline+Subline vertikal zentriert neben dem Bild */
.stm-ov__g2head .stm-ss-intro{margin:0;color:var(--st-color-primary,#002F5D);font-weight:500;font-size:1.25rem;line-height:1.5;}
.stm-ov__g2title .stm-ss__lastline{color:var(--st-color-accent,#B51F29);} /* Standard: letzte Zeile rot */
.stm-ov__g2media{margin:0;}
.stm-ov__g2media img{width:100%;height:auto;display:block;}
.stm-ov__g2caption{color:var(--st-neutral-500,#6D6D6D);font-size:1rem;line-height:1.25;margin-top:.6rem;}
.stm-ov__g2title{font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;font-size:clamp(2rem,4.2vw,3.75rem);line-height:.9;margin:0 0 1rem;hyphens:auto;overflow-wrap:anywhere;color:var(--st-color-primary,#002F5D);}
.stm-ov__g2intro{color:var(--st-color-primary,#002F5D);font-weight:500;font-size:1.25rem;line-height:1.5;}
.stm-ov__g2body{margin-top:1.5rem;font-size:1.25rem;line-height:1.5;color:var(--st-color-ink,#222);}
.stm-ov__g2body p{margin:0 0 .9rem;}
.stm-ov__g2body.is-collapsed{max-height:11.5rem;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,transparent);mask-image:linear-gradient(#000 70%,transparent);}
.stm-ov__g2moretoggle{display:block;margin:0.6rem auto 0;background:none;border:0;color:var(--st-neutral-400,#888);font-size:1.25rem;font-weight:400;cursor:pointer;}
.stm-ov__g2moretoggle:hover{color:var(--st-color-accent,#B51F29);}
.stm-ov__g2chev{display:inline-block;width:.95em;height:.62em;vertical-align:middle;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 10'%3E%3Cpath d='M1.8 2 7.5 8 13.2 2' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 10'%3E%3Cpath d='M1.8 2 7.5 8 13.2 2' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/contain;transition:transform .2s ease;} /* Pfeil nach Figma-Geometrie statt Unicode */
.stm-ov__g2moretoggle.is-open .stm-ov__g2chev{transform:rotate(180deg);}
.stm-ov__g2link{margin-top:1rem;}
.stm-ov__g2link a{color:var(--st-color-ink,#222);font-weight:700;font-size:.85rem;text-decoration:none;}
.stm-ov__g2link a:hover{color:var(--st-color-accent,#B51F29);}

/* Overlay Galerie 3: Lightbox mit Text-Panel */
.stm-ov--g3 .stm-ov__box{width:min(1096px,92vw);}
.stm-ov--g3 .stm-ov__card{max-width:none;padding:0;overflow:visible;}
/* 31.07.: feste Box (Hoehe+Breite konstant), Panel liegt ALS OVERLAY ueber dem Bild */
.stm-ov__g3wrap{position:relative;aspect-ratio:1096/580;max-height:82vh;overflow:hidden;}
.stm-ov__g3media{margin:0;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#fff;}
.stm-ov__g3media img{width:100%;height:100%;display:block;object-fit:cover;}
.stm-ov__g3wrap.is-portrait .stm-ov__g3media{padding:0;}
.stm-ov__g3wrap.is-portrait .stm-ov__g3media img{object-fit:contain;width:auto;max-width:100%;height:100%;} /* Hochformat: zentriert mit Weissraum, Box bleibt gleich gross */
.stm-ov__g3panel{position:absolute;top:0;right:0;bottom:0;width:min(38%,340px);background:rgba(255,255,255,.85);padding:3.2rem 1.6rem 1.6rem;display:flex;align-items:center;}
.stm-ov__g3toggle{position:absolute;top:.9rem;right:.9rem;width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid var(--st-neutral-200,#D1D1D1);padding:0;color:var(--st-color-primary,#002F5D);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.15);}
.stm-ov__g3toggle svg{max-width:none;}
.stm-ov__g3toggle:hover{color:var(--st-color-accent,#B51F29);}
.stm-ov__g3wrap.is-panel-hidden .stm-ov__g3paneltext{display:none;}
.stm-ov__g3wrap.is-panel-hidden .stm-ov__g3panel{background:transparent;width:64px;padding:0;} /* zu: nur runder Linkspfeil bleibt */
.stm-ov__g3wrap.is-panel-hidden .stm-ov__g3toggle{transform:scaleX(-1);}
.stm-ov__g3head{font-family:var(--st-font-head,inherit);font-weight:700;text-transform:uppercase;font-size:1rem;margin:0 0 .8rem;}
.stm-ov__g3paneltext{font-size:.85rem;line-height:1.55;color:var(--st-color-ink,#222);}
.stm-ov__g3paneltext p{margin:0 0 .8rem;}
.stm-ov__g3link a{color:var(--st-color-ink,#222);font-weight:700;font-size:.82rem;text-decoration:none;}
.stm-ov__g3link a:hover{color:var(--st-color-accent,#B51F29);}

/* ---------- Galerie 4: Coverflow ---------- */
.stm-g4{position:relative;padding:0 3.5rem;}
.stm-g4__viewport{overflow:hidden;}
.stm-g4__track{list-style:none;display:flex;gap:24px;margin:0;padding:0;transition:transform .45s ease;}
.stm-g4__item{flex:0 0 82%;min-width:0;cursor:pointer;opacity:.5;transition:opacity .4s ease;} /* Figma: Nachbarn 50% */
.stm-g4__item.is-active{opacity:1;}
.stm-g4__fig{position:relative;margin:0;aspect-ratio:16/9;overflow:hidden;background:var(--st-color-lightblue,#CAD9E0);}
.stm-g4__img{width:100%;height:100%;object-fit:cover;display:block;}
.stm-g4__bar{position:absolute;left:0;right:0;bottom:0;min-height:168px;display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;background:linear-gradient(to top,rgba(0,0,0,.85),rgba(0,0,0,0));color:#fff;padding:2.2rem 1.75rem 1rem;font-size:1.25rem;line-height:1.5;font-weight:400;opacity:0;transition:opacity .3s;} /* Figma: 168px-Schwarzverlauf, Text 20/30 */
.stm-g4__item.is-active .stm-g4__bar{opacity:1;}
.stm-g4__credit{font-size:.75rem;line-height:1;background:rgba(34,34,34,.35);padding:.3rem .55rem;flex:0 0 auto;margin-bottom:.35rem;}
.stm-g4__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;background:none;border:0;padding:.2rem;color:var(--st-color-primary,#002F5D);cursor:pointer;display:inline-flex;}
.stm-g4__arrow svg{max-width:none;flex:0 0 auto;}
.stm-g4__arrow:hover{color:var(--st-color-accent,#B51F29);}
.stm-g4__arrow[disabled]{color:var(--st-color-lightblue,#CAD9E0);cursor:default;}
.stm-g4__arrow--prev{left:.5rem;}
.stm-g4__arrow--next{right:.5rem;}

/* ---------- Galerie 5: Vertikal ---------- */
.stm-g5{position:relative;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,5fr);gap:0;align-items:stretch;background:#fff;}
.stm-g5{--g5padl:clamp(1.5rem,3.3vw,3rem);} /* 31.07.: linkes Text-Padding als Var (Full-Width-Ausrichtung) */
.stm-g5__text{position:relative;display:flex;flex-direction:column;justify-content:flex-start;padding:clamp(2rem,6vh,5.9rem) clamp(1.5rem,7vw,7rem) 7.5rem var(--g5padl);} /* 31.07.: unten 7.5rem = fester Luftraum ueber der Textnavigation */
.stm-g5__panel{display:none;}
.stm-g5__panel.is-active{display:block;}
.stm-g5__intro{color:var(--st-color-primary,#002F5D);font-weight:700;line-height:1.5;margin:0 0 1.1rem;}
.stm-g5__head{margin-bottom:1.6rem;}
.stm-g5__head .module__kicker{font-size:1.2rem;margin-bottom:.4rem;}
.stm-g5__head .module__headline{font-size:clamp(2.6rem,6.9vw,6.25rem);line-height:.9;max-width:none;margin-bottom:0;}
.stm-g5__body{font-size:1.25rem;line-height:1.5;}
.stm-g5__body p{margin:0 0 1rem;}
.stm-g5__navrow{position:absolute;left:var(--g5padl);bottom:56px;display:flex;gap:2rem;} /* buendig mit der Textkante */
/* Full-Width: Bild bis an den Viewport-Rand, TEXT bleibt am Satzspiegel (Kundenregel 31.07.) */
.module--slideshow--vertical.is-full{padding-left:0;padding-right:0;}
.module--slideshow--vertical.is-full > .module__inner{max-width:none;padding-left:0;padding-right:0;} /* inner-Padding (4vw-Altregel) neutralisieren */
/* 31.07. Kundenkorrektur: Textblock im Full-Width-Modus GANZ nach links (Figma: 48px vom Rand), kein Satzspiegel-Einzug */
.stm-g5__navlink{background:none;border:0;padding:0;cursor:pointer;font-weight:700;font-size:.9rem;color:var(--st-color-ink,#222);}
.stm-g5__navlink:hover{color:var(--st-color-accent,#B51F29);}
.stm-g5__media{position:relative;min-height:560px;}
.stm-g5__slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .35s;}
.stm-g5__slide.is-active{opacity:1;}
.stm-g5__img{width:100%;height:100%;object-fit:cover;display:block;}
.stm-g5__credit{position:absolute;right:.4rem;bottom:.8rem;margin:0;color:#fff;font-size:.62rem;writing-mode:vertical-rl;text-shadow:0 1px 3px rgba(0,0,0,.5);}
.stm-g5__down{position:absolute;left:50%;bottom:1.5rem;transform:translateX(-50%);width:44px;height:44px;padding:0;box-sizing:border-box;aspect-ratio:1;border-radius:50%;border:2px solid rgba(255,255,255,.85);background:transparent;color:rgba(255,255,255,.85);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2;} /* 31.07.: Outline 85% Weiss */
.stm-g5__down svg{max-width:none;flex:0 0 auto;}
.stm-g5__down:hover{background:rgba(255,255,255,.15);color:#fff;border-color:#fff;}
.stm-g5__dots{list-style:none;position:absolute;right:1rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:.5rem;margin:0;padding:0;z-index:2;} /* 31.07.: Dots IM Bild, 85% Weiss */
.stm-g5__dot{width:8px;height:8px;border-radius:4px;border:0;padding:0;background:rgba(255,255,255,.5);cursor:pointer;transition:all .2s;}
.stm-g5__dot.is-active{height:22px;background:rgba(255,255,255,.85);}

/* ---------- Responsive ---------- */
@media(max-width:900px){
	.stm-g2--4,.stm-g2--3{grid-template-columns:repeat(2,minmax(0,1fr));}
	.stm-ov__frame{padding:2.5rem 1rem;}
	.stm-ov__arrow--prev{left:.4rem;}
	.stm-ov__arrow--next{right:.4rem;}
	.stm-ov__g2top{grid-template-columns:1fr;}
	.stm-ov__g3wrap{flex-direction:column;max-height:none;}
	.stm-ov__g3panel{flex:0 0 auto;padding:2.6rem 1.4rem 1.4rem;}
	.stm-g4{padding:0 2.2rem;}
	.stm-g4__item{flex-basis:92%;}
	.stm-g5{grid-template-columns:1fr;gap:1.5rem;}
	.stm-g5__media{min-height:380px;order:-1;}
	.stm-g5__dots{right:.5rem;}
	.stm-g1__textnav{justify-content:flex-start;}
}
@media(max-width:600px){
	.stm-g2--4,.stm-g2--3,.stm-g2--2{grid-template-columns:1fr;}
	.stm-g3__img{height:140px;}
	.stm-g3__item.is-portrait .stm-g3__img{height:200px;}
}

/* ============================================================
   Downloads/Pressematerial-Rework (27.07.) nach Figma
   ============================================================ */
.stm-dl__head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:1.5rem;}
.stm-dl__headings{min-width:0;}
.stm-dl__copy{margin-top:.4rem;}
.stm-dl__filterwrap{flex:0 0 auto;}
.stm-dl__filter{display:inline-flex;align-items:center;gap:.6rem;height:36px;min-width:min(312px,100%);border:1px solid var(--st-neutral-300,#B0B0B0);border-radius:5px;padding:0 .75rem;background:#fff;color:var(--st-color-ink,#222);}
.stm-dl__filter-eye{display:inline-flex;color:var(--st-color-ink,#222);}
.stm-dl__filter-eye svg{max-width:none;}
.stm-dl__filter select{border:0;background:none;font:inherit;font-size:1.125rem;color:inherit;outline:none;cursor:pointer;padding-right:.2rem;flex:1;}
/* alte Button-Filter neutralisiert das Markup von selbst */

.stm-dl-list--grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem 1.75rem;}
.stm-dl-list--list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem 4rem;}

.stm-dl-card{display:flex;flex-direction:column;gap:0;height:100%;border:0;background:none;}
.stm-dl-card__body{display:flex;flex-direction:column;flex:1;min-width:0;}
.stm-dl-card__media{position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--st-neutral-100,#F6F6F6);}
.stm-dl-card__img{width:100%;height:100%;object-fit:cover;display:block;}
.stm-dl-card__media--icon{display:flex;align-items:center;justify-content:center;}
.stm-dl-card__filetype{display:inline-flex;}
.stm-dl-card__ficon{width:76px;height:auto;max-width:none;color:var(--st-color-primary,#002F5D);}
.stm-dl-card__ficon svg{width:76px;height:auto;max-width:none;}
.stm-dl-card__badge{position:absolute;right:0;bottom:0;background:var(--st-color-primary,#002F5D);color:#fff;font-size:1rem;font-weight:500;line-height:1;padding:6px;letter-spacing:0;border-radius:0;width:auto;}
.stm-dl-card__title{font-family:var(--st-font-head,inherit);font-weight:700;color:var(--st-color-primary,#002F5D);font-size:1.125rem;line-height:1.15;margin:1rem 0 0;text-transform:none;letter-spacing:0;}
.stm-dl-card__text{color:var(--st-color-ink,#222);font-size:1rem;line-height:1.25;margin-top:.625rem;}
.stm-dl-card__text p{margin:0;}
.stm-dl-card__credits{font-size:1rem;line-height:1.25;color:var(--st-color-ink,#222);margin:1rem 0 0;}
.stm-dl-card__credits-label{display:block;font-weight:700;text-transform:uppercase;font-size:.875rem;line-height:1;letter-spacing:.02em;color:#5C788E;margin-bottom:.625rem;}
.stm-dl-card__actions{display:flex;gap:1.625rem;margin-top:auto;padding-top:1.5rem;}
.stm-dl-card__action{color:var(--st-color-ink,#222);font-size:1rem;font-weight:500;line-height:1.375;text-decoration:none;}
.stm-dl-card__action:hover{color:var(--st-color-accent,#B51F29);}

/* Listenansicht: Thumb links, Text rechts */
.stm-dl-list--list .stm-dl-card{flex-direction:row;gap:1.5rem;align-items:stretch;height:auto;}
.stm-dl-list--list .stm-dl-card__media{flex:0 0 200px;aspect-ratio:auto;min-height:128px;align-self:stretch;}
.stm-dl-list--list .stm-dl-card__ficon,.stm-dl-list--list .stm-dl-card__ficon svg{width:56px;height:auto;}
.stm-dl-list--list .stm-dl-card__title{margin-top:0;}
/* Liste kompakt (Figma-Zeile 128px): Links unten buendig mit der Bildunterkante */
.stm-dl-list--list .stm-dl-card__text{margin-top:.375rem;}
.stm-dl-list--list .stm-dl-card__credits{margin-top:.625rem;}
.stm-dl-list--list .stm-dl-card__actions{padding-top:.625rem;}

@media(max-width:1000px){
	.stm-dl-list--grid{grid-template-columns:repeat(2,minmax(0,1fr));}
	.stm-dl-list--list{grid-template-columns:1fr;}
	.stm-dl__head{flex-direction:column;align-items:flex-start;gap:1rem;}
}
@media(max-width:560px){
	.stm-dl-list--grid{grid-template-columns:1fr;}
	.stm-dl-list--list .stm-dl-card{flex-direction:column;}
	.stm-dl-list--list .stm-dl-card__media{flex-basis:auto;width:100%;}
}

/* ==== SERP / Suchergebnisseite (Figma 8106-4228, 27.07.2026) ==== */
.stm-serp__hero{position:relative;width:100%;aspect-ratio:1440/681;min-height:340px;max-height:70vh;overflow:hidden;background:var(--st-neutral-100,#F6F6F6);}
.stm-serp__hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.stm-serp__hero-box{position:absolute;left:0;top:31%;background:rgba(255,255,255,.9);padding:2rem 2.4rem 2.4rem;max-width:min(506px,86vw);}
.stm-serp__kicker{margin:0 0 .4rem;font-weight:700;font-size:1.25rem;line-height:1.5;text-transform:uppercase;color:var(--st-color-accent,#B51F29);}
.stm-serp__title{margin:0;font-weight:700;font-size:clamp(2.6rem,5.5vw,5rem);line-height:.9;text-transform:uppercase;}
.stm-serp__wrap{max-width:1369px;margin:0 auto;padding:0 24px 5rem;}
.stm-serp__summary{margin:4.5rem 0 0;font-weight:700;font-size:clamp(1.5rem,2.5vw,2.25rem);line-height:1.2;text-transform:uppercase;color:var(--st-color-primary,#002F5D);}
.stm-serp__term{color:var(--st-color-accent,#B51F29);}
.stm-serp__group{margin-top:4.5rem;}
.stm-serp__group-title{margin:0 0 2rem;font-weight:700;font-size:clamp(1.35rem,1.95vw,1.75rem);line-height:1.2;text-transform:uppercase;color:var(--st-color-primary,#002F5D);}
.stm-serp__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem 24px;}
.stm-serp-card{display:flex;flex-direction:column;align-items:flex-start;}
.stm-serp-card__media{display:block;width:100%;aspect-ratio:312/206;overflow:hidden;background:var(--st-neutral-100,#F6F6F6);}
.stm-serp-card__img{width:100%;height:100%;object-fit:cover;display:block;}
.stm-serp-card__title{margin:.85rem 0 0;font-weight:700;font-size:1.125rem;line-height:1.22;text-transform:uppercase;}
.stm-serp-card__title a{color:var(--st-color-primary,#002F5D);text-decoration:none;}
.stm-serp-card__title a:hover{color:var(--st-color-secondary,#034B91);}
.stm-serp-card__cta{margin-top:.9rem;display:inline-flex;align-items:center;gap:.6rem;font-weight:500;font-size:1rem;line-height:1.35;color:var(--st-color-ink,#222);text-decoration:none;}
.stm-serp-card__cta span{font-weight:700;}
.stm-serp-card__cta:hover{color:var(--st-color-secondary,#034B91);}
.stm-serp__again{margin-top:7rem;text-align:center;}
.stm-serp__again-title{margin:0;font-weight:700;font-size:clamp(2.4rem,5.5vw,5rem);line-height:.9;text-transform:uppercase;}
.stm-serp__again-copy{margin:1.6rem 0 0;font-size:1.25rem;line-height:1.5;color:var(--st-color-ink,#222);}
.stm-serp__search{display:flex;align-items:center;gap:1.1rem;max-width:528px;margin:2.2rem auto 0;}
.stm-serp__search input{flex:1;min-width:0;border:0;border-bottom:1px solid var(--st-neutral-300,#B0B0B0);border-radius:0;padding:.7rem 0;font:inherit;font-size:1.125rem;color:var(--st-color-ink,#222);background:none;outline:none;appearance:none;-webkit-appearance:none;}
.stm-serp__search input::placeholder{color:var(--st-neutral-600,#5D5D5D);}
.stm-serp__search input:focus{border-bottom-color:var(--st-color-primary,#002F5D);}
.stm-serp__search button{flex:0 0 auto;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:var(--st-color-primary,#002F5D);color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;}
.stm-serp__search button svg{max-width:none;flex:0 0 auto;}
.stm-serp__search button:hover{background:var(--st-color-secondary,#034B91);}
@media (max-width:1023px){
	.stm-serp__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
	.stm-serp__hero{aspect-ratio:auto;height:52vw;min-height:300px;}
}
@media (max-width:600px){
	.stm-serp__grid{grid-template-columns:minmax(0,1fr);}
	.stm-serp__hero-box{top:auto;bottom:0;padding:1.4rem 1.6rem 1.6rem;}
	.stm-serp__again{margin-top:4.5rem;}
}

/* ==== Header-Finalisierung: Topbar-Dropdowns, Sprache, Suche, Hilfsnavigation (Figma 8011-824, 28.07.2026) ==== */
/* --- Topbar-Dropdowns --- */
.site-topbar__inner{position:relative;}
.topbar-menu li{position:relative;}
.topbar-menu > li > a{display:inline-flex;align-items:center;gap:6px;padding:8px 0;}
.topbar-chev{flex:0 0 auto;max-width:none;transition:transform .15s ease;}
.topbar-menu > li.is-open > a .topbar-chev{transform:rotate(180deg);}
.site-topbar .topbar-menu .sub-menu{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);z-index:120;background:#fff;box-shadow:0 10px 24px rgba(0,0,0,.14);list-style:none;margin:0;padding:10px 0;min-width:230px;}
.site-topbar .topbar-menu > li.is-open > .sub-menu{display:block;}
.site-topbar .topbar-menu .sub-menu a{display:block;padding:7px 20px;color:var(--st-color-primary,#002F5D);font-size:.92rem;text-decoration:none;white-space:nowrap;}
.site-topbar .topbar-menu .sub-menu a:hover{color:var(--st-color-primary,#002F5D);text-decoration:underline;text-underline-offset:3px;}
/* --- Sprachauswahl --- */
.stm-lang{position:relative;display:inline-flex;}
.stm-lang__btn{background:none;border:0;color:#fff;font:inherit;font-size:.8rem;display:inline-flex;align-items:center;gap:6px;cursor:pointer;padding:8px 0;}
.stm-lang.is-open .topbar-chev{transform:rotate(180deg);}
.stm-lang__panel{position:absolute;top:100%;right:0;z-index:120;background:#fff;box-shadow:0 10px 24px rgba(0,0,0,.14);min-width:190px;padding:14px 0 10px;}
.stm-lang__caption{margin:0 20px 6px;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--st-neutral-600,#5D5D5D);}
.stm-lang__list{list-style:none;margin:0;padding:0;}
.stm-lang__list a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:6px 20px;color:var(--st-color-primary,#002F5D);font-size:.92rem;text-decoration:none;white-space:nowrap;}
.stm-lang__list a:hover{text-decoration:underline;text-underline-offset:3px;}
.stm-lang__list a.is-active{font-weight:700;}
.stm-lang__list a svg{flex:0 0 auto;max-width:none;}
/* --- Header-Suche --- */
@media (min-width:1001px){
  button.header-search{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;background:none;color:var(--st-color-primary,#002F5D);cursor:pointer;}
  button.header-search:hover,button.header-search.is-open{color:var(--st-color-accent,#B51F29);}
}
button.header-search svg{max-width:none;flex:0 0 auto;}
.stm-searchbar{background:#fff;border-top:1px solid var(--st-neutral-200,#E7E7E7);box-shadow:0 18px 30px rgba(0,0,0,.10);}
.stm-searchbar__form{max-width:528px;margin:0 auto;display:flex;align-items:center;gap:1.1rem;padding:1.4rem 24px;}
.stm-searchbar__form input{flex:1;min-width:0;border:0;border-bottom:1px solid var(--st-neutral-300,#B0B0B0);border-radius:0;padding:.7rem 0;font:inherit;font-size:1.125rem;color:var(--st-color-ink,#222);background:none;outline:none;appearance:none;-webkit-appearance:none;}
.stm-searchbar__form input::placeholder{color:var(--st-neutral-600,#5D5D5D);}
.stm-searchbar__form input:focus{border-bottom-color:var(--st-color-primary,#002F5D);}
.stm-searchbar__form button{flex:0 0 auto;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:var(--st-color-primary,#002F5D);color:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;}
.stm-searchbar__form button svg{max-width:none;flex:0 0 auto;}
.stm-searchbar__form button:hover{background:var(--st-color-secondary,#034B91);}
/* --- Hilfsnavigation rechts --- */
.stm-hn{position:fixed;right:0;top:190px;z-index:90;display:flex;flex-direction:column;gap:12px;width:50px;}
.stm-hn__item{position:relative;height:50px;}
.stm-hn__btn{position:absolute;right:0;top:0;height:50px;width:50px;display:flex;align-items:center;gap:2px;padding:0;border:0;background:var(--st-color-lightblue,#CAD9E0);color:var(--st-color-primary,#002F5D);cursor:pointer;overflow:hidden;white-space:nowrap;transition:width .18s ease;}
.stm-hn__item:hover .stm-hn__btn,.stm-hn__item.is-open .stm-hn__btn{width:300px;box-shadow:-4px 4px 8.5px rgba(0,0,0,.10);}
.stm-hn__item.is-open .stm-hn__btn{box-shadow:none;}
.stm-hn__ico{flex:0 0 50px;width:50px;height:50px;display:flex;align-items:center;justify-content:center;position:relative;}
.stm-hn__ico .stm-ic,.stm-hn__ico svg{width:30px;height:30px;max-width:none;flex:0 0 auto;display:block;}
.stm-hn__ico--cal .stm-hn__day{position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--st-color-primary,#002F5D);line-height:1;}
.stm-hn__label{font-weight:700;font-size:1.25rem;line-height:1;text-transform:uppercase;}
.stm-hn__l-open{display:none;}
.stm-hn__item.is-open .stm-hn__l-open{display:inline;}
.stm-hn__item.is-open .stm-hn__l-closed{display:none;}
.stm-hn__flyout{position:absolute;right:0;top:50px;width:300px;background:#fff;box-shadow:-4px 4px 8.5px rgba(0,0,0,.10);padding:24px 30px 28px;z-index:95;}
.stm-hn__item.is-open{z-index:96;}
.stm-hn__event,.stm-hn__link{margin:0 0 22px;}
.stm-hn__ev-head{margin:0 0 6px;font-weight:700;font-size:1.05rem;line-height:1.3;text-transform:uppercase;color:var(--st-color-primary,#002F5D);}
.stm-hn__ev-title{margin:0 0 4px;font-weight:700;font-size:1.05rem;line-height:1.3;}
.stm-hn__ev-title a{color:var(--st-color-accent,#B51F29);text-decoration:none;}
.stm-hn__ev-title a:hover{text-decoration:underline;text-underline-offset:3px;}
.stm-hn__ev-text{margin:0 0 6px;font-size:.95rem;line-height:1.4;color:var(--st-color-ink,#222);}
.stm-hn__textlink{display:inline-flex;align-items:center;gap:.5rem;font-weight:500;font-size:.95rem;color:var(--st-color-ink,#222);text-decoration:none;}
.stm-hn__textlink span,.stm-hn__link-title span{font-weight:700;}
.stm-hn__textlink:hover{color:var(--st-color-secondary,#034B91);}
.stm-hn__link-title{display:inline-flex;align-items:center;gap:.6rem;margin:0 0 2px;font-weight:700;font-size:1.05rem;line-height:1.3;text-transform:uppercase;color:var(--st-color-primary,#002F5D);text-decoration:none;}
.stm-hn__link-title:hover{color:var(--st-color-secondary,#034B91);}
.stm-hn__pill{display:inline-flex;align-items:center;gap:.6rem;margin-top:4px;padding:.9rem 1.4rem;border:1px solid var(--st-color-primary,#002F5D);border-radius:999px;background:#fff;color:var(--st-color-primary,#002F5D);font-weight:500;font-size:1rem;line-height:1.1;text-decoration:none;}
.stm-hn__pill:hover{background:var(--st-color-primary,#002F5D);color:#fff;}
.stm-hn__pill span{font-weight:700;}
.stm-hn__cta{display:inline-flex;align-items:center;gap:.7rem;margin-top:12px;padding:.55rem 1.6rem .55rem 1.2rem;border-radius:999px;background:var(--st-color-primary,#002F5D);color:#fff;font-weight:500;font-size:1rem;text-decoration:none;}
.stm-hn__cta:hover{background:var(--st-color-secondary,#034B91);}
.stm-hn__cta-ico svg,.stm-hn__cta-ico .stm-ic{width:24px;height:24px;max-width:none;display:block;color:#fff;}
@media (max-width:1000px){.stm-hn{display:none;}}

/* ==== Veranstaltungsseite /veranstaltungen/ (Figma 8106-2353, 28.07.2026) ==== */
.stm-evl__hero{position:relative;width:100%;aspect-ratio:1440/681;min-height:380px;max-height:72vh;background:var(--st-neutral-100,#F6F6F6);}
.stm-evl__hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.stm-evl__hero-box{position:absolute;left:0;top:12%;background:rgba(246,246,246,.92);padding:2rem 2.6rem 2.4rem;max-width:min(686px,88vw);}
.stm-evl__kicker{margin:0 0 .4rem;font-weight:700;font-size:1.1rem;line-height:1.4;text-transform:uppercase;color:var(--st-color-accent,#B51F29);}
.stm-evl__title{margin:0;font-weight:700;font-size:clamp(2.4rem,4.6vw,4.2rem);line-height:1.02;text-transform:uppercase;}
/* Filterleiste am Hero-Fuss */
.stm-evl__filter{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:12px;padding:16px max(24px,calc((100% - 1320px)/2 + 0px));background:rgba(246,246,246,.82);backdrop-filter:blur(2px);}
.stm-evl__f{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--st-neutral-300,#D1D1D1);border-radius:8px;padding:0 12px;height:44px;color:var(--st-color-ink,#222);}
.stm-evl__f-ico{display:inline-flex;align-items:center;gap:3px;color:var(--st-color-ink,#222);position:relative;}
.stm-evl__f-ico svg{max-width:none;flex:0 0 auto;}
.stm-evl__f-tag{font-size:.58rem;font-weight:700;text-transform:lowercase;position:absolute;left:3px;top:3px;background:#fff;padding:0 1px;color:var(--st-neutral-600,#5D5D5D);}
.stm-evl__f input,.stm-evl__f select{border:0;background:none;outline:none;font:inherit;font-size:.95rem;color:var(--st-color-ink,#222);height:100%;}
.stm-evl__f--date input{width:130px;}
.stm-evl__f--kat select{min-width:170px;appearance:auto;}
.stm-evl__f--q{flex:0 1 300px;}
.stm-evl__f--q input{width:100%;min-width:0;}
.stm-evl__reset{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:#fff;border:1px solid var(--st-neutral-300,#D1D1D1);border-radius:8px;color:var(--st-color-ink,#222);}
.stm-evl__reset:hover{color:var(--st-color-accent,#B51F29);}
.stm-evl__reset svg{max-width:none;}
.stm-evl__views{margin-left:auto;display:inline-flex;gap:8px;}
.stm-evl__view{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:#fff;border:1px solid var(--st-neutral-300,#D1D1D1);border-radius:8px;color:var(--st-neutral-500,#888);}
.stm-evl__view.is-active{color:var(--st-color-accent,#B51F29);border-color:var(--st-neutral-300,#D1D1D1);}
.stm-evl__view svg{max-width:none;}
/* Inhalt */
.stm-evl__wrap{max-width:1369px;margin:0 auto;padding:0 24px 5rem;}
.stm-evl__month{margin:3.4rem 0 1.6rem;font-weight:700;font-size:clamp(1.7rem,2.6vw,2.25rem);line-height:1.1;text-transform:uppercase;color:var(--st-color-primary,#002F5D);}
.stm-evl__badge{position:absolute;top:0;left:0;background:var(--st-neutral-600,#5D5D5D);color:#fff;font-size:.72rem;font-weight:700;padding:.3rem .6rem;letter-spacing:.04em;text-transform:none;}
/* Kategoriefarben dieser Seite */
.is-cat-gottesdienste{--evc:var(--st-color-gold,#D1AC57);}
.is-cat-musik{--evc:var(--st-color-primary,#002F5D);}
.is-cat-vortrag{--evc:var(--st-color-accent,#B51F29);}
.is-cat-fuehrung{--evc:var(--st-color-secondary,#034B91);}
.is-cat-sonstiges{--evc:var(--st-neutral-600,#5D5D5D);}
.stm-evl-row .stm-evl__badge,.stm-evl-tile .stm-evl__badge{background:var(--evc,#5D5D5D);}
/* Listenzeile */
.stm-evl-row{display:grid;grid-template-columns:312px 150px minmax(0,1fr) 250px;gap:0 34px;align-items:start;padding:26px 0;border-bottom:1px solid var(--st-neutral-200,#E7E7E7);}
.stm-evl-row__media{position:relative;}
.stm-evl-row__media a{position:relative;display:block;aspect-ratio:312/206;overflow:hidden;background:var(--st-neutral-100,#F6F6F6);}
.stm-evl-row__img{width:100%;height:100%;object-fit:cover;display:block;}
.stm-evl-row__room{margin:.7rem 0 0;display:flex;align-items:center;gap:.4rem;font-weight:700;font-size:.9rem;color:var(--st-color-primary,#002F5D);}
.stm-evl-row__room svg{max-width:none;flex:0 0 auto;}
.stm-evl-row__date{display:flex;flex-direction:column;}
.stm-evl-row__day{font-weight:700;font-size:4.6rem;line-height:.95;color:var(--evc,#002F5D);letter-spacing:.02em;}
.stm-evl-row__wd{margin-top:.55rem;font-weight:700;font-size:.95rem;text-transform:uppercase;color:var(--st-color-accent,#B51F29);}
.stm-evl-row__d{font-weight:700;font-size:.95rem;text-transform:uppercase;color:var(--st-color-primary,#002F5D);}
.stm-evl-row__body{border-left:2px solid var(--evc,#002F5D);padding-left:34px;min-height:206px;}
.stm-evl-row__title{margin:0 0 .5rem;font-weight:700;font-size:1.25rem;line-height:1.3;}
.stm-evl-row__title a{color:var(--st-color-accent,#B51F29);text-decoration:none;}
.stm-evl-row__title a:hover{text-decoration:underline;text-underline-offset:3px;}
.stm-evl-row__sub{margin:0 0 .7rem;font-weight:700;font-size:1.02rem;line-height:1.4;color:var(--st-color-accent,#B51F29);}
.stm-evl-row__text{margin:0 0 .6rem;font-size:1rem;line-height:1.45;color:var(--st-color-ink,#222);}
.stm-evl-row__note{margin:0 0 .6rem;font-size:.95rem;line-height:1.4;color:var(--st-color-ink,#222);}
.stm-evl__more{display:inline-flex;align-items:center;gap:.55rem;font-weight:500;font-size:1rem;color:var(--st-color-ink,#222);text-decoration:none;}
.stm-evl__more span{font-weight:700;}
.stm-evl__more:hover{color:var(--st-color-secondary,#034B91);}
.stm-evl-row__actions{display:flex;flex-direction:column;gap:14px;align-self:center;justify-self:end;}
.stm-evl__btn{display:flex;align-items:center;gap:12px;width:236px;padding:6px 16px;border-radius:999px;text-decoration:none;line-height:1.1;}
.stm-evl__btn-ico{display:inline-flex;flex:0 0 auto;}
.stm-evl__btn-ico svg{max-width:none;}
.stm-evl__btn-txt{display:flex;flex-direction:column;flex:1;min-width:0;}
.stm-evl__btn-txt strong{font-size:.95rem;font-weight:700;}
.stm-evl__btn-txt small{font-size:.75rem;font-weight:400;}
.stm-evl__btn-chev{font-weight:700;}
.stm-evl__btn--cal{border:1px solid var(--st-color-primary,#002F5D);background:#fff;color:var(--st-color-primary,#002F5D);}
.stm-evl__btn--cal:hover{background:var(--st-color-primary,#002F5D);color:#fff;}
.stm-evl__btn--tickets{background:var(--st-color-primary,#002F5D);color:#fff;}
.stm-evl__btn--tickets:hover{background:var(--st-color-secondary,#034B91);}
/* Kacheln */
.stm-evl__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3rem 24px;}
.stm-evl-tile__media{position:relative;display:block;aspect-ratio:312/206;overflow:hidden;background:var(--st-neutral-100,#F6F6F6);}
.stm-evl-tile__img{width:100%;height:100%;object-fit:cover;display:block;}
.stm-evl-tile__date{margin:.9rem 0 .3rem;font-weight:700;font-size:.98rem;text-transform:uppercase;color:var(--st-color-primary,#002F5D);}
.stm-evl-tile__title{margin:0 0 .4rem;font-weight:700;font-size:1.1rem;line-height:1.3;}
.stm-evl-tile__title a{color:var(--st-color-accent,#B51F29);text-decoration:none;}
.stm-evl-tile__title a:hover{text-decoration:underline;text-underline-offset:3px;}
.stm-evl-tile__text{margin:0 0 .55rem;font-size:.98rem;line-height:1.4;color:var(--st-color-ink,#222);}
/* Paginierung + Leerzustand */
.stm-evl__pager{margin-top:3.4rem;display:flex;justify-content:center;gap:6px;font-weight:500;}
.stm-evl__pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 6px;color:var(--st-color-primary,#002F5D);text-decoration:none;border-radius:4px;}
.stm-evl__pager .page-numbers.current{font-weight:700;text-decoration:underline;text-underline-offset:4px;}
.stm-evl__pager .page-numbers:hover{color:var(--st-color-accent,#B51F29);}
.stm-evl__empty{margin:4rem 0;font-size:1.1rem;color:var(--st-color-ink,#222);}
@media (max-width:1100px){
  .stm-evl-row{grid-template-columns:240px 120px minmax(0,1fr);gap:0 22px;}
  .stm-evl-row__actions{grid-column:3;flex-direction:row;flex-wrap:wrap;justify-self:start;margin-top:12px;}
  .stm-evl-row__body{min-height:0;}
  .stm-evl__grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .stm-evl__filter{flex-wrap:wrap;position:static;background:var(--st-neutral-100,#F6F6F6);}
  .stm-evl__hero{aspect-ratio:auto;min-height:0;}
  .stm-evl__hero-img{position:relative;aspect-ratio:16/10;}
  .stm-evl__hero-box{top:auto;bottom:0;}
}
@media (max-width:640px){
  .stm-evl-row{grid-template-columns:minmax(0,1fr);}
  .stm-evl-row__media{max-width:340px;}
  .stm-evl-row__date{flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:.5rem;margin:1rem 0 .4rem;}
  .stm-evl-row__body{border-left:0;padding-left:0;}
  .stm-evl-row__actions{grid-column:1;}
  .stm-evl__grid{grid-template-columns:minmax(0,1fr);}
}
/* Fix 28.07.: globale h3-Versalien fuer Veranstaltungs-Titel aufheben (Figma: Mischschreibung) */
.stm-evl-row__title,.stm-evl-tile__title{text-transform:none;}

/* ==== Newsletter-Modul Rework (Figma Newsletter-Anmeldeseite, 28.07.2026) ==== */
.stm-nlx .module__kicker{margin-bottom:.6rem;}
.stm-nlx__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:2rem 64px;align-items:start;}
.stm-nlx__head{margin:0 0 1.1rem;font-weight:700;font-size:1.35rem;line-height:1.25;text-transform:uppercase;color:var(--st-color-primary,#002F5D);}
.stm-nlx__copy p{margin:0 0 1em;font-size:1.05rem;line-height:1.55;color:var(--st-color-ink,#222);}
.stm-nlx__list{list-style:none;margin:2.2rem 0 0;padding:0;display:flex;flex-direction:column;gap:1.6rem;}
.stm-nlx__item{display:grid;grid-template-columns:22px 44px minmax(0,1fr);gap:0 16px;align-items:start;}
.stm-nlx__cb{position:absolute;opacity:0;width:1px;height:1px;}
.stm-nlx__box{width:20px;height:20px;margin-top:12px;border:1.5px solid var(--st-neutral-400,#B0B0B0);border-radius:3px;background:#fff;cursor:pointer;position:relative;}
.stm-nlx__cb:checked + .stm-nlx__box{border-color:var(--st-color-primary,#002F5D);}
.stm-nlx__cb:checked + .stm-nlx__box:after{content:"";position:absolute;left:4px;top:1px;width:8px;height:12px;border:solid var(--st-color-primary,#002F5D);border-width:0 2.5px 2.5px 0;transform:rotate(40deg);}
.stm-nlx__cb:focus-visible + .stm-nlx__box{outline:2px solid var(--st-color-secondary,#034B91);outline-offset:2px;}
.stm-nlx__ico{width:44px;height:44px;background:var(--st-color-primary,#002F5D);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:2px;}
.stm-nlx__ico .stm-ic,.stm-nlx__ico svg{width:26px;height:26px;max-width:none;display:block;}
.stm-nlx__ico img{width:26px;height:26px;object-fit:contain;display:block;}
.stm-nlx__title{display:block;font-weight:700;font-size:1rem;line-height:1.3;text-transform:uppercase;color:var(--st-color-accent,#B51F29);cursor:pointer;}
.stm-nlx__desc{margin:.2rem 0 0;font-size:.98rem;line-height:1.45;color:var(--st-color-ink,#222);}
.stm-nlx__hiddenfield{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);padding:0 !important;margin:0 !important;}
.stm-nlx .wpforms-container{background:none;max-width:none;}
@media (max-width:900px){.stm-nlx__grid{grid-template-columns:minmax(0,1fr);}}

/* ==== Formular-Modul 2-spaltig (Figma Newsletter-Anmeldeseite, 28.07.2026) ==== */
.stm-formx__headline{margin:.1em 0 .6em;font-weight:700;font-size:clamp(2.2rem,4.4vw,3.6rem);line-height:1.05;text-transform:uppercase;}
.stm-formx__grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:2rem 64px;align-items:start;margin-top:1.4rem;}
.stm-formx__subhead{margin:0 0 1rem;font-weight:700;font-size:1.15rem;line-height:1.3;text-transform:uppercase;color:var(--st-color-primary,#002F5D);}
.stm-formx__text p{margin:0 0 1em;font-size:1.05rem;line-height:1.55;color:var(--st-color-ink,#222);}
.stm-formx .wpforms-container{max-width:none;}
@media (max-width:900px){.stm-formx__grid{grid-template-columns:minmax(0,1fr);}}
/* Fix 28.07.: Newsletter-Icons = Original-SVGs aus Figma; Kachel 66px/r6, Checkbox 22px (Figma-Masse) */
.stm-nlx__item{grid-template-columns:24px 66px minmax(0,1fr);}
.stm-nlx__box{width:22px;height:22px;border-radius:4px;margin-top:22px;border-color:var(--st-color-primary,#002F5D);}
.stm-nlx__cb:checked + .stm-nlx__box:after{left:5px;top:2px;}
.stm-nlx__ico{width:66px;height:66px;border-radius:6px;}
.stm-nlx__ico .stm-ic,.stm-nlx__ico svg{width:auto;height:42px;}
.stm-nlx__txt{padding-top:2px;}

/* ==== Bild-Copyright-Overlay (Media-Felder, Figma "Bild: Max Mustermann", 28.07.2026) ==== */
.stm-imgwrap{position:relative;display:block;width:100%;height:100%;}
.stm-imgwrap > img{display:block;}
.stm-imgcredit{position:absolute;left:0;bottom:0;z-index:2;background:rgba(34,34,34,.68);color:#fff;font-size:.72rem;line-height:1.2;font-weight:400;padding:.28rem .6rem;pointer-events:none;max-width:92%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* ---------- WYSIWYG-Formate: CTAs, Icon-Links, Zwischenheadlines (2026-07-29) ---------- */
.module h4,.module h5{margin:1.4em 0 .5em;line-height:1.15;color:var(--st-color-primary,#002F5D);text-transform:uppercase;font-weight:700;}
.module h4{font-size:clamp(1.3rem,2vw,1.6rem);}
.module h5{font-size:1.05rem;}
.module h6{margin:1.4em 0 .4em;line-height:1.2;color:var(--st-color-accent,#B51F29);text-transform:uppercase;font-weight:700;font-size:.95rem;letter-spacing:.04em;}
.module h4:first-child,.module h5:first-child,.module h6:first-child{margin-top:0;}
.module p>a.btn{margin:.35em .6rem .35em 0;}
a.stm-il{display:inline-flex;align-items:center;gap:.45em;font-weight:700;color:var(--st-color-primary,#002F5D);text-decoration:none;}
a.stm-il:hover,a.stm-il:focus-visible{color:var(--st-color-secondary,#034B91);}
a.stm-il::before{content:"";width:1.35em;height:1.35em;flex:0 0 auto;background:var(--il) center/contain no-repeat;}
.stm-il--email{--il:url(../img/icons/il-email.svg);}
.stm-il--phone{--il:url(../img/icons/il-phone.svg);}
.stm-il--website{--il:url(../img/icons/il-website.svg);}
.stm-il--file-pdf{--il:url(../img/icons/il-file-pdf.svg);}
.stm-il--file-download{--il:url(../img/icons/il-file-download.svg);}
.stm-il--calendar{--il:url(../img/icons/il-calendar.svg);}
.stm-il--ticket{--il:url(../img/icons/il-ticket.svg);}
.stm-il--webshop{--il:url(../img/icons/il-webshop.svg);}
.stm-il--facebook{--il:url(../img/icons/il-facebook.svg);}
.stm-il--instagram{--il:url(../img/icons/il-instagram.svg);}
.stm-il--linkedin{--il:url(../img/icons/il-linkedin.svg);}
.stm-il--pinterest{--il:url(../img/icons/il-pinterest.svg);}
.stm-il--x{--il:url(../img/icons/il-x.svg);}
.stm-il--xing{--il:url(../img/icons/il-xing.svg);}
.stm-il--youtube{--il:url(../img/icons/il-youtube.svg);}

/* ---------- Auto-Headline: JS faerbt die letzte gerenderte Zeile (2026-07-29) ---------- */
.stm-hl{display:block;color:var(--st-color-primary,#002F5D);}
.stm-hl .stm-hl__last{color:var(--st-color-accent,#B51F29);}

/* ---------- Footer-Metazeile nach Figma: Links verteilt, Logo mittig, durchgehende Linie (2026-07-29) ---------- */
@media(min-width:783px){
	.site-footer__bottom{display:block;position:relative;margin-top:48px;padding-top:72px;border-top:0;}
	/* Links sitzen UNTEN: Unterkante-Text ~12px ueber der Linie, Text-Mitte auf Logo-Unterkante
	   (Figma 8001-15513). Alt-CSS gab der ul 26px Padding + zentrierte sie -> Links rutschten hoch. */
	.site-footer__meta{border-bottom:1px solid #fff;padding-bottom:7px;display:flex;align-items:flex-end;}
	.site-footer__meta::before{content:none;} /* alte Zwischenlinie des frueheren Footers */
	.site-footer__meta-menu{display:flex;justify-content:space-between;gap:24px;width:100%;padding:0;margin:0;}
	/* Logo sitzt AUF der Linie: Wrapper nur als Anker (alte Wrapper-Hoehe lief sonst ueber), Bild selbst positioniert */
	.site-footer__bottom .site-footer__logo--center{position:absolute;left:0;right:0;bottom:0;top:auto;height:0;transform:none;display:block;}
	.site-footer__bottom .site-footer__logo-img{position:absolute;left:50%;bottom:19px;transform:translateX(-50%);width:68px;height:auto;display:block;} /* Figma 8001-15513: Logo 68x80, Unterkante 18px UEBER der Linie */
}

/* ---------- Headlines: Maximalbreite 760px, kein Volllauf ueber die ganze Breite (2026-07-29) ---------- */
.module__headline{max-width:760px;}
.module__inner.is-intro .spalter__head .module__headline{margin-left:auto;margin-right:auto;} /* zentrierter Intro-Kopf (1-Spalter) */

/* ---------- Spalten-Slideshow: Navigation UNTER dem Bild nach Figma (2026-07-29) -
   Dots mittig (aktiv = blaue Pille), duenne Pfeile rechts, disabled = grau ---------- */
/* Spalten-Slideshow: Bilder fest 3:2 (31.07.) - alle Slides gleich gross,
   der mittlere Bereich springt beim Blaettern nicht mehr. */
.col--type-slideshow .stm-slider__slide img{aspect-ratio:3/2;width:100%;height:auto;object-fit:cover;}
/* Bilder in 3-/4-Spaltern ebenfalls fest 3:2 (31.07.) */
.module--spalter-3 .col__media .col__img,
.module--spalter-4 .col__media .col__img{aspect-ratio:3/2;width:100%;height:auto;object-fit:cover;}
.col--type-slideshow .stm-slider{overflow:visible;padding-bottom:46px;}
.col--type-slideshow .stm-slider__track{position:relative;overflow:hidden;}
.col--type-slideshow .stm-slider__dots{position:absolute;top:auto;bottom:12px;left:50%;right:auto;transform:translateX(-50%);display:flex;gap:8px;}
.col--type-slideshow .stm-slider__prev,
.col--type-slideshow .stm-slider__next{position:absolute;top:auto;left:auto;bottom:8px;transform:none;width:auto;height:auto;background:none;border:0;border-radius:0;box-shadow:none;padding:0;color:var(--st-color-primary,#002F5D);font-size:1.6rem;line-height:1;cursor:pointer;font-family:inherit;}
.col--type-slideshow .stm-slider__prev{right:48px;}
.col--type-slideshow .stm-slider__next{right:8px;}
.col--type-slideshow .stm-slider__prev:disabled,
.col--type-slideshow .stm-slider__next:disabled{color:var(--st-neutral-200,#D1D1D1);cursor:default;}
/* Mobile (gestapelte Spalten, wie Figma Mobile-Slider): Pfeile OBEN ueber dem Bild
   (buendig mit den Bildkanten), Dots mittig UNTER dem Bild. */
@media (max-width:900px){
	.col--type-slideshow .stm-slider{padding-top:38px;padding-bottom:40px;}
	.col--type-slideshow .stm-slider__prev,
	.col--type-slideshow .stm-slider__next{top:0;bottom:auto;}
	.col--type-slideshow .stm-slider__prev{left:0;right:auto;}
	.col--type-slideshow .stm-slider__next{left:auto;right:0;}
	.col--type-slideshow .stm-slider__dots{bottom:6px;}
}

/* ==== Spalter: "Mehr lesen"-Toggle + Sound-Button (31.07.2026) ==== */
.col__more{margin-top:.5rem;}
.col__more-toggle{margin-top:.75rem;}
.btn--sound::before{content:"\266A";font-size:1.05em;line-height:0;}
.btn--sound.is-playing{color:var(--st-color-accent,#B51F29);border-color:var(--st-color-accent,#B51F29);}

/* Slideshow: migrierte Intro-Absaetze aus dem frueheren Intro-Feld (31.07.) */
.stm-ss-intro{color:var(--st-color-secondary,#034B91);font-weight:600;}

/* 31.07.: "Alle News"-Button neben den Karussell-Pfeilen */
.stm-cards__arrows{display:flex;align-items:center;gap:.6rem;}
.stm-cards__arrows .btn{margin-right:.5rem;}
