/* Eigenständiger Consent-Banner, ohne Einfluss auf den bestehenden Funnel. */
.im-consent[hidden], .im-consent-details[hidden] { display:none !important; }
.im-consent {position:fixed;z-index:10000;inset:auto 0 0;padding:16px max(16px,env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));pointer-events:none;}
.im-consent-card {pointer-events:auto;max-width:680px;margin:0 auto;padding:24px 26px;background:#fff;border:1px solid #d7e4eb;border-radius:20px;box-shadow:0 22px 80px rgba(10,47,70,.25);color:#102d3d;max-height:min(84dvh,720px);overflow-y:auto;overscroll-behavior:contain;}
.im-consent-kicker {margin:0 0 7px;color:#004571;letter-spacing:.10em;text-transform:uppercase;font-size:11px;font-weight:800;}
.im-consent-card h2 {margin:0 0 9px;font-size:clamp(20px,3vw,26px);font-weight:780;line-height:1.18;letter-spacing:-.035em;outline:none;}
.im-consent-text {margin:0 0 17px;line-height:1.55;font-size:13px;color:#526b79;}
.im-consent-card a {color:#004571;text-underline-offset:2px;}
.im-consent-buttons {display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px;margin:0;}
.im-consent-buttons button,.im-consent-save {min-height:46px;padding:10px 13px;font-weight:750;font-size:13px;border-radius:11px;border:1px solid #004571;}
.im-consent-reject {background:#fff;color:#004571;}
.im-consent-settings {background:#edf5f8;color:#004571;}
.im-consent-accept,.im-consent-save {background:#004571;color:#fff;}
.im-consent-buttons button:hover,.im-consent-save:hover {filter:brightness(.94);}
.im-consent-buttons button:focus-visible,.im-consent-save:focus-visible,.im-consent-toggle input:focus-visible {outline:3px solid #5d9fc3;outline-offset:3px;}
.im-consent-details {margin:0 0 16px;padding:14px;border:1px solid #dce7ed;border-radius:12px;background:#f7fafc;}
.im-consent-essential {display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:750;margin-bottom:9px;}
.im-consent-essential span:last-child {color:#168052;font-size:11px;white-space:nowrap;}
.im-consent-toggle {display:flex;gap:12px;align-items:flex-start;cursor:pointer;padding-top:12px;border-top:1px solid #dce7ed;}
.im-consent-toggle input {width:19px;height:19px;min-width:19px;margin:2px 0 0;accent-color:#004571;}
.im-consent-toggle strong {font-size:13px;display:block;}
.im-consent-toggle small {display:block;margin-top:5px;color:#526b79;font-size:12px;line-height:1.5;}
.im-consent-save {margin-top:14px;width:100%;}
.im-consent-legal {margin:11px 0 0;font-size:11px;color:#526b79;}
.im-consent-footer-link {background:none;border:0;padding:0;color:inherit;text-decoration:underline;text-underline-offset:3px;font-size:inherit;white-space:nowrap;}
@media(max-width:800px){.footer-inner nav {gap:11px;}.im-consent-footer-link{font-size:11px;}.im-consent{padding:9px 10px calc(10px + env(safe-area-inset-bottom));}.im-consent-card{padding:17px 16px;border-radius:16px;max-height:min(82dvh,670px);}.im-consent-text{font-size:12px;margin-bottom:13px;}.im-consent-buttons{grid-template-columns:1fr 1fr;gap:8px;}.im-consent-accept{grid-column:1/-1;grid-row:1;}.im-consent-buttons button{font-size:12px;min-height:44px;}}
@media(max-width:380px){.footer-inner nav{gap:8px;font-size:10px;}.im-consent-footer-link{font-size:10px;}}
@media(prefers-reduced-motion:reduce){.im-consent *{transition:none!important;}}
