.responsive-banner-slider {
  position: relative;
  width: 100%;
  height: var(--rbp-desktop-height, 500px);
  overflow: hidden;
  border-radius: var(--rbp-radius, 0);
  background: #eee;
  isolation: isolate;
}
.responsive-banner-track,.responsive-banner-slide,.responsive-banner-slide-link { position: absolute; inset: 0; display: block; width: 100%; height: 100%; }
.responsive-banner-slide { z-index: 0; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity var(--rbp-transition, 800ms) cubic-bezier(.22,.61,.36,1), visibility var(--rbp-transition, 800ms) linear; }
.responsive-banner-slide.is-active { z-index: 1; opacity: 1; visibility: visible; pointer-events: auto; }
.responsive-banner-image { display: block; width: 100%; height: 100% !important; max-width: none !important; object-fit: cover; object-position: var(--rbp-focus, center center); transform: scale(1.012); transition: transform 6s cubic-bezier(.2,.65,.3,1); }
.responsive-banner-slide.is-active .responsive-banner-image { transform: scale(1); }
.responsive-banner-overlay { position: absolute; inset: 0; background: rgba(0,0,0,var(--rbp-overlay,0)); pointer-events: none; }
.responsive-banner-arrow { position: absolute; z-index: 3; top: 50%; display: grid; place-items: center; width: 44px; height: 44px; margin: 0; padding: 0; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; background: rgba(25,15,38,.28); color: var(--rbp-accent,#fff); font: 400 24px/1 Arial,sans-serif; cursor: pointer; transform: translateY(-50%); backdrop-filter: blur(4px); transition: background .22s ease, transform .22s ease; }
.responsive-banner-arrow:hover,.responsive-banner-arrow:focus-visible { background: rgba(25,15,38,.62); transform: translateY(-50%) scale(1.06); outline: 2px solid rgba(255,255,255,.75); outline-offset: 2px; }
.rbp-prev { left: 18px; }.rbp-next { right: 18px; }
.responsive-banner-dots { position: absolute; z-index: 3; left: 50%; bottom: 16px; display: flex; align-items: center; gap: 9px; transform: translateX(-50%); }
.responsive-banner-dot { width: 9px; height: 9px; margin: 0; padding: 0; border: 1px solid var(--rbp-accent,#fff); border-radius: 50%; background: transparent; cursor: pointer; transition: width .25s ease, border-radius .25s ease, background .25s ease; }
.responsive-banner-dot.is-active { width: 27px; border-radius: 99px; background: var(--rbp-accent,#fff); }
.responsive-banner-empty { padding: 16px; border: 1px dashed #aaa; background: #fffbe7; text-align: center; }
.responsive-banner-live { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
body.rbp-popup-open { overflow: hidden; }
.rbp-popup { position: fixed; inset: 0; z-index: 999999; display: grid; place-items: center; padding: 18px; opacity: 0; visibility: hidden; transition: opacity .4s cubic-bezier(.22,.61,.36,1), visibility .4s linear; }
.rbp-popup[hidden] { display: none !important; }
.rbp-popup-backdrop { position: absolute; inset: 0; background: rgba(20,10,35,.72); opacity: 0; backdrop-filter: blur(0); transition: opacity .42s ease, backdrop-filter .42s ease; }
.rbp-popup-dialog { position: relative; width: min(92vw,480px); max-height: 92vh; overflow: auto; background: #fff; border-radius: 20px; box-shadow: 0 30px 100px rgba(0,0,0,.38); opacity: 0; transform: translateY(38px) scale(.92); filter: blur(3px); transition: opacity .38s ease, transform .48s cubic-bezier(.16,1,.3,1), filter .38s ease; outline: 0; will-change: transform,opacity; }
.rbp-popup.is-visible { opacity: 1; visibility: visible; }
.rbp-popup.is-visible .rbp-popup-backdrop { opacity: 1; backdrop-filter: blur(5px); }
.rbp-popup.is-visible .rbp-popup-dialog { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
.rbp-popup.is-closing { opacity: 0; visibility: visible; }
.rbp-popup.is-closing .rbp-popup-backdrop { opacity: 0; backdrop-filter: blur(0); }
.rbp-popup.is-closing .rbp-popup-dialog { opacity: 0; transform: translateY(22px) scale(.96); filter: blur(2px); transition-duration: .32s; transition-timing-function: cubic-bezier(.4,0,1,1); }
.rbp-popup-close { position: absolute; z-index: 2; top: 11px; right: 11px; display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 50%; background: rgba(255,255,255,.95); color: #27104d; font: 400 31px/1 Arial,sans-serif; cursor: pointer; box-shadow: 0 4px 18px rgba(0,0,0,.18); transition: transform .22s ease, background .22s ease; }
.rbp-popup-close:hover { transform: rotate(6deg) scale(1.07); background: #fff; }
.rbp-popup-media { width: 100%; aspect-ratio: 1/1; overflow: hidden; background: #eee; }
.rbp-popup-image { display: block; width: 100%; height: 100% !important; object-fit: cover; }
.rbp-popup-content { padding: 24px 28px 29px; text-align: center; }
.rbp-popup-content h2 { margin: 0 0 10px; color: #28104e; font-size: clamp(24px,5vw,34px); line-height: 1.16; }
.rbp-popup-content p { margin: 0 0 20px; color: #5f5967; font-size: 16px; line-height: 1.55; }
.rbp-popup-button { display: inline-flex; align-items: center; justify-content: center; min-height: 47px; padding: 10px 25px; border-radius: 10px; background: var(--rbp-popup-accent,#35106b); color: #fff !important; text-decoration: none !important; font-weight: 700; box-shadow: 0 8px 22px color-mix(in srgb,var(--rbp-popup-accent,#35106b) 30%,transparent); transition: transform .25s ease, filter .25s ease; }
.rbp-popup-button:hover { filter: brightness(1.13); transform: translateY(-2px); }
@media (max-width: 600px) {
  .responsive-banner-arrow { width: 38px; height: 38px; font-size: 20px; }.rbp-prev{left:10px}.rbp-next{right:10px}.responsive-banner-dots{bottom:11px}
  .rbp-popup { padding: 12px; }.rbp-popup-dialog{width:min(94vw,420px);border-radius:15px}.rbp-popup-content{padding:20px}
}
@media (prefers-reduced-motion: reduce) {
  .responsive-banner-slide,.responsive-banner-image,.rbp-popup,.rbp-popup-backdrop,.rbp-popup-dialog,.rbp-popup-button { transition: none !important; animation: none !important; }
}

