/* Brand color tokens */
.epgs-wrapper { --epgs-brand: #E7BEB1; --epgs-brand-hover: #d5a79a; }

/* Main slider */
.epgs-wrapper .spg-swiper { width: 100%; height: var(--epgs-height, 540px); --swiper-navigation-size: 24px; }
.epgs-wrapper .spg-swiper .swiper-slide { position:relative; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.epgs-wrapper .spg-swiper .epgs-link { display:block; width:100%; height:100%; }
.epgs-wrapper .spg-swiper img.epgs-img,
.epgs-wrapper .spg-swiper .epgs-link > img.epgs-img { width:100%; height:100%; object-fit: var(--epgs-fit, contain); object-position:center center; }

/* Make Swiper use our brand color */
.epgs-wrapper { --swiper-theme-color: var(--epgs-brand) !important; }

/* Pagination bullets (shown only if enabled) */
.epgs-wrapper .swiper-pagination-bullet { background: var(--epgs-brand) !important; opacity:.6; }
.epgs-wrapper .swiper-pagination-bullet:hover { background: var(--epgs-brand-hover) !important; opacity:.85; }
.epgs-wrapper .swiper-pagination-bullet-active { background: var(--epgs-brand-hover) !important; opacity:1; }

/* Arrows (inherit from --swiper-theme-color but add hover) */
.epgs-wrapper .swiper-button-next,
.epgs-wrapper .swiper-button-prev { color: var(--epgs-brand) !important; }
.epgs-wrapper .swiper-button-next:hover,
.epgs-wrapper .swiper-button-prev:hover { color: var(--epgs-brand-hover) !important; }

/* Thumbs strip */
.epgs-wrapper .spg-thumbs { margin-top: 10px; height: calc(var(--epgs-thumb-height, 84px) + 2px); }
.epgs-wrapper .spg-thumbs .swiper-slide { width:auto; height:100%; margin-right: var(--epgs-thumb-gap, 8px); opacity:.7; border:1px solid #e5e7eb; border-radius:6px; overflow:hidden; }
.epgs-wrapper .spg-thumbs .swiper-slide-thumb-active { opacity:1; border-color: var(--epgs-brand-hover); }
.epgs-wrapper .spg-thumbs img.epgs-thumb,
.epgs-wrapper .spg-thumbs img { width:auto; height:100%; object-fit: cover; display:block; }

/* Elementor lightbox (loader/spinner + focus rings) */
.e-lightbox .e-loading-spinner:before,
.e-lightbox .e-loading-spinner:after {
    border-color: var(--epgs-brand) !important;
}
.elementor-lightbox .dialog-lightbox-loading,
.elementor-lightbox .dialog-lightbox-loading:before,
.elementor-lightbox .dialog-lightbox-loading:after {
    border-color: var(--epgs-brand) !important;
}
/* PhotoSwipe v4/v5 spinners (fallback) */
.pswp__preloader__icn, .pswp__preloader__cut, .pswp__preloader__donut {
    border-color: var(--epgs-brand) !important;
}

/* Focus outlines */
.epgs-wrapper .swiper-button-next:focus,
.epgs-wrapper .swiper-button-prev:focus,
.epgs-wrapper .swiper-pagination-bullet:focus {
    outline: 2px solid var(--epgs-brand-hover) !important;
    outline-offset: 2px;
}

.epgs-notice { padding:10px; background:#fff3cd; border:1px solid #ffeeba; }
