/* ============================= */
/* HOME – Testimonials Slider */
/* ============================= */


.home .testimonials-wrapper .collection_content.col-testimonials-bild,
.home .testimonials-wrapper .collection_content.col-testimonials-title,
.home .testimonials-wrapper .collection_content.col-testimonials-author-position {
  display: none;
}

.home .testimonials-wrapper {
  --ts-gap: 40px;
  --ts-card-width: clamp(260px, 70vw, 470px);

  width: 100%;
  position: relative;
  overflow: hidden;

  background: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);

  display: flex;
  align-items: center;

  height: auto !important;
  min-height: 150px;
  padding: 0 !important;

  z-index: 2;
  touch-action: pan-y;
}

.home .testimonials-wrapper .testimonials-track {
  display: flex;
  gap: var(--ts-gap);
  will-change: transform;
  flex-wrap: nowrap;
}

.home .testimonials-wrapper .collection_list.col-testimonials {
  flex: 0 0 var(--ts-card-width);
  max-width: var(--ts-card-width);
  box-sizing: border-box;
  cursor: pointer;
}

.home .testimonials-wrapper .collection_container {
  position: relative;
  padding: 18px 18px 18px 72px;
  box-sizing: border-box;
  width: 100%;
  z-index: 0;
  isolation: isolate;
}

.home .testimonials-wrapper .collection_container::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 93px;
  height: 80px;
  background-image: url("/userdata/02_Kollektionen/Icons/Vereinigungsmenge%201.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  pointer-events: none;
  opacity: 0.6;
  z-index: 0;
}

.home .testimonials-wrapper .collection_content.col-testimonials-text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;

  font-family: var(--ff-body);
  font-size: var(--fs-600);
  font-weight: var(--fw-regular);
  line-height: 1.45;

  color: var(--clr-comments-text);
  margin-bottom: 8px;

  word-break: break-word;
  overflow-wrap: anywhere;
  hyphens: auto;

  position: relative;
  z-index: 1;
}

.home .testimonials-wrapper .collection_content.col-testimonials-text::before { content: "“"; }
.home .testimonials-wrapper .collection_content.col-testimonials-text::after { content: "”"; }

.home .testimonials-wrapper .collection_content.col-propeller-testimonials-tag,
.home .testimonials-wrapper .collection_content.col-testimonials-author-org {
  display: inline;
  font-family: var(--ff-body);
  font-size: var(--fs-600);
  font-weight: var(--fw-regular);
  color: var(--clr-accent);
  word-break: break-word;
  overflow-wrap: anywhere;
  position: relative;
  z-index: 1;
}

.home .testimonials-wrapper .collection_content.col-testimonials-author-org::before {
  content: " · ";
}

/* Full-card overlay link */
.home .testimonials-wrapper .ts-card-link {
  position: absolute;
  inset: 0;
  display: block;
  z-index: 2;
  border-radius: var(--br-keyfact);
}

/* Button stays above overlay */
.home .testimonials-wrapper .collection_link,
.home .testimonials-wrapper .collection_link a {
  position: relative;
  z-index: 3;
}

.home #content,
.home #content .content-selector {
  padding: 0 !important;
  overflow: visible !important;
}

@media (max-width: 768px) {
  .home .testimonials-wrapper {
    --ts-gap: 16px;
    min-height: 140px;
  }

  .home .testimonials-wrapper .collection_container {
    padding: 14px 14px;
    min-width: 300px;
  }

  .home .testimonials-wrapper .collection_container::before {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 160px;
    height: 140px;
    opacity: 0.12;
  }

  .home .testimonials-wrapper .collection_content.col-testimonials-text {
    -webkit-line-clamp: 4;
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 6px;
  }

  .home .testimonials-wrapper .collection_content.col-propeller-testimonials-tag,
  .home .testimonials-wrapper .collection_content.col-testimonials-author-org {
    font-size: 14px;
  }
}

