.dcfk-box{max-width:640px;background:#f4f7fa;border-top:4px solid #115485;padding:28px;border-radius:6px;box-sizing:border-box}
.dcfk-box label{display:block;font-weight:600;margin-bottom:4px;color:#0b1f3a}
.dcfk-box input[type=text],.dcfk-box input[type=email],.dcfk-box select{width:100%;padding:10px 12px;border:1px solid #b9c6d3;border-radius:4px;background:#fff;color:#0b1f3a;box-sizing:border-box;font-size:16px}
.dcfk-consent label{font-weight:400;font-size:14px;line-height:1.5}.dcfk-consent input{margin-right:6px}
.dcfk-box a{color:#115485;text-decoration:underline}
.dcfk-btn{display:inline-block;background:#115485;color:#fff!important;border:0;padding:12px 28px;border-radius:4px;font-weight:700;font-size:16px;cursor:pointer;text-decoration:none!important}
.dcfk-btn:hover{background:#0b3a5e}
.dcfk-note{font-size:13px;color:#555;margin:0}
.dcfk-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.dcfk-msg{padding:12px 14px;border-radius:4px;margin-bottom:16px}.dcfk-ok{background:#e6f4ea;color:#0b3d1a}.dcfk-error{background:#fde8ea;color:#7a0b1a}
.dcfk-teaser{border:1px solid #c9d6e2;border-left:6px solid #115485;background:#f4f7fa;padding:20px 24px;margin:28px 0;border-radius:4px}
.dcfk-teaser h3{margin:0 0 8px;color:#115485;font-size:20px}.dcfk-teaser p{margin:0 0 12px}.dcfk-teaser p:last-child{margin:0}
/* Mobil: Theme-Container ragt je 10px über den Bildschirmrand, daher 24px = ~14px sichtbarer Innenabstand. Störer v0.3.0: nur Startseite. Desktop: absolut oben rechts im Hero (Header liegt darüber, 139px), rechte Kante bündig mit content_wrap (1100px). Mobil: Inline-Banner unter dem Hero. */
.elementor-top-section:has(>.dcfk-nudge){position:relative}
.dcfk-nudge{position:absolute;top:170px;right:max(24px,calc((100% - 1100px) / 2));z-index:50;width:290px;box-sizing:border-box;background:rgba(255,255,255,.96);color:#0b1f3a;border:1px solid #c9d6e2;border-top:4px solid #115485;border-radius:6px;box-shadow:0 6px 24px rgba(0,0,0,.25);padding:14px 40px 14px 16px;font-family:Helvetica,Arial,sans-serif;font-size:14px;line-height:1.45}
.dcfk-nudge[hidden]{display:none}
.dcfk-nudge-text{margin:0 0 10px;color:#0b1f3a}
.dcfk-nudge-btn{display:inline-block;background:#115485;color:#fff!important;padding:7px 16px;border-radius:4px;font-weight:700;text-decoration:none!important;font-size:14px}
.dcfk-nudge-btn:hover,.dcfk-nudge-btn:focus{background:#0b3a5e}
.dcfk-nudge-x{position:absolute;top:4px;right:4px;width:32px;height:32px;border:0;background:transparent;color:#0b1f3a;font-size:22px;line-height:1;cursor:pointer;border-radius:4px;padding:0}
.dcfk-nudge-x:hover{background:#f4f7fa}
.dcfk-nudge a:focus-visible,.dcfk-nudge-x:focus-visible{outline:3px solid #f2b705;outline-offset:2px}
.dcfk-nudge.is-inline{position:relative;top:auto;right:auto;width:auto;max-width:none;margin:0;border-radius:0;border:0;border-top:3px solid #115485;border-bottom:1px solid #c9d6e2;box-shadow:none;background:#f4f7fa;padding:10px 58px 10px 24px!important;display:flex;align-items:center;gap:12px;font-size:14px}
.dcfk-nudge.is-inline .dcfk-nudge-text{margin:0;flex:1}.dcfk-nudge.is-inline .dcfk-nudge-btn{padding:7px 14px;white-space:nowrap}.dcfk-nudge.is-inline .dcfk-nudge-x{right:20px;top:50%;transform:translateY(-50%)}
