.bkbg-gs-wrapper { box-sizing: border-box; width: 100%; position: relative; overflow: hidden; background: var(--bkbg-gs-gradient, linear-gradient(135deg, #6c3fb5, #3b82f6)); background-size: 300% 300%; } /* Animated gradient */ @keyframes bkbgGsShift { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } } .bkbg-gs-wrapper.bkbg-gs--animate { animation: bkbgGsShift var(--bkbg-gs-anim-dur, 8s) ease infinite; } /* Overlay */ .bkbg-gs-overlay { position: absolute; inset: 0; background: var(--bkbg-gs-overlay-color, rgba(0,0,0,0.3)); pointer-events: none; z-index: 0; } /* Inner */ .bkbg-gs-inner { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; min-height: var(--bkbg-gs-min-height, 480px); padding: 48px 24px; box-sizing: border-box; } .bkbg-gs-wrapper[style*="text-align:left"] .bkbg-gs-inner, .bkbg-gs-wrapper.bkbg-gs--align-left .bkbg-gs-inner { align-items: flex-start; text-align: left; } .bkbg-gs-wrapper[style*="text-align:right"] .bkbg-gs-inner, .bkbg-gs-wrapper.bkbg-gs--align-right .bkbg-gs-inner { align-items: flex-end; text-align: right; } /* Badge */ .bkbg-gs-badge { display: inline-flex; align-items: center; padding: 6px 16px; border-radius: var(--bkbg-gs-badge-r, 99px); background: var(--bkbg-gs-badge-bg, rgba(255,255,255,0.18)); color: var(--bkbg-gs-badge-color, #fff); font-family: var(--bkbg-gs-bg-font-family, inherit); font-size: var(--bkbg-gs-bg-font-size-d, 13px); font-weight: var(--bkbg-gs-bg-font-weight, 700); font-style: var(--bkbg-gs-bg-font-style, normal); text-decoration: var(--bkbg-gs-bg-text-decoration, none); text-transform: var(--bkbg-gs-bg-text-transform, none); line-height: var(--bkbg-gs-bg-line-height-d, 1.4); letter-spacing: var(--bkbg-gs-bg-letter-spacing-d, normal); word-spacing: var(--bkbg-gs-bg-word-spacing-d, normal); margin-bottom: 20px; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); } /* Headline */ .bkbg-gs-headline { font-family: var(--bkbg-gs-hl-font-family, inherit); font-size: var(--bkbg-gs-hl-font-size-d, 52px); font-weight: var(--bkbg-gs-hl-font-weight, 900); font-style: var(--bkbg-gs-hl-font-style, normal); text-decoration: var(--bkbg-gs-hl-text-decoration, none); text-transform: var(--bkbg-gs-hl-text-transform, none); line-height: var(--bkbg-gs-hl-line-height-d, 1.12); letter-spacing: var(--bkbg-gs-hl-letter-spacing-d, normal); word-spacing: var(--bkbg-gs-hl-word-spacing-d, normal); color: var(--bkbg-gs-headline-color, #fff); margin: 0 0 16px; } /* Headline heading specificity (0,2,0) beats editor theme heading rules */ .bkbg-gs-inner h1.bkbg-gs-headline, .bkbg-gs-inner h2.bkbg-gs-headline, .bkbg-gs-inner h3.bkbg-gs-headline, .bkbg-gs-inner h4.bkbg-gs-headline { font-family: var(--bkbg-gs-hl-font-family, inherit); font-size: var(--bkbg-gs-hl-font-size-d, 52px); font-weight: var(--bkbg-gs-hl-font-weight, 900); font-style: var(--bkbg-gs-hl-font-style, normal); text-decoration: var(--bkbg-gs-hl-text-decoration, none); text-transform: var(--bkbg-gs-hl-text-transform, none); line-height: var(--bkbg-gs-hl-line-height-d, 1.12); letter-spacing: var(--bkbg-gs-hl-letter-spacing-d, normal); word-spacing: var(--bkbg-gs-hl-word-spacing-d, normal); color: var(--bkbg-gs-headline-color, #fff); margin: 0 0 16px; } /* Subtext */ .bkbg-gs-subtext { font-family: var(--bkbg-gs-st-font-family, inherit); font-size: var(--bkbg-gs-st-font-size-d, 19px); font-weight: var(--bkbg-gs-st-font-weight, 400); font-style: var(--bkbg-gs-st-font-style, normal); text-decoration: var(--bkbg-gs-st-text-decoration, none); text-transform: var(--bkbg-gs-st-text-transform, none); line-height: var(--bkbg-gs-st-line-height-d, 1.65); letter-spacing: var(--bkbg-gs-st-letter-spacing-d, normal); word-spacing: var(--bkbg-gs-st-word-spacing-d, normal); color: var(--bkbg-gs-subtext-color, rgba(255,255,255,0.82)); margin: 0 0 32px; max-width: 580px; } /* Actions */ .bkbg-gs-actions { display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; } /* Buttons */ .bkbg-gs-btn { display: inline-flex; align-items: center; justify-content: center; padding: 0 28px; height: calc(var(--bkbg-gs-btn-sz, 16px) + 24px); border-radius: var(--bkbg-gs-btn-r, 99px); font-size: var(--bkbg-gs-btn-sz, 16px); font-weight: 700; font-family: inherit; text-decoration: none; cursor: pointer; box-sizing: border-box; transition: opacity 0.2s, transform 0.2s; letter-spacing: 0.01em; } .bkbg-gs-btn:hover { opacity: 0.88; transform: translateY(-1px); } .bkbg-gs-btn--primary, .bkbg-gs-btn--filled { background: var(--bkbg-gs-btn-bg, #fff); color: var(--bkbg-gs-btn-color, #6c3fb5); border: 2px solid transparent; } .bkbg-gs-btn--secondary, .bkbg-gs-btn--outline { background: transparent; color: var(--bkbg-gs-btn2-color, #fff); border: 2px solid var(--bkbg-gs-btn2-border, rgba(255,255,255,0.6)); } .bkbg-gs-btn--ghost { background: rgba(255,255,255,0.12); color: var(--bkbg-gs-btn2-color, #fff); border: 2px solid transparent; backdrop-filter: blur(8px); } @media (max-width: 768px) { .bkbg-gs-inner { min-height: auto; padding: 60px 20px; } .bkbg-gs-actions { flex-direction: column; align-items: stretch; } .bkbg-gs-btn { width: 100%; } } /* Typography responsive – tablet */ @media (max-width: 1024px) { .bkbg-gs-inner .bkbg-gs-headline { font-size: var(--bkbg-gs-hl-font-size-t, var(--bkbg-gs-hl-font-size-d, 52px)); line-height: var(--bkbg-gs-hl-line-height-t, var(--bkbg-gs-hl-line-height-d, 1.12)); letter-spacing: var(--bkbg-gs-hl-letter-spacing-t, var(--bkbg-gs-hl-letter-spacing-d, normal)); word-spacing: var(--bkbg-gs-hl-word-spacing-t, var(--bkbg-gs-hl-word-spacing-d, normal)); } .bkbg-gs-subtext { font-size: var(--bkbg-gs-st-font-size-t, var(--bkbg-gs-st-font-size-d, 19px)); line-height: var(--bkbg-gs-st-line-height-t, var(--bkbg-gs-st-line-height-d, 1.65)); letter-spacing: var(--bkbg-gs-st-letter-spacing-t, var(--bkbg-gs-st-letter-spacing-d, normal)); word-spacing: var(--bkbg-gs-st-word-spacing-t, var(--bkbg-gs-st-word-spacing-d, normal)); } .bkbg-gs-badge { font-size: var(--bkbg-gs-bg-font-size-t, var(--bkbg-gs-bg-font-size-d, 13px)); line-height: var(--bkbg-gs-bg-line-height-t, var(--bkbg-gs-bg-line-height-d, 1.4)); letter-spacing: var(--bkbg-gs-bg-letter-spacing-t, var(--bkbg-gs-bg-letter-spacing-d, normal)); word-spacing: var(--bkbg-gs-bg-word-spacing-t, var(--bkbg-gs-bg-word-spacing-d, normal)); } } /* Typography responsive – mobile */ @media (max-width: 767px) { .bkbg-gs-inner .bkbg-gs-headline { font-size: var(--bkbg-gs-hl-font-size-m, var(--bkbg-gs-hl-font-size-t, var(--bkbg-gs-hl-font-size-d, 52px))); line-height: var(--bkbg-gs-hl-line-height-m, var(--bkbg-gs-hl-line-height-t, var(--bkbg-gs-hl-line-height-d, 1.12))); letter-spacing: var(--bkbg-gs-hl-letter-spacing-m, var(--bkbg-gs-hl-letter-spacing-t, var(--bkbg-gs-hl-letter-spacing-d, normal))); word-spacing: var(--bkbg-gs-hl-word-spacing-m, var(--bkbg-gs-hl-word-spacing-t, var(--bkbg-gs-hl-word-spacing-d, normal))); } .bkbg-gs-subtext { font-size: var(--bkbg-gs-st-font-size-m, var(--bkbg-gs-st-font-size-t, var(--bkbg-gs-st-font-size-d, 19px))); line-height: var(--bkbg-gs-st-line-height-m, var(--bkbg-gs-st-line-height-t, var(--bkbg-gs-st-line-height-d, 1.65))); letter-spacing: var(--bkbg-gs-st-letter-spacing-m, var(--bkbg-gs-st-letter-spacing-t, var(--bkbg-gs-st-letter-spacing-d, normal))); word-spacing: var(--bkbg-gs-st-word-spacing-m, var(--bkbg-gs-st-word-spacing-t, var(--bkbg-gs-st-word-spacing-d, normal))); } .bkbg-gs-badge { font-size: var(--bkbg-gs-bg-font-size-m, var(--bkbg-gs-bg-font-size-t, var(--bkbg-gs-bg-font-size-d, 13px))); line-height: var(--bkbg-gs-bg-line-height-m, var(--bkbg-gs-bg-line-height-t, var(--bkbg-gs-bg-line-height-d, 1.4))); letter-spacing: var(--bkbg-gs-bg-letter-spacing-m, var(--bkbg-gs-bg-letter-spacing-t, var(--bkbg-gs-bg-letter-spacing-d, normal))); word-spacing: var(--bkbg-gs-bg-word-spacing-m, var(--bkbg-gs-bg-word-spacing-t, var(--bkbg-gs-bg-word-spacing-d, normal))); } }