@media (max-width: 500px) {
  .home .testimonials-wrapper {
    --ts-gap: 12px;
    --ts-card-width: min(92vw, 480px);
    min-height: 130px;
  }

  .home .testimonials-wrapper .collection_content.col-testimonials-text {
    -webkit-line-clamp: 5;
    font-size: 13px;
  }

  .home .testimonials-wrapper .collection_content.col-propeller-testimonials-tag,
  .home .testimonials-wrapper .collection_content.col-testimonials-author-org {
    display: block;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.25;
  }

  .home .testimonials-wrapper .collection_content.col-testimonials-author-org::before {
    content: "";
  }

  .home .testimonials-wrapper .collection_container::before {
    width: 190px;
    height: 170px;
    opacity: 0.12;
  }
}





/* =========================================================
   TESTIMONIALS — Cards Grid 
========================================================= */



.testimonials #content .container#position{
  padding-top: 1.5rem;
}

/* Grid wrapper */
.testimonials #content .wrapper-col-propeller-testimonials{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 22px;
  padding: 0;
}

/* One card column */
.testimonials #content .collection_list.col-testimonials{
  width: calc(33.3333% - 15px);
  box-sizing: border-box;
  margin: 0 !important;
  padding: 0 !important;
}

/* Card container */
.testimonials #content
.collection_list.col-testimonials
.collection_container{
  background: #fff;
  border-radius: var(--br-keyfact) !important;
  box-shadow: 0 0 12px rgba(0,0,0,.12);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  height: 100%;
  position: relative;
  text-align: center;
  transition: transform .2s ease, box-shadow .2s ease;
}



/* Image */
.testimonials #content
.collection_list.col-testimonials
.col-testimonials-bild{
  height: 190px;
  position: relative;
  overflow: hidden;
}

.testimonials #content
.collection_list.col-testimonials
.col-testimonials-bild img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.testimonials #content
.collection_list.col-testimonials
.col-testimonials-bild::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(0,0,0,.05),
    rgba(0,0,0,.45)
  );
  pointer-events: none;
}

/* Title — centered, max 2 lines */
.testimonials #content
.collection_list.col-testimonials
.col-testimonials-title{
  padding: 18px 22px 0;
  font-family: var(--ff-heading);
  font-weight: var(--fw-bold);
  font-size: var(--fs-news-title);
  line-height: 1.25;
  color: var(--fc-primary);

  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;

  min-height: calc(1.25em * 2);
  margin: 0;
}

.testimonials #content
.collection_list.col-testimonials
.col-testimonials-title::after{
  content: "";
  display: block;
  width: 56px;
  height: 3px;
  background: var(--clr-accent);
  margin: 12px auto 0;
  border-radius: 2px;
}

/* Text — max 2 lines */
.testimonials #content
.collection_list.col-testimonials
.col-testimonials-text{
  margin-top: 12px;
  padding: 0 22px;
  font-family: var(--ff-body);
  font-size: 16px;
  line-height: 1.55;
  color: rgba(44,44,44,.78);

  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;

  min-height: calc(1.55em * 2);
  word-break: break-word;
  overflow-wrap: anywhere;
  hyphens: auto;
}

.testimonials #content
.collection_list.col-testimonials
.col-testimonials-text::before{ content: "“"; }

.testimonials #content
.collection_list.col-testimonials
.col-testimonials-text::after{ content: "”"; }

/* Hide organization */
.testimonials #content
.collection_list.col-testimonials
.col-testimonials-author-org{
  display: none !important;
}

/* Meta row (name + position) */
.testimonials #content
.collection_list.col-testimonials
.testimonials-meta-row{
  margin-top: 14px;
  padding: 0 22px;
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;

  color: var(--clr-accent);
  font-family: var(--ff-body);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.2;
}

.testimonials #content
.collection_list.col-testimonials
.testimonials-meta-row
.col-propeller-testimonials-tag,
.testimonials #content
.collection_list.col-testimonials
.testimonials-meta-row
.col-testimonials-author-position{
  color: var(--clr-accent);
  font-size: 16px;
  font-weight: 400;
  margin: 0 !important;
  padding: 0 !important;
}

/* Dot separator */
.testimonials #content
.collection_list.col-testimonials
.testimonials-meta-row
.col-testimonials-author-position::before{
  content: "•";
  margin-right: 10px;
  color: var(--clr-accent);
  font-size: 16px;
  font-weight: 400;
}

