.promo-dialog{position:fixed;width:min(820px,calc(100vw - 40px));max-height:calc(100dvh - 40px);margin:auto;padding:0;border:0;border-radius:12px;background:var(--white,#fffdf9);color:var(--ink,#18201d);box-shadow:0 28px 110px #0005;overflow:auto;overscroll-behavior:contain}
.promo-dialog[open]{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
.promo-dialog::backdrop{background:#15201dc4;backdrop-filter:blur(5px)}
.promo-image{width:100%;height:100%;min-height:420px;object-fit:cover}
.promo-copy{padding:52px 36px 40px;align-self:center}.promo-copy h2{font-size:clamp(1.75rem,2.8vw,2.5rem);line-height:1.08;overflow-wrap:anywhere}
.promo-copy .eyebrow{margin-bottom:18px}.promo-description{margin:24px 0;font-size:15px;line-height:1.65;white-space:pre-line;overflow-wrap:anywhere}
.promo-copy .button{max-width:100%;overflow-wrap:anywhere}.promo-dialog:not(:has(.promo-image:not([hidden])))[open]{display:block;width:min(520px,calc(100vw - 40px))}
.promo-actions{display:flex;flex-direction:column;gap:12px;align-items:stretch}
.promo-copy .promo-inquiry-button{background:transparent;color:var(--brand-primary);border-color:var(--brand-primary)}
.promo-copy .promo-inquiry-button:hover{background:var(--brand-primary);color:var(--white,#fffdf9)}
.promo-close{position:absolute;z-index:1;inset-block-start:12px;inset-inline-end:12px;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #18201d1a;border-radius:50%;background:#fffdf9ed;color:#18201d;font-size:28px;line-height:1;cursor:pointer}
.promo-dialog [hidden]{display:none!important}
@media(max-width:640px){.promo-dialog[open]{display:block;width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.promo-image{height:190px;min-height:0}.promo-copy{padding:28px 24px}.promo-copy h2{font-size:1.85rem}.promo-description{margin:18px 0}.promo-copy .button{width:100%}}
