/* Shared Kompakt primary buttons. Scoped to filled actions, including atomic wrappers. */
:root { --bbk-button-green: #89b82c; --bbk-button-hover: #6d9422; }
body :is(.bbk-primary-button, .bbk-wedding-button:not(.bbk-wedding-secondary):not(.bbk-wedding-textlink) .elementor-button, .bbk-bonus-button:not(.bbk-bonus-secondary) .elementor-button, .bbk-slider-surface .slide-cta, .bbv-appcta, .bbv-visitcta) {
 background:var(--bbk-button-green)!important;color:#fff!important;
 transition:background-color .2s ease,box-shadow .2s ease!important;
}
body :is(.bbk-primary-button, .bbk-wedding-button:not(.bbk-wedding-secondary):not(.bbk-wedding-textlink) .elementor-button, .bbk-bonus-button:not(.bbk-bonus-secondary) .elementor-button, .bbk-slider-surface .slide-cta, .bbv-appcta, .bbv-visitcta) a,body :is(.bbk-primary-button, .bbk-wedding-button:not(.bbk-wedding-secondary):not(.bbk-wedding-textlink) .elementor-button, .bbk-bonus-button:not(.bbk-bonus-secondary) .elementor-button, .bbk-slider-surface .slide-cta, .bbv-appcta, .bbv-visitcta) .elementor-button-text,body :is(.bbk-primary-button, .bbk-wedding-button:not(.bbk-wedding-secondary):not(.bbk-wedding-textlink) .elementor-button, .bbk-bonus-button:not(.bbk-bonus-secondary) .elementor-button, .bbk-slider-surface .slide-cta, .bbv-appcta, .bbv-visitcta) .elementor-button-icon {color:#fff!important;}
@media(hover:hover){body :is(.bbk-primary-button, .bbk-wedding-button:not(.bbk-wedding-secondary):not(.bbk-wedding-textlink) .elementor-button, .bbk-bonus-button:not(.bbk-bonus-secondary) .elementor-button, .bbk-slider-surface .slide-cta, .bbv-appcta, .bbv-visitcta):hover {background:var(--bbk-button-hover)!important;color:#fff!important;box-shadow:0 5px 14px #344b1926;}}
body :is(.bbk-primary-button, .bbk-wedding-button:not(.bbk-wedding-secondary):not(.bbk-wedding-textlink) .elementor-button, .bbk-bonus-button:not(.bbk-bonus-secondary) .elementor-button, .bbk-slider-surface .slide-cta, .bbv-appcta, .bbv-visitcta):active {background:#5f821d!important;color:#fff!important;box-shadow:none;}
body :is(.bbk-primary-button, .bbk-wedding-button:not(.bbk-wedding-secondary):not(.bbk-wedding-textlink) .elementor-button, .bbk-bonus-button:not(.bbk-bonus-secondary) .elementor-button, .bbk-slider-surface .slide-cta, .bbv-appcta, .bbv-visitcta):focus-visible,body :is(.bbk-primary-button, .bbk-wedding-button:not(.bbk-wedding-secondary):not(.bbk-wedding-textlink) .elementor-button, .bbk-bonus-button:not(.bbk-bonus-secondary) .elementor-button, .bbk-slider-surface .slide-cta, .bbv-appcta, .bbv-visitcta) a:focus-visible {outline:3px solid #454a42;outline-offset:4px;}
/* Secondary action hover must not inherit the old pink primary background. */
body :is(.bbk-wedding-secondary,.bbk-bonus-secondary) .elementor-button:hover {background:#eef4e4!important;color:#454a42!important;border-color:#89b82c!important;}
@media(prefers-reduced-motion:reduce){body :is(.bbk-primary-button, .bbk-wedding-button:not(.bbk-wedding-secondary):not(.bbk-wedding-textlink) .elementor-button, .bbk-bonus-button:not(.bbk-bonus-secondary) .elementor-button, .bbk-slider-surface .slide-cta, .bbv-appcta, .bbv-visitcta) {transition:none!important;}}
/* Native shortcode actions match the original homepage .bbv-appcta (local-69). */
body :is(.bbk-primary-button,.bbk-secondary-button){display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:13px 16px;border:0;border-radius:6px;font:700 11px/1.5 'DM Sans',sans-serif;text-decoration:none;cursor:pointer;box-sizing:border-box}
body .bbk-secondary-button{background:#fff;color:#454a42;border:1px solid #dce0d6;padding:12px 15px;transition:background-color .2s ease,border-color .2s ease}
body .bbk-secondary-button:hover{background:#eef4e4;color:#454a42;border-color:#89b82c}
body .bbk-secondary-button:focus-visible{outline:3px solid #454a42;outline-offset:4px}
body :is(.bbk-primary-button,.bbk-secondary-button):disabled{opacity:.45;cursor:default}
@media(prefers-reduced-motion:reduce){body .bbk-secondary-button{transition:none}}

body .bbk-primary-button svg{width:1em;height:1em}