/* CTA */
.testimonials #content
.collection_list.col-testimonials
.collection_link{
  padding: 18px 22px 22px;
  margin-top: auto;
}

.testimonials #content
.collection_list.col-testimonials
.collection_link .button{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  border-radius: var(--br-button);
  background: var(--clr-accent);
  color: #fff;
  font-family: var(--ff-body);
  font-size: 14px;
  text-decoration: none;
  transition: transform .15s ease, filter .15s ease;
}


/* =========================
   Responsive
========================= */

@media (max-width: 1100px){
  .testimonials #content .collection_list.col-testimonials{
    width: calc(50% - 11px);
  }
}

@media (max-width: 640px){
  .testimonials #content .wrapper-col-propeller-testimonials{
    gap: 16px;
  }

  .testimonials #content .collection_list.col-testimonials{
    width: 100%;
  }

  .testimonials #content .collection_list.col-testimonials .col-testimonials-bild{
    height: 210px;
  }

  .testimonials #content .collection_list.col-testimonials .col-testimonials-title{
    padding: 16px 16px 0;
    font-size: 18px;
  }

  .testimonials #content .collection_list.col-testimonials .col-testimonials-text{
    padding: 0 16px;
    font-size: 15px;
  }

  .testimonials #content .collection_list.col-testimonials .testimonials-meta-row{
    padding: 0 16px;
    font-size: 16px;
  }

  .testimonials #content .collection_list.col-testimonials .collection_link{
    padding: 16px 16px 18px;
  }

  .testimonials #content .collection_list.col-testimonials .collection_link .button{
    width: 100%;
  }
}

@media (max-width: 360px){
  .testimonials #content .collection_list.col-testimonials .col-testimonials-bild{
    height: 190px;
  }
}




/* Testimonials — area 2 white background */
.testimonials #area-2.main-screen.grey{
  background-color: #fff !important;
}

.testimonials #area-2.main-screen.grey{
  background: var(--clr-primary-white, #ffffff);
  padding: 1rem 0 !important;
  position: relative;
}
.testimonials #area-4{
  display: none !important;
}

.testimonials #content{
  padding-bottom: 2rem !important;
}

.testimonials #area-9{
  padding-top: 2rem !important;
}







/* =========================================================
   TESTIMONIALS FULL PREVIEW — FINAL LAYOUT
========================================================= */

body.mt.testimonials.full_preview #content{
  padding-bottom: 5rem !important;
}

/* full preview wrapper */
body.mt.testimonials.full_preview #content
.collection_full.col-testimonials{
  width: 100%;
  padding: 0;
  margin: 0;
}

/* main container = 2 columns */
body.mt.testimonials.full_preview #content
.collection_full.col-testimonials
.collection_container{
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 60px;
  align-items: start;

  background: transparent;
  box-shadow: none;
  padding: 0;
  height: auto;
  text-align: left;
}

/* =========================================================
   BACK LINKS
========================================================= */

body.mt.testimonials.full_preview #content .back_to_overview{
  width: 100%;
  margin: 0 0 14px;
}

body.mt.testimonials.full_preview #content .back_to_overview a,
body.mt.testimonials.full_preview #content #backButton{
  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 8px 14px;
  border-radius: var(--br-button);
  background: #fff;

  border: 1px solid rgba(34,34,34,.14);
  color: var(--fc-primary);
  font-family: var(--ff-body);
  font-size: 14px;
  text-decoration: none;

  transition: transform .15s ease, border-color .15s ease, color .15s ease;
}

body.mt.testimonials.full_preview #content .back_to_overview a:hover,
body.mt.testimonials.full_preview #content #backButton:hover{
  transform: translateY(-1px);
  border-color: rgba(51,153,51,.35);
  color: var(--clr-accent);
}

body.mt.testimonials.full_preview #content #backButton{
  margin-left: 10px;
  cursor: pointer;
}

/* =========================================================
   TITLE
========================================================= */

body.mt.testimonials.full_preview #content .col-testimonials-title{
  margin: 0 0 10px;
  padding: 0;

  font-family: var(--ff-heading);
  font-size: 26px;
  font-weight: 700;
  color: var(--fc-primary);
  line-height: 1.25;
}

