/* Only the optional banner and its spacer. No host page resets or third-party widget rules. */
#amal-promo[hidden],#amal-promo-spacer[hidden] { display:none!important; }
#amal-promo { position:fixed; z-index:990; inset:auto 12px calc(12px + var(--amal-promo-offset,0px) + env(safe-area-inset-bottom,0px)); width:auto; max-width:840px; margin:0 auto; padding:0; border:0; color:#123647; font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif; font-size:14px; line-height:1.5; text-align:left; isolation:isolate; opacity:0; transform:translateY(32px); transition:transform .32s ease-out,opacity .32s ease-out; }
#amal-promo * { box-sizing:border-box; }
#amal-promo.amal-promo-visible { opacity:1; transform:translateY(0); }
#amal-promo.amal-promo-suspended { opacity:0; visibility:hidden; pointer-events:none; }
#amal-promo .amal-promo-inner { display:flex; align-items:center; gap:8px; border:1px solid #a6d4e2; background:linear-gradient(110deg,#f5fcff 0%,#dff3fb 100%); border-radius:22px; padding:14px; box-shadow:0 -5px 30px #0b364517,0 8px 25px #0b364524; }
#amal-promo .amal-promo-link { flex:1; min-width:0; display:grid; grid-template-columns:52px minmax(0,1fr) auto; align-items:center; gap:14px; margin:0; padding:0; color:#123647; text-decoration:none; background:none; border:0; box-shadow:none; }
#amal-promo .amal-promo-mark { display:grid; place-items:center; height:54px; width:52px; background:#fff; border-radius:14px; }
#amal-promo .amal-promo-mark img { display:block; width:40px; height:40px; object-fit:contain; margin:0; padding:0; border:0; }
#amal-promo .amal-promo-copy { display:flex; flex-direction:column; gap:3px; min-width:0; }
#amal-promo .amal-promo-copy strong { font-family:inherit; font-size:17px; font-weight:750; line-height:1.3; color:#123647; margin:0; padding:0; text-transform:none; letter-spacing:-.02em; overflow-wrap:anywhere; }
#amal-promo .amal-promo-copy>span { display:block; font-size:13px; line-height:1.5; color:#456575; overflow-wrap:anywhere; }
#amal-promo .amal-promo-cta { display:flex; align-items:center; justify-content:center; gap:8px; font-size:13px; font-weight:750; line-height:1.4; color:#fff; padding:12px 17px; background:#087cab; border-radius:24px; min-height:44px; max-width:210px; overflow-wrap:anywhere; }
#amal-promo .amal-promo-cta svg { display:block; flex:none; }
#amal-promo .amal-promo-close { display:grid; place-items:center; width:44px; height:44px; min-width:44px; flex:none; padding:0; margin:0; background:#fff; color:#355d70; border:1px solid #c4dfe9; border-radius:50%; cursor:pointer; box-shadow:none; line-height:1; }
#amal-promo .amal-promo-close svg { display:block; margin:0; }
#amal-promo a:hover .amal-promo-cta { background:#075e83; }
#amal-promo .amal-promo-close:hover { background:#e7f4fa; }
#amal-promo :focus-visible { outline:3px solid #0a6691; outline-offset:3px; }
#amal-promo-spacer { display:block; height:0; clear:both; margin:0!important; padding:0!important; border:0!important; pointer-events:none; width:100%; }
@media(max-width:600px) {
 #amal-promo { inset-inline:10px; }
 #amal-promo .amal-promo-inner { border-radius:18px; padding:12px; gap:6px; }
 #amal-promo .amal-promo-link { grid-template-columns:40px minmax(0,1fr); gap:5px 10px; }
 #amal-promo .amal-promo-mark { width:40px; height:44px; border-radius:12px; grid-row:1 / 3; align-self:start; }
 #amal-promo .amal-promo-mark img { width:32px; height:32px; }
 #amal-promo .amal-promo-copy strong { font-size:14px; line-height:1.25; }
 #amal-promo .amal-promo-copy>span { font-size:11px; line-height:1.45; }
 #amal-promo .amal-promo-cta { grid-column:2; width:max-content; max-width:100%; min-height:28px; padding:3px 0; font-size:12px; color:#076389; background:none; justify-content:flex-start; border-radius:0; }
 #amal-promo a:hover .amal-promo-cta { background:none; text-decoration:underline; }
 #amal-promo .amal-promo-close { align-self:center; }
}
@media(prefers-reduced-motion:reduce) { #amal-promo { transition:none; transform:none; } }
@media print { #amal-promo,#amal-promo-spacer { display:none!important; } }
