.rcs{position:relative;display:block;width:100%;height:var(--rcs-h);overflow:hidden;background:#111;color:var(--rcs-fg);isolation:isolate}
.rcs--bleed{width:var(--rcs-vw,100vw);max-width:none;left:calc(50% - var(--rcs-vw,100vw) / 2);margin-left:0!important;margin-right:0!important}
@media (max-width:767px){.rcs{height:var(--rcs-hm)}}
.rcs-slide{position:absolute;inset:0;opacity:0;z-index:0}
.rcs-slide.is-prev{opacity:1;z-index:1}
.rcs-slide.is-active{opacity:1;z-index:2;transition:opacity var(--rcs-fade) ease}
.rcs .rcs-img{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;object-fit:cover;border-radius:0}
.rcs-slide::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,var(--rcs-ov));pointer-events:none}
.rcs-inner{position:absolute;inset:0;z-index:1;display:flex;box-sizing:border-box;width:100%;max-width:var(--rcs-container);margin:0 auto;padding:clamp(24px,6vw,80px) clamp(20px,4vw,40px)}
.rcs-h-left{justify-content:flex-start;text-align:left}
.rcs-h-center{justify-content:center;text-align:center}
.rcs-h-right{justify-content:flex-end;text-align:right}
.rcs-v-top{align-items:flex-start}
.rcs-v-middle{align-items:center}
.rcs-v-bottom{align-items:flex-end}
.rcs-content{max-width:min(640px,100%)}
.rcs .rcs-title{margin:0 0 .35em;color:inherit;font-size:clamp(28px,4.5vw,56px);line-height:1.1;text-shadow:0 1px 12px rgba(0,0,0,.25)}
.rcs .rcs-text{margin:0 0 1.25em;color:inherit;font-size:clamp(16px,1.6vw,20px);line-height:1.5}
.rcs .rcs-text p{margin:0 0 .5em;color:inherit}
.rcs .rcs-text p:last-child{margin:0}
.rcs .rcs-btn{display:inline-block;padding:.85em 1.8em;background:var(--rcs-btn-bg);color:var(--rcs-btn-fg);border-radius:3px;font-weight:600;line-height:1.2;text-decoration:none;transition:transform .2s ease,opacity .2s ease}
.rcs .rcs-btn:hover,.rcs .rcs-btn:focus-visible{opacity:.9;transform:translateY(-1px);color:var(--rcs-btn-fg)}
.rcs-slide .rcs-content{opacity:0;transform:translateY(14px)}
.rcs-slide.is-active .rcs-content{opacity:1;transform:none;transition:opacity .7s ease calc(var(--rcs-fade) * .4),transform .7s ease calc(var(--rcs-fade) * .4)}
.rcs:not(.rcs-ready) .rcs-slide.is-active .rcs-content{opacity:1;transform:none;transition:none}
.rcs-arrow{position:absolute;top:50%;z-index:3;display:flex;align-items:center;justify-content:center;width:44px;height:44px;margin-top:-22px;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.3);color:#fff;cursor:pointer;transition:background .2s}
.rcs-arrow:hover,.rcs-arrow:focus-visible{background:rgba(0,0,0,.6)}
.rcs-arrow svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.rcs-prev{left:16px}.rcs-next{right:16px}
.rcs-dots{position:absolute;left:0;right:0;bottom:18px;z-index:3;display:flex;justify-content:center;gap:10px}
.rcs-dot{width:10px;height:10px;padding:0;border:2px solid #fff;border-radius:50%;background:transparent;cursor:pointer;opacity:.85}
.rcs-dot[aria-current="true"]{background:#fff;opacity:1}
.rcs button:focus-visible,.rcs a:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media (max-width:767px){.rcs-arrow{display:none}}
@media (prefers-reduced-motion:reduce){.rcs-slide.is-active,.rcs-slide.is-active .rcs-content{transition-duration:.01ms!important}}
/* Page builders often save the shortcode as <p>[rc_slider]</p>; the browser splits that into empty paragraphs above and below the slider. Hide them. */
p:empty:has(+ .rcs),.rcs + p:empty{display:none!important}
