
#kundenreferenzen { scroll-margin-top:100px; }
.stimme { align-content:start; }
.stimme-beleg { display:inline-flex; align-items:center; gap:8px; justify-self:start; min-height:44px; max-width:100%; margin-top:-6px; font-size:13px; line-height:1.5; font-weight:600; color:var(--blue-deep); text-decoration:none; border-radius:4px; }
.stimme-beleg > span:first-child { text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:4px; text-decoration-color:rgba(10,80,194,.32); }
.stimme-beleg:hover > span:first-child { text-decoration-color:currentColor; }
.stimme-beleg svg { flex:none; }
.stimme-beleg:focus-visible { outline:3px solid var(--blue); outline-offset:5px; }
.qard-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

.qard-dialog { width:min(1080px,calc(100vw - 64px)); height:min(860px,calc(100dvh - 64px)); max-width:none; max-height:none; padding:0; margin:auto; border:1px solid rgba(255,255,255,.6); border-radius:22px; background:var(--surface,#fff); color:var(--ink,#101828); box-shadow:0 32px 100px rgba(12,27,51,.25); overflow:hidden; }
.qard-dialog[open] { display:grid; grid-template-rows:auto minmax(0,1fr) auto; }
.qard-dialog::backdrop { background:rgba(16,24,40,.42); backdrop-filter:blur(6px); }
.qard-dialog-bar { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:20px 24px; border-bottom:1px solid #E7ECF3; background:#FBFCFE; }
.qard-dialog-heading { min-width:0; }
.qard-dialog-eyebrow { display:block; margin-bottom:4px; color:var(--mute,#5A6472); font-size:10px; line-height:1.4; font-weight:600; letter-spacing:.1em; }
.qard-dialog-heading h2 { margin:0; font-family:inherit; font-size:18px; font-weight:650; line-height:1.4; letter-spacing:-.03em; }
.qard-dialog-heading h2 span { color:var(--mute,#5A6472); font-size:14px; font-weight:400; letter-spacing:normal; }
.qard-dialog-actions { display:flex; align-items:center; gap:18px; flex-shrink:0; }
.qard-original { display:inline-flex; align-items:center; gap:7px; min-height:44px; font-size:13px; font-weight:600; color:var(--blue-deep,#0A50C2); text-decoration:none; white-space:nowrap; border-radius:4px; }
.qard-original:hover { text-decoration:underline; text-underline-offset:4px; }
.qard-close { display:grid; place-items:center; width:44px; height:44px; padding:0; border:1px solid #DFE5EE; border-radius:50%; background:#fff; color:var(--ink,#101828); cursor:pointer; }
.qard-close:hover { background:#EDF2F8; }
.qard-original:focus-visible,.qard-close:focus-visible { outline:3px solid var(--blue,#0B64F4); outline-offset:3px; }
.qard-dialog-content { position:relative; min-height:0; background:#fff; }
.qard-frame-slot { height:100%; }
.qard-frame { position:relative; z-index:1; display:block; width:100%; height:100%; border:0; background:transparent; }
.qard-dialog-loading { position:absolute; z-index:2; inset:0; margin:0; padding:24px; display:grid; place-items:center; text-align:center; background:#fff; color:var(--mute,#5A6472); font-size:14px; }
.qard-dialog-loading[hidden] { display:none; }
.qard-loading-actions[hidden] { display:none; }
.qard-loading-actions { display:grid; justify-items:center; gap:12px; margin-top:20px; }
.qard-loading-actions p { margin:0; font-size:12px; }
.qard-retry { min-height:44px; padding:0 18px; border:1px solid #DFE5EE; border-radius:8px; background:#F5F7FA; color:var(--ink,#101828); cursor:pointer; font:inherit; }
.qard-retry:focus-visible { outline:3px solid var(--blue,#0B64F4); outline-offset:3px; }
.qard-dialog-footer { margin:0; padding:12px 24px; border-top:1px solid #E7ECF3; background:#FBFCFE; color:var(--mute,#5A6472); font-size:11px; line-height:1.5; }
@media (max-width:600px) {
  .qard-dialog { width:100%; height:100dvh; border:0; border-radius:0; }
  .qard-dialog-bar { gap:10px; padding:calc(12px + env(safe-area-inset-top)) 14px 12px; }
  .qard-dialog-eyebrow { font-size:8px; letter-spacing:.08em; }
  .qard-dialog-heading h2 { font-size:17px; }
  .qard-dialog-heading h2 span { display:block; font-size:11px; }
  .qard-dialog-actions { gap:12px; }
  .qard-original { font-size:12px; gap:4px; }
  .qard-dialog-footer { padding:10px 14px calc(10px + env(safe-area-inset-bottom)); font-size:10px; }
}