body.mt.testimonials.full_preview #content .col-testimonials-title::after{
  content: "";
  display: block;
  width: 56px;
  height: 3px;
  background: var(--clr-accent);
  margin: 10px 0 0;
  border-radius: 2px;
}

/* =========================================================
   FULL TEXT
========================================================= */

body.mt.testimonials.full_preview #content .col-testimonials-text{
  margin: 14px 0 22px;
  font-family: var(--ff-body);
  font-size: 15px;
  line-height: 1.6;
  color: rgba(34,34,34,.75);

  display: block;
  overflow: visible;
  -webkit-line-clamp: unset;
}

body.mt.testimonials.full_preview #content .col-testimonials-text::before,
body.mt.testimonials.full_preview #content .col-testimonials-text::after{
  content: "" !important;
}

/* =========================================================
   META BLOCK — ORDER LIKE MOCKUP
========================================================= */


body.mt.testimonials.full_preview #content .testimonials-meta-row{
  display: block !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
}

body.mt.testimonials.full_preview #content
.testimonials-meta-row
.col-propeller-testimonials-tag,
body.mt.testimonials.full_preview #content
.col-testimonials-author-role,
body.mt.testimonials.full_preview #content
.testimonials-meta-row
.col-testimonials-author-position,
body.mt.testimonials.full_preview
.collection_content.col-testimonials-author-org{
  display: block !important;
  font-family: var(--ff-body);
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
  color: var(--clr-accent) !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* spacing between lines */
body.mt.testimonials.full_preview #content
.testimonials-meta-row
.col-propeller-testimonials-tag{
  margin-bottom: 6px !important;
}

body.mt.testimonials.full_preview #content
.col-testimonials-author-role{
  margin-bottom: 6px !important;
}

body.mt.testimonials.full_preview #content
.testimonials-meta-row
.col-testimonials-author-position{
  margin-bottom: 6px !important;
}

/* remove any dots / separators */
body.mt.testimonials.full_preview #content
.testimonials-meta-row
.col-testimonials-author-position::before{
  content: "" !important;
  margin: 0 !important;
}

/* =========================================================
   IMAGE (RIGHT COLUMN)
========================================================= */

body.mt.testimonials.full_preview #content .col-testimonials-bild{
  position: relative;
  width: 100%;
  height: auto !important;
  aspect-ratio: 690 / 333 !important;

  border-radius: var(--br-keyfact) !important;
  overflow: hidden !important;
}

body.mt.testimonials.full_preview #content .col-testimonials-bild img{
  width: 100% !important;
  height: 100% !important;
  display: block;
  object-fit: cover !important;
}

/* =========================================================
   AREA 4 — GALLERY BLOCK
========================================================= */

body.mt.testimonials.full_preview #area-4{
  display: block !important;
  background: var(--clr-primary-white, #ffffff);
}

body.mt.testimonials.full_preview #area-4 .container{
  max-width: var(--banner-max-width, 1380px);
}

body.mt.testimonials.full_preview #area-4 .col-propeller-testimonials-slider{
  margin: 0;
  padding: 0;
}

/* owl carousel */
body.mt.testimonials.full_preview #area-4 .owl-carousel,
body.mt.testimonials.full_preview #area-4 .gallery-item{
  border-radius: var(--br-keyfact) !important;
  overflow: hidden;
}

body.mt.testimonials.full_preview #area-4 .gallery-item img{
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* owl nav */
body.mt.testimonials.full_preview #area-4 .owl-nav button{
  width: 42px;
  height: 42px;
  border-radius: 999px;
}

body.mt.testimonials.full_preview #area-4 .owl-nav button span{
  color: var(--clr-accent);
  font-size: 28px;
  line-height: 1;
}

