.abp-banner{box-sizing:border-box;display:block;position:relative;isolation:isolate;clear:both;width:100%;margin:32px 0;padding:20px;border:1px solid #e2e8f0;border-radius:15px;background:#fff;color:#172033;box-shadow:0 8px 28px rgba(15,23,42,.13);overflow:hidden;text-align:left}
.abp-banner *{box-sizing:border-box}
.abp-banner .abp-label{display:block;margin:0 0 12px;color:#64748b;font:600 10px/1.5 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.abp-banner .abp-image,.abp-banner .abp-video{display:block;width:100%;max-width:100%;height:auto;margin:0;border-radius:9px}
.abp-banner .abp-media-link{display:block}
.abp-banner .abp-copy{padding:16px 4px 4px}
.abp-banner .abp-heading{margin:0 0 10px;color:inherit;font:700 clamp(20px,3vw,28px)/1.25 system-ui,sans-serif}
.abp-banner .abp-text{margin:0 0 20px;color:#475569;font:400 16px/1.75 system-ui,sans-serif;overflow-wrap:anywhere}
.abp-banner .abp-text p{margin:0;padding:0;color:inherit;font:inherit}
.abp-banner .abp-text p+p{margin-top:18px}
.abp-banner .abp-heading{overflow-wrap:anywhere}
.abp-banner a.abp-button{display:inline-flex;justify-content:center;align-items:center;min-height:44px;max-width:100%;padding:12px 22px;border-radius:9px;background:#1d4ed8;color:#fff;font:600 15px/1.4 system-ui,sans-serif;text-decoration:none;white-space:normal;overflow-wrap:anywhere}
.abp-banner a.abp-button:hover{background:#1e40af;color:#fff}
.abp-banner a:focus-visible,.abp-banner video:focus-visible{outline:3px solid #2563eb;outline-offset:4px}
@media(max-width:480px){.abp-banner{padding:14px;margin:24px 0}.abp-banner a.abp-button{width:100%}}
.abp-banner.abp-banner--image{padding:3px}
.abp-banner--image .abp-label{display:none}
.abp-banner--image .abp-image{border-radius:11px}
