/* Full editorial quotations: no carousel, rating, clipping, or read-more gate. */
[data-course-testimonial][hidden]{display:none!important;}
[data-course-testimonial]{padding:clamp(56px,8vh,88px) 26px;color:var(--ink,#1a1b24);background:var(--paper,#f7f6f2);}
[data-course-testimonial] .ct-inner{max-width:1128px;margin-inline:auto;}
[data-course-testimonial] .ct-heading{margin-bottom:32px;}
[data-course-testimonial] .ct-eyebrow{margin:0 0 12px;color:var(--grn-d,#297e46);font:700 12px/1.5 var(--sans,sans-serif);letter-spacing:.08em;text-transform:uppercase;}
[data-course-testimonial] h2{margin:0;font-size:clamp(30px,4vw,48px);line-height:1.08;letter-spacing:-.035em;max-width:24ch;}
[data-course-testimonial] .ct-items{display:grid;gap:32px;}
[data-course-testimonial] .ct-card{display:grid;grid-template-columns:160px minmax(0,1fr);column-gap:clamp(24px,4vw,52px);row-gap:20px;margin:0;padding:32px 0 0;border-top:1px solid var(--line,#d8d9d4);}
[data-course-testimonial] .ct-portrait{grid-column:1;grid-row:1 / 3;align-self:start;display:block;width:160px;height:auto;border-radius:16px;}
[data-course-testimonial] .ct-quote{grid-column:2;min-width:0;max-width:64ch;margin:0;font:500 clamp(17px,1.6vw,20px)/1.65 var(--sans,sans-serif);overflow-wrap:anywhere;}
[data-course-testimonial] .ct-text{margin:0;white-space:pre-wrap;}
[data-course-testimonial] .ct-person{grid-column:2;display:grid;gap:5px;align-content:start;font:500 14px/1.5 var(--sans,sans-serif);overflow-wrap:anywhere;}
[data-course-testimonial] .ct-author{font-size:16px;}
[data-course-testimonial] .ct-context{color:var(--mut,#555861);}
@media(max-width:599px){
  [data-course-testimonial]{padding-inline:24px;}
  [data-course-testimonial] .ct-card{grid-template-columns:88px minmax(0,1fr);column-gap:18px;row-gap:24px;padding-top:24px;}
  [data-course-testimonial] .ct-portrait{width:88px;grid-row:1;border-radius:12px;}
  [data-course-testimonial] .ct-person{grid-column:2;grid-row:1;align-self:center;}
  [data-course-testimonial] .ct-quote{grid-column:1 / -1;grid-row:2;}
}

/* Course voices share the course grid, section rhythm and brand components.
   Scope excludes the homepage slider, which uses the same data renderer. */
.ct-section[data-course-testimonial]{background:transparent;margin-block:0;}
.ct-section[data-course-testimonial] .ct-inner{max-width:none;}
.ct-section[data-course-testimonial] .ct-heading{margin-bottom:var(--sp-5,32px);}
.ct-section[data-course-testimonial] h2{max-width:24ch;margin-top:12px;}
.ct-section[data-course-testimonial] h2 .hl{display:inline-block;hyphens:none;}
.ct-section[data-course-testimonial] .ct-card{
  grid-template-columns:200px minmax(0,1fr);
  grid-template-rows:auto 1fr;
  column-gap:clamp(32px,4vw,56px);row-gap:24px;
  padding:clamp(24px,3.5vw,48px);
  background:var(--cream,#F4F6F9);
  border:1px solid var(--line);
  border-radius:var(--r-l,28px);
  align-items:start;
}
.ct-section[data-course-testimonial] .ct-portrait{
  grid-column:1;grid-row:1;width:100%;height:auto;
  border-radius:var(--r-sm,16px);
}
.ct-section[data-course-testimonial] .ct-person{
  grid-column:1;grid-row:2;gap:8px;
  font-size:14px;line-height:1.55;
}
.ct-section[data-course-testimonial] .ct-author{font-size:17px;line-height:1.35;}
.ct-section[data-course-testimonial] .ct-context{color:var(--soft);}
.ct-section[data-course-testimonial] .ct-quote{
  grid-column:2;grid-row:1 / 3;max-width:62ch;
  font-size:clamp(18px,1.65vw,22px);line-height:1.65;
  font-weight:500;letter-spacing:-.015em;
}
@media(max-width:767px){
  .ct-section[data-course-testimonial] .ct-heading{margin-bottom:24px;}
  .ct-section[data-course-testimonial] .ct-card{
    grid-template-columns:88px minmax(0,1fr);grid-template-rows:auto auto;gap:24px 20px;
    padding:24px;border-radius:var(--r-m,24px);
  }
  .ct-section[data-course-testimonial] .ct-portrait{grid-column:1;grid-row:1;}
  .ct-section[data-course-testimonial] .ct-person{grid-column:2;grid-row:1;align-self:center;}
  .ct-section[data-course-testimonial] .ct-quote{grid-column:1 / -1;grid-row:2;}
}
@media(max-width:359px){
  .ct-section[data-course-testimonial] .ct-card{padding:20px;grid-template-columns:64px minmax(0,1fr);column-gap:16px;}
}

/* Approved course-quote layout; the homepage retains its separate presentation. */
.ct-section.ct-reference[data-course-testimonial]{--ct-portrait-size:128px;}
.ct-section.ct-reference[data-course-testimonial] .ct-card{
  display:block;padding:0;border:0;background:var(--bg,#fff);
  border-radius:var(--r-l,28px);box-shadow:none;
}
.ct-section.ct-reference[data-course-testimonial] .ct-quote{
  max-width:none;margin:0;
  padding:32px clamp(24px,5vw,72px) calc(var(--ct-portrait-size) / 2 + 40px);
  font-size:clamp(20px,2.2vw,30px);font-weight:500;line-height:1.5;
  letter-spacing:-.015em;text-align:center;
}
.ct-section.ct-reference[data-course-testimonial] .ct-text{max-width:46ch;margin-inline:auto;}
.ct-section.ct-reference[data-course-testimonial] .ct-mark{
  display:block;max-width:24ch;margin-inline:auto;
  color:var(--grn-d,#297E46);font-size:88px;font-weight:800;line-height:.85;
  user-select:none;
}
.ct-section.ct-reference[data-course-testimonial] .ct-mark-open{text-align:left;margin-bottom:8px;}
.ct-section.ct-reference[data-course-testimonial] .ct-mark-close{text-align:right;margin-top:16px;}
.ct-section.ct-reference[data-course-testimonial] .ct-person{
  display:grid;justify-items:center;gap:12px;margin:0;padding:0 24px 36px;
  background:color-mix(in srgb,var(--lime,#D1FDAB) 38%,var(--bg,#fff));
  border-radius:0 0 var(--r-l,28px) var(--r-l,28px);
  text-align:center;
}
.ct-section.ct-reference[data-course-testimonial] .ct-portrait{
  grid-column:auto;grid-row:auto;display:block;
  width:var(--ct-portrait-size);height:var(--ct-portrait-size);
  margin-top:calc(var(--ct-portrait-size) / -2);margin-bottom:4px;
  border-radius:50%;object-fit:cover;object-position:var(--ct-portrait-position,50% 35%);
}
.ct-reference[data-course-testimonial="lern-entwicklungshelfer"],
.ct-reference[data-course-testimonial="sozialpaedagogische-assistenz"],
.ct-reference[data-course-testimonial="systemische-beratung"]{--ct-portrait-position:67% 35%;}
.ct-section.ct-reference[data-course-testimonial] .ct-portrait-frame{
  display:block;width:var(--ct-portrait-size);height:var(--ct-portrait-size);
  margin-top:calc(var(--ct-portrait-size) / -2);margin-bottom:4px;
  border-radius:50%;overflow:hidden;
}
.ct-section.ct-reference[data-course-testimonial] .ct-portrait-frame .ct-portrait{
  margin:0;border-radius:0;transform:scale(var(--ct-portrait-zoom,1));
  transform-origin:var(--ct-portrait-origin,50% 50%);
}
.ct-reference[data-course-testimonial="fachkraft-kleinkind"]{--ct-portrait-zoom:1.5;--ct-portrait-origin:50% 0%;}
.ct-reference[data-course-testimonial="fachkraft-inklusion"]{--ct-portrait-zoom:1.5;--ct-portrait-origin:0% 50%;--ct-portrait-position:50% 100%;}
.ct-reference[data-course-testimonial="kita-fachkraft-nrw"]{--ct-portrait-zoom:2.4;--ct-portrait-origin:66% 75%;}
.ct-section.ct-reference[data-course-testimonial] .ct-author{font-size:20px;line-height:1.35;}
.ct-section.ct-reference[data-course-testimonial] .ct-context{max-width:52ch;font-size:15px;line-height:1.5;}
@media(max-width:767px){
  .ct-section.ct-reference[data-course-testimonial]{--ct-portrait-size:96px;}
  .ct-section.ct-reference[data-course-testimonial] .ct-quote{padding:24px 20px calc(var(--ct-portrait-size) / 2 + 24px);}
  .ct-section.ct-reference[data-course-testimonial] .ct-mark{font-size:64px;}
  .ct-section.ct-reference[data-course-testimonial] .ct-person{padding-inline:20px;padding-bottom:28px;}
  .ct-section.ct-reference[data-course-testimonial] .ct-author{font-size:18px;}
}

/* An explicitly portrait-free original has no empty image space. */
.ct-section.ct-reference[data-course-testimonial] .ct-card--text-only .ct-quote{padding-bottom:32px;}
.ct-section.ct-reference[data-course-testimonial] .ct-card--text-only .ct-person{padding-top:32px;}