/* caption */
body.mt.testimonials.full_preview #area-4 .gallery-caption{
  padding: 10px 14px;
  font-family: var(--ff-body);
  font-size: 14px;
  color: rgba(34,34,34,.72);
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 900px){
  body.mt.testimonials.full_preview #content
  .collection_full.col-testimonials
  .collection_container{
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

@media (max-width: 366px){
  body.mt.testimonials.full_preview #content .testimonials-meta-row{
    font-size: 14px !important;
    gap: 0 !important;
  }
}

body.mt.testimonials.full_preview #area-2,
body.mt.testimonials.full_preview #area-9{
  display: none !important;
}




/* =========================================================
   TESTIMONIALS FULL PREVIEW  #area-4
========================================================= */

body.mt.testimonials.full_preview #area-4 > .container{
  max-width: var(--banner-max-width, 1380px) !important;
  width: 100% !important;
}

body.mt.testimonials.full_preview #area-4{
  background: var(--clr-primary-light, #F2F2F2) !important;
  position: relative !important;
}

/* slider wrapper */
body.mt.testimonials.full_preview #area-4 .col-propeller-testimonials-slider{
  width: 100% !important;
  padding: 0px 0 20px !important;
  position: relative !important;
}

/* owl base */
body.mt.testimonials.full_preview #area-4 .owl-carousel{
  width: 100% !important;
  padding: 0 38px !important;
  box-sizing: border-box !important;
}

body.mt.testimonials.full_preview #area-4 .owl-stage-outer{
  overflow: hidden !important;
}

body.mt.testimonials.full_preview #area-4 .owl-stage{
  padding: 0 !important;
}

body.mt.testimonials.full_preview #area-4 .owl-item{
  padding: 0 !important;
  box-sizing: border-box !important;
}

body.mt.testimonials.full_preview #area-4 .owl-item > *{
  width: 100% !important;
}

body.mt.testimonials.full_preview #area-4 .gallery-item{
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  box-sizing: border-box !important;
}

body.mt.testimonials.full_preview #area-4 .gallery-item .MagicZoom{
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.mt.testimonials.full_preview #area-4 .gallery-item img{
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 280px !important;
  object-fit: cover !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: var(--br-keyfact) !important;
}

body.mt.testimonials.full_preview #area-4 .gallery-caption{
  padding: 12px 0 0 !important;
  margin: 0 !important;
  font-size: var(--fs-400, 14px) !important;
  line-height: 1.45 !important;
  color: rgba(34,34,34,.72) !important;
}


body.mt.testimonials.full_preview #area-4 .owl-nav{
  position: absolute !important;
  top: 50% !important;
  left: 0 !important;
  width: 100% !important;
  transform: translateY(-50%) !important;
  display: flex !important;
  justify-content: space-between !important;
  pointer-events: none !important;
  margin: 0 !important;
}

body.mt.testimonials.full_preview #area-4 .owl-nav button{
  pointer-events: auto !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

body.mt.testimonials.full_preview #area-4 .owl-prev{
  margin-left: 14px !important;
}

body.mt.testimonials.full_preview #area-4 .owl-next{
  margin-right: 14px !important;
}

body.mt.testimonials.full_preview #area-4 .ps-arrow{
  display: inline-block !important;
  width: 44px !important;
  height: 44px !important;
  position: relative !important;
}

body.mt.testimonials.full_preview #area-4 .ps-arrow::before{
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 16px !important;
  height: 16px !important;
  border-right: 2px solid var(--clr-accent, #339933) !important;
  border-bottom: 2px solid var(--clr-accent, #339933) !important;
  transform: translate(-50%, -50%) rotate(-45deg) !important;
}

body.mt.testimonials.full_preview #area-4 .ps-arrow.ps-arrow-left::before{
  transform: translate(-50%, -50%) rotate(135deg) !important;
}

body.mt.testimonials.full_preview #area-4 .owl-dots{
  display: none !important;
}

@media (max-width: 1200px){
  body.mt.testimonials.full_preview #area-4 .owl-carousel{
    padding: 0 50px !important;
  }
  body.mt.testimonials.full_preview #area-4 .gallery-item img{
    height: 250px !important;
  }
}

@media (max-width: 900px){
  body.mt.testimonials.full_preview #area-4 .owl-carousel{
    padding: 0 44px !important;
  }
  body.mt.testimonials.full_preview #area-4 .gallery-item img{
    height: 220px !important;
  }
}
