/* KONTUR CMS 0.5.9.58 – Foto-Text-Slider, runde + eckige Variante */
.cms-photo-text-slider{
  --pts-ink:#071d37;
  --pts-muted:#617a92;
  --pts-blue:#0b63b6;
  --pts-bg:#eef3f7;
  --pts-line:rgba(7,29,55,.14);
  --pts-ease:cubic-bezier(.22,.61,.21,1);
  position:relative;
  padding:clamp(28px,4vw,54px) 0;
  background:transparent;
}
.cms-photo-text-slider__intro{
  width:min(1480px,calc(100% - clamp(28px,4vw,64px)));
  margin:0 auto clamp(18px,2vw,26px);
}
.cms-photo-text-slider__intro-wrap{max-width:860px;}
.cms-photo-text-slider__intro-kicker{
  display:block;
  margin:0 0 10px;
  color:var(--pts-blue);
  font:700 12px/1.2 inherit;
  letter-spacing:.19em;
  text-transform:uppercase;
}
.cms-photo-text-slider__intro h2{
  margin:0;
  color:var(--pts-ink);
  font-family:inherit;
  font-size:clamp(30px,3.1vw,50px);
  font-weight:600;
  line-height:1.04;
  letter-spacing:-.035em;
}
.cms-photo-text-slider__intro p{
  margin:14px 0 0;
  max-width:68ch;
  color:var(--pts-muted);
  font-size:clamp(15px,1.02vw,18px);
  line-height:1.65;
}
.cms-photo-text-slider__shell{
  width:min(1480px,calc(100% - clamp(28px,4vw,64px)));
  min-height:clamp(520px,42vw,680px);
  margin:0 auto;
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,52%) minmax(0,48%);
  overflow:hidden;
  border-radius:28px;
  background:transparent;
  border:1px solid rgba(215,226,236,.92);
  box-shadow:0 24px 70px rgba(20,49,77,.10);
}
.cms-photo-text-slider__media{
  position:relative;
  min-height:100%;
  overflow:hidden;
  margin:0;
  background:none;
  border-radius:28px 0 0 28px;
}
.cms-photo-text-slider__image{
  position:absolute;
  inset:0;
  margin:0;
  opacity:0;
  transform:translateX(-3.5%) scale(1.025);
  transition:opacity .78s cubic-bezier(.22,.61,.21,1),transform 1.08s var(--pts-ease);
  pointer-events:none;
}
.cms-photo-text-slider__image.is-active{
  opacity:1;
  transform:translateX(0) scale(1.005);
  z-index:2;
}
.cms-photo-text-slider__image img{
  width:100%;height:100%;display:block;object-fit:cover;
}
.cms-photo-text-slider__image::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(5,20,34,.03) 30%,rgba(5,20,34,.16) 100%),linear-gradient(0deg,rgba(5,20,34,.20),transparent 34%);
}
.cms-photo-text-slider__content{
  position:relative;
  min-width:0;
  background:linear-gradient(155deg,rgba(255,255,255,.97),rgba(234,240,246,.92));
  border-radius:0 28px 28px 0;
  overflow:hidden;
}
.cms-photo-text-slider__panel{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(34px,4.6vw,64px) clamp(36px,4.8vw,72px) 108px;
  opacity:0;
  transform:translateY(18px);
  pointer-events:none;
  transition:opacity .62s cubic-bezier(.22,.61,.21,1),transform .82s var(--pts-ease);
}
.cms-photo-text-slider__panel.is-active{
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
  z-index:2;
}
.cms-photo-text-slider__kicker{
  margin:0 0 14px;
  color:var(--pts-blue);
  font:700 12px/1.2 inherit;
  letter-spacing:.19em;
  text-transform:uppercase;
}
.cms-photo-text-slider__panel h3{
  max-width:15ch;
  margin:0 0 20px;
  color:var(--pts-ink);
  font-family:inherit;
  font-size:clamp(32px,3.25vw,52px);
  font-weight:600;
  line-height:1.02;
  letter-spacing:-.035em;
}
.cms-photo-text-slider__panel p{
  max-width:48ch;
  margin:0;
  color:var(--pts-muted);
  font-size:clamp(15px,1.05vw,18px);
  line-height:1.65;
  white-space:pre-line;
}
.cms-photo-text-slider__button{
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:26px;
  padding:12px 20px;
  border-radius:999px;
  border:1px solid rgba(7,29,55,.14);
  background:rgba(255,255,255,.76);
  color:var(--pts-ink);
  text-decoration:none;
  font-size:14px;
  font-weight:600;
  box-shadow:0 10px 30px rgba(23,54,82,.08),inset 0 1px 0 rgba(255,255,255,.92);
  transition:transform .25s ease,background .25s ease;
}
.cms-photo-text-slider__button:hover{transform:translateY(-2px);background:#fff}
.cms-photo-text-slider__tabs{
  position:absolute;
  left:52%;right:0;bottom:0;
  z-index:8;
  display:flex;
  gap:0;
  padding:0 clamp(24px,3vw,48px) 24px;
}
.cms-photo-text-slider__tab{
  appearance:none;
  flex:1 1 0;
  min-width:0;
  padding:12px 8px 13px;
  border:0;
  border-bottom:2px solid var(--pts-line);
  background:transparent;
  color:#71879a;
  cursor:pointer;
  font:600 11px/1.2 inherit;
  letter-spacing:.10em;
  text-transform:uppercase;
  text-align:center;
  transition:color .38s ease,border-color .42s ease,transform .38s ease;
}
.cms-photo-text-slider__tab:hover{color:var(--pts-ink)}
.cms-photo-text-slider__tab.is-active{
  color:var(--pts-blue);
  border-bottom-color:var(--pts-blue);
  transform:translateY(-1px);
}

/* Zweite Blockvariante: bewusst vollständig eckig. */
.cms-photo-text-slider--square .cms-photo-text-slider__shell,
.cms-photo-text-slider--square .cms-photo-text-slider__media,
.cms-photo-text-slider--square .cms-photo-text-slider__content{
  border-radius:0 !important;
}

/* Wechsel bleibt ruhig, auch bei schneller Folge von Klicks. */
.cms-photo-text-slider__image,
.cms-photo-text-slider__panel{
  will-change:opacity,transform;
}

@media (max-width:980px){
  .cms-photo-text-slider__shell{grid-template-columns:1fr;min-height:auto}
  .cms-photo-text-slider__media{min-height:360px;border-radius:28px 28px 0 0}
  .cms-photo-text-slider__content{min-height:430px;border-radius:0 0 28px 28px}
  .cms-photo-text-slider__tabs{left:0;padding:0 18px 18px}
  .cms-photo-text-slider__panel{padding:28px 24px 86px}
  .cms-photo-text-slider__panel h3{max-width:none}
}
@media (max-width:640px){
  .cms-photo-text-slider{padding:24px 0}
  .cms-photo-text-slider__media{min-height:280px}
  .cms-photo-text-slider__content{min-height:390px}
  .cms-photo-text-slider__tabs{flex-wrap:wrap;gap:6px;padding:0 14px 14px}
  .cms-photo-text-slider__tab{flex:1 1 calc(50% - 6px)}
}
