/* St. Joseph's Central School – helpers for the theme widgets (complements the original add-on CSS). */

/* Nav menu: sub menus are shown by eps-widgets.js (replaces SmartMenus). */
.elementor-widget-eps-nav-menu .elementor-nav-menu--main .elementor-nav-menu ul{display:none}
.elementor-widget-eps-nav-menu .elementor-nav-menu--main .elementor-nav-menu li{position:relative}
.elementor-widget-eps-nav-menu .elementor-nav-menu--main .elementor-nav-menu > li > ul{top:100%;left:0}
.elementor-widget-eps-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu ul{display:none}
.elementor-widget-eps-nav-menu .elementor-nav-menu--dropdown .elementor-nav-menu ul.eps-open{display:block}
.elementor-widget-eps-nav-menu .sub-arrow svg{width:1em;height:1em;fill:currentColor}

/* Gallery grid. */
.eps-gallery{display:grid;grid-template-columns:repeat(var(--eps-cols,4),minmax(0,1fr));gap:var(--eps-gap,10px)}
.eps-gallery .e-gallery-item{position:relative;display:block;overflow:hidden}
.eps-gallery .e-gallery-image{padding-bottom:var(--eps-ratio,66.6667%);background-size:cover;background-position:center;transition:transform .5s}

/* ElementsKit accordion collapse. */
.elementor-widget-eps-accordion .elementskit-accordion .collapse:not(.show){display:none}
.elementor-widget-eps-accordion .elementskit-card .ekit_accordion_active_icon{display:none}
.elementor-widget-eps-accordion .elementskit-card.active .ekit_accordion_active_icon{display:block}
.elementor-widget-eps-accordion .elementskit-card.active .ekit_accordion_normal_icon{display:none}

/* EAEL accordion / tabs. */
.elementor-widget-eps-adv-accordion .eael-accordion-content{display:none}
.elementor-widget-eps-adv-accordion .eael-accordion-header{cursor:pointer}
.elementor-widget-eps-adv-accordion .eael-accordion-header.show .fa-toggle{transform:rotate(-180deg)}
.elementor-widget-eps-adv-tabs .eael-tab-content-item{display:none}
.elementor-widget-eps-adv-tabs .eael-tab-content-item.active{display:block}
.elementor-widget-eps-adv-tabs .eael-tab-nav-item{cursor:pointer}

/* Video popup button. */
.elementor-widget-eps-video-popup .video-content{text-align:center}

/* Form messages. */
.eps-form .eps-form-message{width:100%;margin-top:10px}
.eps-form .elementor-message-success{color:#1a7f37}
.eps-form .elementor-message-danger{color:#b42318}
.eps-form button[disabled]{opacity:.7}

/* Calendar. */
.eps-calendar .fc-event{cursor:pointer}
.eps-calendar .fc-toolbar-title{font-size:1.4em}
.eps-event-modal{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px}
.eps-event-modal__box{background:#fff;color:#222;max-width:480px;width:100%;border-radius:8px;padding:24px 24px 18px;position:relative}
.eps-event-modal__box h3{margin:0 0 6px;font-size:20px}
.eps-event-modal__date{color:#FFA31A;font-weight:600;margin:0 0 10px}
.eps-event-modal__close{position:absolute;top:6px;right:10px;background:none;border:0;font-size:26px;line-height:1;cursor:pointer;color:#555;padding:4px}

/* Loop grid (flattened loops). */
.eps-loop-grid > .e-con{min-width:0}

/* Swiper navigation (same as Elementor's e-swiper styles, in case they are not loaded). */
.elementor-element .elementor-swiper-button{align-items:center;cursor:pointer;display:inline-flex;font-size:25px;position:absolute;top:50%;transform:translateY(-50%);z-index:1;color:hsla(0,0%,93%,.9)}
.elementor-element .elementor-swiper-button svg{fill:currentColor;height:1em;width:1em}
.elementor-element .elementor-swiper-button-prev{left:10px}
.elementor-element .elementor-swiper-button-next{right:10px}
.elementor-element .elementor-swiper-button.swiper-button-disabled{opacity:.3}
.elementor-element .swiper{overflow:hidden;position:relative}
