/* =============================================================================
   page-qualitaet.css  —  Seitenspezifische Komponenten der Qualitäts-Seite
   -----------------------------------------------------------------------------
   Laedt KONDITIONAL nur auf page-qualitaet.php (functions.php-Enqueue).
   Tokens (--green, --ink, --paper …), Basis (.btn, .kicker, .reveal, .field,
   .leadbox, .section, .num-tag) + Reveal-System kommen aus projecta-system.css.
   Hier NUR die qualitaets-eigenen Bausteine. Quelle: Mockup v1.1.0 (Theme-portiert).
   JEDE Regel unter .pds gescoped (Tokens NICHT neu definieren, Basis NICHT brechen).
   ============================================================================= */

/* === HERO — Prozess-Pipeline als Centerpiece === */
.pds .qhero { position:relative; padding:170px 0 90px; overflow:hidden; background:
  radial-gradient(60% 50% at 50% -6%,var(--mint) 0%,var(--paper-2) 38%,var(--paper) 70%); }
.pds .qhero::before { content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background-image:radial-gradient(rgba(90,144,35,.09) 1.1px,transparent 1.1px); background-size:26px 26px;
  -webkit-mask-image:radial-gradient(75% 60% at 50% 18%,#000,transparent 78%); mask-image:radial-gradient(75% 60% at 50% 18%,#000,transparent 78%); opacity:.7; }
.pds .qhero-top { position:relative; z-index:2; max-width:940px; margin:0 auto; text-align:center; }
.pds .qhero-top .kicker { margin-bottom:20px; }
.pds .qhero h1 { font-size:clamp(40px,5.6vw,78px); letter-spacing:-.045em; font-weight:900; line-height:1; }
.pds .qhero h1 .ln { display:block; overflow:hidden; }
.pds .qhero h1 .ln > span { display:block; transform:translateY(110%); }
html.js .pds .qhero h1 .ln > span { animation:qLineUp 1s var(--ease) forwards; }
html.js .pds .qhero h1 .ln:nth-child(1) > span { animation-delay:.26s; }
html.js .pds .qhero h1 .ln:nth-child(2) > span { animation-delay:.40s; }
@keyframes qLineUp { to { transform:translateY(0); } }
.pds .qhero h1 .hl { color:var(--green-deep); }
.pds .qhero .lead { font-size:clamp(17px,1.6vw,21px); color:var(--muted); max-width:680px; margin:24px auto 0; line-height:1.6; }
.pds .qhero-cta { display:flex; gap:14px; flex-wrap:wrap; justify-content:center; margin-top:34px; }
.pds .btn-arrow svg { transition:transform .3s var(--ease); }
.pds .btn:hover .btn-arrow svg { transform:translateX(5px); }

/* THE horizontal process pipeline */
.pds .pipeline { position:relative; z-index:2; margin:74px auto 0; max-width:1180px; }
.pds .pl-rail { position:absolute; left:7%; right:7%; top:46px; height:4px; border-radius:3px; background:var(--line-2); z-index:0; }
.pds .pl-rail .fill { position:absolute; inset:0; width:0; background:linear-gradient(90deg,var(--green-soft),var(--green),var(--green-deep)); border-radius:3px;
  transition:width 2.6s var(--ease-2); box-shadow:0 0 14px rgba(116,183,42,.55); }
html.js .pds .pipeline.in .pl-rail .fill { width:100%; }
.pds .pl-rail .spark { position:absolute; top:50%; left:0; width:13px; height:13px; border-radius:50%; background:var(--green-deep); transform:translate(-50%,-50%);
  box-shadow:0 0 0 6px rgba(116,183,42,.2),0 0 16px rgba(116,183,42,.9); opacity:0; }
html.js .pds .pipeline.in .pl-rail .spark { animation:qRailspark 2.6s var(--ease-2) forwards; }
@keyframes qRailspark { 0%{left:0;opacity:1} 92%{opacity:1} 100%{left:100%;opacity:0} }
.pds .pl-steps { position:relative; z-index:1; display:grid; grid-template-columns:repeat(5,1fr); gap:14px; }
.pds .pl-step { text-align:center; display:flex; flex-direction:column; align-items:center; opacity:0; transform:translateY(22px); transition:opacity .7s var(--ease),transform .7s var(--ease); }
html.js .pds .pipeline.in .pl-step { opacity:1; transform:none; }
html.js .pds .pipeline.in .pl-step:nth-child(1){ transition-delay:.15s; }
html.js .pds .pipeline.in .pl-step:nth-child(2){ transition-delay:.55s; }
html.js .pds .pipeline.in .pl-step:nth-child(3){ transition-delay:.95s; }
html.js .pds .pipeline.in .pl-step:nth-child(4){ transition-delay:1.35s; }
html.js .pds .pipeline.in .pl-step:nth-child(5){ transition-delay:1.75s; }
.pds .pl-node { width:92px; height:92px; border-radius:26px; background:#fff; border:1.5px solid var(--line); display:grid; place-items:center; position:relative;
  box-shadow:0 22px 44px -26px rgba(20,50,25,.4); transition:.45s var(--ease); }
.pds .pl-node svg { color:var(--green-deep); transition:.45s; }
.pds .pl-step:hover .pl-node { transform:translateY(-8px) scale(1.04); border-color:transparent; box-shadow:0 30px 56px -22px rgba(116,183,42,.55); background:linear-gradient(135deg,var(--green),var(--green-deep)); }
.pds .pl-step:hover .pl-node svg { color:#fff; }
.pds .pl-node .idx { position:absolute; top:-10px; right:-10px; width:30px; height:30px; border-radius:50%; background:var(--ink); color:#fff; font-size:13px; font-weight:800; display:grid; place-items:center; border:3px solid var(--paper); font-variant-numeric:tabular-nums; }
.pds .pl-step h4 { font-size:16px; margin-top:18px; letter-spacing:-.02em; color:var(--ink); }
.pds .pl-step p { font-size:13px; color:var(--muted); margin-top:6px; max-width:170px; line-height:1.45; }
.pds .pl-foot { text-align:center; margin-top:46px; font-size:14.5px; color:var(--ink-2); font-weight:600; }
.pds .pl-foot b { color:var(--green-deep); }

/* === KOMPONENTEN — Hersteller-Grid === */
.pds .brands-head { display:grid; grid-template-columns:.95fr 1.05fr; gap:48px; align-items:end; margin-bottom:54px; }
.pds .brands-head h2 { letter-spacing:-.04em; }
.pds .brands-head .num-tag { display:flex; align-items:center; gap:12px; margin-bottom:20px; color:var(--muted-2); letter-spacing:.18em; }
.pds .brands-head .num-tag::before { content:""; width:30px; height:1.5px; background:var(--line-2); }
.pds .brands-head .aside { padding-bottom:6px; }
.pds .brands-head .aside p { color:var(--muted); font-size:17px; line-height:1.6; }
.pds .brand-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.pds .brand-grid .bx-2 { grid-column:span 2; }
.pds .bx { position:relative; background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:38px 34px; display:flex; flex-direction:column; justify-content:space-between; min-height:208px; overflow:hidden; transition:transform .45s var(--ease),box-shadow .45s,border-color .45s; }
.pds .bx::after { content:""; position:absolute; right:-50px; bottom:-50px; width:180px; height:180px; border-radius:50%; background:radial-gradient(circle,rgba(116,183,42,.12),transparent 70%); opacity:0; transition:opacity .45s; }
.pds .bx:hover { transform:translateY(-9px); box-shadow:var(--shadow); border-color:transparent; }
.pds .bx:hover::after { opacity:1; }
.pds .bx .logo-row { height:64px; display:flex; align-items:center; }
.pds .bx img.brand { max-height:54px; max-width:210px; width:auto; object-fit:contain; filter:grayscale(100%) opacity(.6); transition:.45s var(--ease); }
.pds .bx:hover img.brand { filter:grayscale(0) opacity(1); transform:scale(1.04); }
.pds .bx .word { font-weight:900; font-size:34px; color:#a7b59c; letter-spacing:-.03em; transition:.45s var(--ease); }
.pds .bx:hover .word { color:var(--green-deep); }
.pds .bx .role { display:flex; align-items:flex-end; justify-content:space-between; gap:14px; margin-top:auto; }
.pds .bx .role .rt { color:var(--ink); font-weight:700; font-size:16px; letter-spacing:-.01em; }
.pds .bx .role .rs { color:var(--muted); font-size:13.5px; margin-top:4px; line-height:1.5; max-width:330px; }
.pds .bx .tier { font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--green-ink); background:var(--paper-3); padding:6px 12px; border-radius:100px; white-space:nowrap; }

/* === INSTALLATIONS-STANDARDS — numbered editorial, asymmetrisch === */
.pds .std-wrap { display:grid; grid-template-columns:.82fr 1.18fr; gap:64px; align-items:start; }
.pds .std-left { position:sticky; top:120px; }
.pds .std-left h2 { font-size:clamp(30px,3.6vw,46px); letter-spacing:-.04em; margin:18px 0 18px; }
.pds .std-left p { color:var(--muted); font-size:17px; line-height:1.65; margin-bottom:28px; max-width:380px; }
.pds .std-quote { margin-top:30px; padding:22px 24px; border-left:4px solid var(--green); background:var(--paper-2); border-radius:0 16px 16px 0; }
.pds .std-quote .q { font-size:21px; font-weight:800; color:var(--ink); letter-spacing:-.02em; line-height:1.25; }
.pds .std-quote .qa { font-size:13.5px; color:var(--muted); margin-top:10px; }
.pds .std-list { display:flex; flex-direction:column; }
.pds .std-item { display:grid; grid-template-columns:auto 1fr; gap:26px; padding:30px 0; border-bottom:1px solid var(--line); align-items:start; position:relative; }
.pds .std-item:last-child { border-bottom:0; }
.pds .std-item .sn { font-weight:900; font-size:clamp(34px,4vw,54px); color:var(--line-2); letter-spacing:-.04em; line-height:.9; transition:.4s var(--ease); font-variant-numeric:tabular-nums; }
.pds .std-item:hover .sn { color:var(--green); }
.pds .std-item h3 { font-size:22px; letter-spacing:-.02em; margin-bottom:8px; display:flex; align-items:center; gap:12px; }
.pds .std-item h3 .ic { width:34px; height:34px; border-radius:11px; background:var(--paper-3); display:grid; place-items:center; flex:0 0 auto; transition:.4s var(--ease); }
.pds .std-item:hover h3 .ic { background:var(--green); transform:rotate(-4deg); }
.pds .std-item:hover h3 .ic svg { color:#fff; }
.pds .std-item h3 .ic svg { color:var(--green-deep); transition:.4s; }
.pds .std-item p { color:var(--muted); font-size:15.5px; line-height:1.65; }

/* === NAHAUFNAHME — Verarbeitungs-Detail (Figur + Copy) === */
.pds .detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.pds .detail-figure { position:relative; }
.pds .detail-img { border-radius:24px; overflow:hidden; box-shadow:30px 44px 90px -44px rgba(20,50,25,.55); border:6px solid #fff; }
.pds .detail-img img { width:100%; height:430px; object-fit:cover; display:block; }
.pds .detail-badge { position:absolute; right:-22px; bottom:-26px; background:#fff; border:1px solid var(--line); border-radius:18px; padding:16px 20px; box-shadow:0 30px 60px -30px rgba(20,50,25,.5); display:flex; align-items:center; gap:12px; }
.pds .detail-badge .ic { width:40px; height:40px; border-radius:12px; background:linear-gradient(135deg,var(--green),var(--green-deep)); display:grid; place-items:center; flex:0 0 auto; }
.pds .detail-badge .tt { font-size:14px; font-weight:800; color:var(--ink); letter-spacing:-.01em; line-height:1.2; }
.pds .detail-badge .tt small { display:block; font-weight:500; color:var(--muted); font-size:12px; margin-top:3px; }
.pds .detail-copy .num-tag { display:flex; align-items:center; gap:12px; margin-bottom:16px; color:var(--muted-2); letter-spacing:.18em; }
.pds .detail-copy .num-tag::before { content:""; width:30px; height:1.5px; background:var(--line-2); }
.pds .detail-copy h2 { letter-spacing:-.04em; margin-bottom:18px; }
.pds .detail-copy p.intro { color:var(--muted); font-size:17px; line-height:1.62; margin-bottom:26px; max-width:520px; }
.pds .detail-checks { display:grid; gap:15px; }
.pds .detail-checks li { list-style:none; display:flex; gap:14px; align-items:flex-start; }
.pds .detail-checks .ck { width:28px; height:28px; border-radius:9px; background:var(--green); display:grid; place-items:center; flex:0 0 auto; box-shadow:0 8px 18px -8px rgba(116,183,42,.8); }
.pds .detail-checks .tx { font-size:15px; color:var(--ink-2); }
.pds .detail-checks .tx b { color:var(--ink); font-weight:700; }

/* === PROOF — full-bleed Drohnen-Streifen === */
.pds .proof { position:relative; overflow:hidden; min-height:720px; display:flex; align-items:flex-start; background:var(--paper-2); }
.pds .proof img.bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transform:scale(1.06); animation:qSlowpan 32s ease-in-out infinite alternate; }
@keyframes qSlowpan { 0%{transform:scale(1.06) translate(0,0)} 100%{transform:scale(1.14) translate(-2%,1%)} }
.pds .proof::before { content:""; position:absolute; inset:0; background:
  linear-gradient(180deg,rgba(18,39,27,.20) 0%,transparent 26%,transparent 66%,rgba(18,39,27,.24) 100%); }
.pds .proof .wrap { position:relative; z-index:2; width:100%; padding-top:70px; padding-bottom:60px; }
.pds .proof .ptag { position:absolute; top:30px; right:34px; z-index:2; font-size:11.5px; color:var(--green-ink); background:rgba(255,255,255,.85); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); padding:7px 14px; border-radius:100px; border:1px solid var(--line); font-weight:600; letter-spacing:.03em; }
.pds .proof .pcap { max-width:560px; background:rgba(255,255,255,.88); -webkit-backdrop-filter:blur(10px) saturate(1.1); backdrop-filter:blur(10px) saturate(1.1); border:1px solid var(--line); border-radius:24px; padding:32px 36px; box-shadow:0 26px 64px -32px rgba(40,90,30,.45); }
.pds .proof .pcap .kicker .ln { background:linear-gradient(90deg,var(--green),transparent); }
.pds .proof h2 { color:var(--ink); font-size:clamp(28px,3.6vw,46px); letter-spacing:-.04em; margin:16px 0 14px; }
.pds .proof p { color:var(--ink-2); font-size:17px; line-height:1.6; max-width:500px; margin-bottom:18px; }
/* Beweis-Zahlen als dezentes Glas-Band am unteren Foto-Rand (Show-don't-tell: Zahlen AUF dem Beweis) */
.pds .proof-statband { position:absolute; left:0; right:0; bottom:0; z-index:2; background:rgba(255,255,255,.82); -webkit-backdrop-filter:blur(16px) saturate(1.15); backdrop-filter:blur(16px) saturate(1.15); border-top:1px solid rgba(255,255,255,.6); }
.pds .proof-statband .wrap { width:min(100% - 40px, var(--maxw)); margin-inline:auto; padding-top:18px; padding-bottom:18px; }
.pds .proof-stats { display:flex; gap:0; flex-wrap:wrap; align-items:center; }
.pds .proof-stats .ps { flex:1 1 0; min-width:160px; padding:0 32px; border-left:1px solid var(--line); }
.pds .proof-stats .ps:first-child { padding-left:0; border-left:0; }
.pds .proof-stats .ps .n { font-weight:900; font-size:clamp(26px,2.8vw,36px); color:var(--green-ink); letter-spacing:-.04em; line-height:1; font-variant-numeric:tabular-nums; }
.pds .proof-stats .ps .l { font-size:12.5px; color:var(--ink-2); margin-top:5px; max-width:180px; line-height:1.35; font-weight:500; }

/* === WERT — Split mit grossem Counter === */
.pds .value-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:60px; align-items:center; }
.pds .value-left .num-tag { display:flex; align-items:center; gap:12px; margin-bottom:20px; color:var(--muted-2); letter-spacing:.18em; }
.pds .value-left .num-tag::before { content:""; width:30px; height:1.5px; background:var(--line-2); }
.pds .value-left h2 { letter-spacing:-.04em; margin-bottom:18px; }
.pds .value-left p { color:var(--muted); font-size:17.5px; line-height:1.65; max-width:520px; margin-bottom:30px; }
.pds .value-benefits { display:grid; grid-template-columns:1fr 1fr; gap:14px 24px; max-width:520px; list-style:none; }
.pds .value-benefits li { list-style:none; display:flex; gap:12px; align-items:center; font-size:15.5px; font-weight:600; color:var(--ink-2); }
.pds .value-benefits .ck { width:26px; height:26px; border-radius:9px; background:var(--green); display:grid; place-items:center; flex:0 0 auto; box-shadow:0 8px 18px -8px rgba(116,183,42,.8); }
.pds .value-card { position:relative; background:linear-gradient(150deg,#fff,var(--paper-2)); border:1px solid var(--line); border-radius:28px; padding:46px 40px; text-align:center; box-shadow:var(--shadow-soft); overflow:hidden; }
.pds .value-card::before { content:""; position:absolute; top:-1px; left:32px; right:32px; height:4px; background:linear-gradient(90deg,var(--green),var(--green-soft)); border-radius:4px; }
.pds .value-card .vc-label { font-size:13px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); margin-bottom:10px; }
.pds .value-card .vc-num { font-weight:900; font-size:clamp(58px,8vw,92px); color:var(--green-deep); letter-spacing:-.05em; line-height:.92; font-variant-numeric:tabular-nums; }
.pds .value-card .vc-num .star { font-size:.4em; vertical-align:super; color:var(--green); }
.pds .value-card .vc-sub { color:var(--ink-2); font-size:16px; line-height:1.55; margin-top:14px; max-width:320px; margin-left:auto; margin-right:auto; }
.pds .value-card .vc-tagline { margin-top:24px; padding-top:20px; border-top:1px solid var(--line); font-weight:800; color:var(--ink); font-size:18px; letter-spacing:-.02em; }

/* === AUS EINER HAND — Kette === */
.pds .chain-head { max-width:760px; margin-bottom:50px; }
.pds .chain-head h2 { letter-spacing:-.04em; margin:16px 0 14px; }
.pds .chain-head p { color:var(--muted); font-size:17.5px; line-height:1.6; }
.pds .chain { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.pds .link { position:relative; background:#fff; border:1px solid var(--line); border-radius:20px; padding:30px 26px; transition:.45s var(--ease); }
.pds .link:hover { transform:translateY(-7px); box-shadow:var(--shadow); }
.pds .link .lk-ic { width:52px; height:52px; border-radius:15px; background:linear-gradient(135deg,var(--green),var(--green-deep)); display:grid; place-items:center; margin-bottom:18px; box-shadow:0 12px 26px -12px rgba(116,183,42,.7); transition:.4s var(--ease); color:#fff; font-size:20px; font-weight:800; font-variant-numeric:tabular-nums; }
.pds .link:hover .lk-ic { transform:scale(1.07) rotate(-4deg); }
.pds .link h4 { font-size:18px; letter-spacing:-.02em; margin-bottom:9px; }
.pds .link p { color:var(--muted); font-size:14.5px; line-height:1.6; }
.pds .chain-foot { margin-top:30px; font-size:13.5px; color:var(--muted-2); line-height:1.6; max-width:780px; }

/* === FINAL CTA / Lead === */
.pds .final { position:relative; padding:104px 0; background:linear-gradient(135deg,#3d6b18,#4f841f 60%,#46791d); overflow:hidden; }
.pds .final::before { content:""; position:absolute; inset:0; pointer-events:none; background:
  radial-gradient(40% 50% at 12% 10%,rgba(255,255,255,.28),transparent 60%),
  radial-gradient(40% 50% at 90% 90%,rgba(58,98,18,.4),transparent 62%); }
.pds .final::after { content:""; position:absolute; inset:0; opacity:.5; pointer-events:none; background-image:radial-gradient(rgba(255,255,255,.18) 1.2px,transparent 1.2px); background-size:28px 28px; -webkit-mask-image:radial-gradient(85% 95% at 50% 0%,#000,transparent 80%); mask-image:radial-gradient(85% 95% at 50% 0%,#000,transparent 80%); }
.pds .final-grid { position:relative; z-index:2; display:grid; grid-template-columns:1.04fr .96fr; gap:56px; align-items:center; }
.pds .final .kicker { color:#fff; }
.pds .final .kicker .dot { background:#fff; box-shadow:0 0 0 4px rgba(255,255,255,.2); }
.pds .final .kicker .ln { background:linear-gradient(90deg,#fff,transparent); }
.pds .final h2 { color:#fff; font-size:clamp(30px,4vw,52px); margin:18px 0 16px; letter-spacing:-.04em; }
.pds .final p { color:rgba(255,255,255,.94); font-size:18px; margin:0 0 26px; max-width:480px; line-height:1.6; }
.pds .final-trust { display:flex; gap:26px; flex-wrap:wrap; color:#fff; font-weight:600; font-size:14.5px; }
.pds .final-trust span { display:flex; align-items:center; gap:9px; }
.pds .final-trust .ck { width:22px; height:22px; border-radius:7px; background:rgba(255,255,255,.22); display:grid; place-items:center; flex:0 0 auto; }
.pds .final .leadbox { box-shadow:0 60px 120px -44px rgba(0,0,0,.5); position:relative; }
.pds .final .leadbox::before { content:""; position:absolute; top:-1px; left:24px; right:24px; height:3px; background:linear-gradient(90deg,var(--green),var(--green-soft)); border-radius:3px; }
.pds .final .leadbox h3 { font-size:22px; letter-spacing:-.02em; margin-bottom:4px; }
.pds .final .leadbox .lsub { font-size:13.5px; color:var(--muted); margin-bottom:20px; }

/* === Rechtlicher Hinweis === */
.pds .legal-note { padding:26px 0 40px; background:var(--paper-2); }
.pds .legal-note p { max-width:900px; margin:0 auto; text-align:center; color:var(--muted-2); font-size:12.5px; line-height:1.6; }

/* === RESPONSIVE (vereinheitlicht: 1080 / 860 / 560) === */
@media(max-width:1080px){
  .pds .brands-head { grid-template-columns:1fr; gap:18px; }
  .pds .std-wrap { grid-template-columns:1fr; gap:40px; }
  .pds .std-left { position:static; }
  .pds .detail-grid { grid-template-columns:1fr; gap:64px; }
  .pds .detail-figure { order:-1; }
  .pds .value-grid { grid-template-columns:1fr; gap:44px; }
  .pds .value-card { order:-1; }
  .pds .final-grid { grid-template-columns:1fr; gap:42px; }
}
@media(max-width:860px){
  .pds .qhero { padding:140px 0 70px; }
  .pds .pl-steps { grid-template-columns:1fr; gap:0; }
  .pds .pl-rail { display:none; }
  .pds .pl-step { flex-direction:row; text-align:left; gap:20px; padding:18px 0; border-bottom:1px solid var(--line); align-items:center; justify-content:flex-start; opacity:1; transform:none; }
  .pds .pl-step:last-child { border-bottom:0; }
  .pds .pl-node { width:64px; height:64px; border-radius:18px; flex:0 0 auto; }
  .pds .pl-node svg { width:24px; height:24px; }
  .pds .pl-step p { max-width:none; }
  .pds .brand-grid { grid-template-columns:1fr; }
  .pds .brand-grid .bx-2 { grid-column:auto; }
  .pds .bx .role { flex-direction:column; align-items:flex-start; gap:16px; }
  .pds .detail-badge { right:10px; bottom:-20px; }
  .pds .value-benefits { grid-template-columns:1fr; }
  .pds .chain { grid-template-columns:1fr 1fr; }
  .pds .proof-statband .wrap { padding-top:18px; padding-bottom:18px; }
  .pds .proof-stats { gap:18px 30px; }
  .pds .proof-stats .ps { flex:1 1 40%; min-width:120px; padding:0; border-left:0; }
  .pds .qhero-cta { flex-direction:column; align-items:stretch; }
}
@media(max-width:560px){
  .pds .chain { grid-template-columns:1fr; }
  .pds .detail-img img { height:320px; }
}

/* Final-CTA-Box (Qualitaet ist Trust-Seite: kein Formular, CTA -> Kontakt/Telefon) */
body.pds .final-cta-box { background: #fff; border: 1px solid var(--line, #e3ece0); border-radius: var(--r, 24px); padding: 30px 28px; box-shadow: var(--shadow-card, 0 24px 60px -34px rgba(40,90,30,.3)); }
body.pds .final-cta-box h3 { font-size: 22px; font-weight: 800; color: var(--ink, #15271b); margin: 0 0 10px; }
body.pds .fcb-sub { font-size: 15px; color: var(--muted-2, #5a6b5e); line-height: 1.55; margin: 0 0 20px; }
body.pds .fcb-btn { width: 100%; justify-content: center; }
body.pds .fcb-btn + .fcb-btn { margin-top: 10px; }

/* Icon-Farb-Fix Phosphor-Migration (22.06.) */
.pds .detail-checks .ck, .pds .value-benefits .ck, .pds .detail-badge .ic { color:#fff; }
