/* Body Back-Up Pop-up CTA — scoped under .bbu-popup. Sizes use em so they scale
   with the theme's base font size. */
.bbu-popup{
	--pop-navy:#1a2744;--pop-red:#cc1235;--pop-cream:#f9f7f4;--pop-line:#e7e3dd;
	--pop-text:#3b4453;--pop-muted:#66707d;
	position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;
}
.bbu-popup[hidden]{display:none;}
.bbu-popup *,.bbu-popup *::before,.bbu-popup *::after{box-sizing:border-box;}

.bbu-popup__overlay{position:absolute;inset:0;background:rgba(20,30,55,.55);backdrop-filter:blur(2px);opacity:0;transition:opacity .25s ease;}
.bbu-popup.is-open .bbu-popup__overlay{opacity:1;}

.bbu-popup__dialog{
	position:relative;background:#fff;border-radius:16px;max-width:440px;width:100%;
	padding:34px 32px 30px;box-shadow:0 24px 60px rgba(20,30,55,.28);
	transform:translateY(12px) scale(.98);opacity:0;transition:transform .28s ease,opacity .28s ease;
	max-height:calc(100vh - 40px);overflow-y:auto;overscroll-behavior:contain;
}
.bbu-popup.is-open .bbu-popup__dialog{transform:translateY(0) scale(1);opacity:1;}

.bbu-popup__close{position:absolute;top:12px;right:12px;width:34px;height:34px;border:0;background:transparent;color:var(--pop-muted);cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease;}
.bbu-popup__close:hover{background:var(--pop-cream);color:var(--pop-navy);}
.bbu-popup__close svg{width:20px;height:20px;}
.bbu-popup__close:focus-visible{outline:2px solid var(--pop-navy);outline-offset:2px;}

.bbu-popup__title{font-size:1.3em;line-height:1.25;color:var(--pop-navy);margin:0 24px 12px 0;}
.bbu-popup__body{font-size:.95em;line-height:1.6;color:var(--pop-text);margin:0 0 22px;}

.bbu-popup__actions{display:flex;flex-direction:column;gap:9px;}
.bbu-popup__btn{display:block;text-align:center;font-size:.92em;font-weight:600;padding:13px 18px;border-radius:9px;text-decoration:none;transition:background .15s ease,border-color .15s ease,color .15s ease;}
.bbu-popup__btn--primary{background:var(--pop-red);color:#fff;}
.bbu-popup__btn--primary:hover{background:#b10f2d;}
.bbu-popup__btn--ghost{border:1.5px solid var(--pop-line);color:var(--pop-navy);}
.bbu-popup__btn--ghost:hover{border-color:var(--pop-navy);background:var(--pop-cream);}
.bbu-popup__btn:focus-visible{outline:2px solid var(--pop-navy);outline-offset:2px;}

/* Two location buttons sit side by side from small-tablet up. */
@media(min-width:420px){
	.bbu-popup__actions{display:grid;grid-template-columns:1fr 1fr;}
	.bbu-popup__btn--primary{grid-column:1 / -1;}
}

@media(prefers-reduced-motion:reduce){
	.bbu-popup__overlay,.bbu-popup__dialog{transition:none;}
}
