/* Geteilte Floatcta-Komponente — site-wide, eine Quelle. */
.aend-fin .floatcta{position:fixed;right:22px;bottom:22px;z-index:9999;width:300px;max-width:calc(100vw - 44px);background:var(--navy);color:#f3ede3;border-radius:22px;padding:20px 20px 18px;box-shadow:0 26px 60px rgba(18,26,42,.40);display:flex;flex-direction:column;align-items:flex-start;gap:13px;opacity:0;transform:translateY(20px) scale(.94);transition:opacity .55s ease,transform .6s cubic-bezier(.34,1.2,.5,1);transform-origin:bottom right;}
.aend-fin .floatcta{pointer-events:none;}
.aend-fin .floatcta.show{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;}
.aend-fin .floatcta.morph{opacity:0;transform:translateY(-150px) scale(1.7);pointer-events:none;transition:opacity .55s ease .05s,transform .65s cubic-bezier(.4,0,.2,1);}
.aend-fin .fc-body{flex:1;min-width:0;}
.aend-fin .floatcta.dismissed{display:none;}
.aend-fin .fc-launcher{position:fixed;right:22px;bottom:22px;z-index:9999;width:58px;height:58px;border-radius:20px;background:var(--navy);color:var(--gold);border:none;cursor:pointer;box-shadow:0 18px 44px rgba(18,26,42,.42);display:flex;align-items:center;justify-content:center;padding:0;opacity:0;transform:scale(.35);transform-origin:bottom right;transition:opacity .35s ease,transform .42s cubic-bezier(.34,1.4,.5,1);pointer-events:none;}
.aend-fin .fc-launcher svg{width:26px;height:26px;display:block;}
.aend-fin .fc-launcher.show{opacity:1;transform:scale(1);pointer-events:auto;}
.aend-fin .fc-launcher.show:hover{transform:scale(1.09);}
@media(max-width:600px){
  .aend-fin .fc-launcher{right:14px;bottom:14px;width:54px;height:54px;}
}
.aend-fin .fc-close{order:1;align-self:center;margin-top:1px;-webkit-appearance:none;appearance:none;border:none;background:transparent;box-shadow:none;outline:none;padding:0;cursor:pointer;font-family:'Inter',sans-serif;font-size:12.5px;font-weight:600;color:rgba(243,237,227,.55);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:color .15s ease;}
.aend-fin .fc-close:hover{background:transparent;box-shadow:none;border:none;color:#f3ede3;text-decoration-thickness:1px;}
.aend-fin .fc-ey{display:block;font-family:'Inter',sans-serif;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--gold);margin-bottom:9px;}
.aend-fin .fc-t{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:21px;line-height:1.1;letter-spacing:-.01em;}
.aend-fin .fc-t em{font-style:normal;color:var(--gold);}
.aend-fin .fc-btn{align-self:stretch;text-align:center;background:var(--gold);color:var(--navy);font-family:'Inter',sans-serif;font-weight:800;font-size:14px;padding:12px 20px;border-radius:999px;text-decoration:none;white-space:nowrap;box-shadow:none;transition:transform .18s ease,background .18s ease;}
.aend-fin .fc-btn:hover{transform:translateY(-1px);box-shadow:none!important;outline:none!important;}
.aend-fin .fc-btn:focus,.aend-fin .fc-btn:focus-visible,.aend-fin .fc-btn:active{box-shadow:none!important;outline:none!important;}
@media(max-width:600px){
  .aend-fin .floatcta{right:12px;bottom:12px;width:268px;max-width:calc(100vw - 24px);padding:18px 18px 16px;gap:11px;border-radius:20px;}
  .aend-fin .fc-ey{display:none;}
  .aend-fin .fc-t{font-size:19px;}
  .aend-fin .fc-btn{font-size:13px;padding:11px 16px;}
  .aend-fin .fc-close{font-size:11.5px;}
}

/* === Floating-CTA auf Mobile als schmaler Balken statt Karte; Button nur Pfeil (floatcta-mobile-bar) === */
@media(max-width:600px){
.aend-fin .floatcta{flex-direction:row!important;align-items:center!important;gap:12px!important;left:12px!important;right:12px!important;width:auto!important;max-width:none!important;padding:11px 12px 11px 16px!important;border-radius:16px!important;}
.aend-fin .floatcta .fc-t{font-size:14px!important;line-height:1.25!important;margin:0!important;flex:1 1 auto!important;}
.aend-fin .floatcta .fc-btn{display:flex!important;align-items:center!important;justify-content:center!important;align-self:center!important;flex:0 0 42px!important;width:42px!important;height:42px!important;padding:0!important;border-radius:50%!important;font-size:0!important;}
.aend-fin .floatcta .fc-btn::after{content:"→";font-size:19px;font-weight:800;line-height:1;}
.aend-fin .floatcta .fc-close{order:3!important;flex:0 0 auto!important;font-size:0!important;padding:6px!important;margin:0!important;align-self:center!important;}
.aend-fin .floatcta .fc-close::after{content:"✕";font-size:13px;opacity:.55;}
}
