/* Every rule starts with #ctapopup so theme styles are unlikely to override them. */
#ctapopup{position:fixed!important;inset:0!important;z-index:2147483000!important;display:flex!important;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;margin:0}
#ctapopup[hidden],#ctapopup [hidden]{display:none!important}
#ctapopup *,#ctapopup *::before,#ctapopup *::after{box-sizing:border-box}
#ctapopup .ctapopup__overlay{position:absolute;inset:0;background:rgba(0,0,0,.6);cursor:pointer}
#ctapopup .ctapopup__dialog{position:relative;width:100%;max-width:520px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;background:#fff;color:#222;border-radius:8px;padding:32px 28px 28px;box-shadow:0 10px 40px rgba(0,0,0,.35);font-size:16px;line-height:1.5;text-align:left;outline:none;border-top:6px solid var(--ctapopup-accent,#333)}
#ctapopup .ctapopup__title{margin:0 0 12px;padding:0 32px 0 0;font-size:1.5rem;line-height:1.25;color:#111}
#ctapopup .ctapopup__body{margin:0 0 20px;color:#222}
#ctapopup .ctapopup__body p{margin:0 0 .75em;color:inherit}
#ctapopup .ctapopup__close{position:absolute;top:8px;right:8px;width:44px;height:44px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:#222;font-size:28px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
#ctapopup .ctapopup__close:hover{background:rgba(0,0,0,.08)}
#ctapopup .ctapopup__cta,.ctapopup-open{display:inline-block;margin:0;padding:12px 24px;border:2px solid var(--ctapopup-accent,#333);border-radius:4px;background:var(--ctapopup-accent,#333);color:var(--ctapopup-on-accent,#fff);font:inherit;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer}
#ctapopup .ctapopup__cta:hover{opacity:.88}
#ctapopup .ctapopup__form{margin-top:4px}
#ctapopup .ctapopup__form input:not([type=checkbox]):not([type=radio]):not([type=submit]),#ctapopup .ctapopup__form select,#ctapopup .ctapopup__form textarea{max-width:100%}
#ctapopup button:focus-visible,#ctapopup a:focus-visible,.ctapopup-open:focus-visible{outline:3px solid #1a73e8;outline-offset:2px}
@media (max-width:480px){#ctapopup .ctapopup__dialog{padding:28px 18px 20px}}
@media (prefers-reduced-motion:no-preference){#ctapopup:not([hidden]) .ctapopup__dialog{animation:ctapopup-in .18s ease-out}@keyframes ctapopup-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
