
.cds-demo-banner{position:relative;z-index:99999;background:#173d50;color:#fff;text-align:center;padding:7px 14px;font:12px/1.4 Arial,sans-serif;letter-spacing:.02em}.cds-demo-banner span{opacity:.85}.elementor-invisible{visibility:visible!important}.elementor-slides-wrapper .swiper-slide:not(:first-child){display:none}.swiper-slide{flex-shrink:0}.demo-form-note{font:13px/1.5 Arial,sans-serif!important;background:#eaf3f8;padding:12px!important;color:#173d50!important;width:100%}.demo-pending{max-width:850px;margin:80px auto;padding:30px;font-family:Arial,sans-serif;min-height:50vh}.demo-pending h1{font-size:44px}.demo-pending p{font-size:20px;line-height:1.6}#demo-message{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:100000;background:#173d50;color:white;padding:18px 24px;max-width:90vw;box-shadow:0 5px 25px #0003;border-radius:4px;font:16px/1.5 Arial,sans-serif}.elementor-nav-menu li:hover>ul,.elementor-nav-menu li:focus-within>ul{display:block!important;visibility:visible!important;opacity:1!important}.elementor-nav-menu--dropdown.demo-open{display:block!important;max-height:80vh!important;overflow:auto!important;transform:none!important}.woocommerce-product-gallery{opacity:1!important}.demo-search-results{padding:12px;background:#fff;color:#173d50;position:relative;z-index:1000}.demo-search-results a{display:block;padding:8px}.elementor-menu-toggle{cursor:pointer}@media(max-width:767px){.cds-demo-banner span{display:block}.demo-pending{margin:35px auto}.demo-pending h1{font-size:32px}}.demo-menu-close{display:block;margin:0 0 24px auto;background:#173d50;color:#fff;border:0;padding:10px 14px;font:600 15px Arial,sans-serif;cursor:pointer}

/* Dimensions come from each original Elementor widget, not one global slide count. */
.elementor-image-carousel-wrapper.demo-carousel{overflow:hidden}
.demo-carousel .elementor-image-carousel{display:flex;gap:var(--demo-slide-gap,0px);transition:transform .5s ease;will-change:transform}
.demo-carousel .elementor-image-carousel>.swiper-slide{flex:0 0 var(--demo-slide-width);width:var(--demo-slide-width);min-width:0}
.demo-carousel .swiper-slide-inner{margin:0}
.demo-carousel .elementor-swiper-button{cursor:pointer;z-index:2}
.demo-carousel .swiper-pagination{position:relative;bottom:auto;margin-top:0;text-align:center}
.demo-carousel .swiper-pagination-bullet{border:0;padding:0;width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.2;margin:0 4px;cursor:pointer}
.demo-carousel .swiper-pagination-bullet-active{opacity:1}
.woocommerce-product-gallery.demo-gallery .woocommerce-product-gallery__wrapper{display:block}
.woocommerce-product-gallery.demo-gallery .woocommerce-product-gallery__image{width:100%;max-width:100%}
.woocommerce-product-gallery.demo-gallery .woocommerce-product-gallery__image[hidden]{display:none!important}
.demo-gallery .flex-control-thumbs{display:flex;list-style:none;padding:0;margin:0;flex-wrap:wrap}
.demo-gallery .flex-control-thumbs li{width:25%;list-style:none}
.demo-gallery .flex-control-thumbs button{display:block;width:100%;border:0;padding:0;background:none;cursor:pointer;border-radius:0}
.demo-gallery .flex-control-thumbs img{display:block;width:100%;height:auto;opacity:.5}
.demo-gallery .flex-control-thumbs .flex-active{opacity:1}
.demo-image-viewer{border:0;padding:40px 16px 16px;background:#fff;max-width:94vw;max-height:94vh}
.demo-image-viewer::backdrop{background:#000c}
.demo-image-viewer img{display:block;max-width:88vw;max-height:80vh;object-fit:contain}
.demo-image-viewer button{position:absolute;right:8px;top:4px;border:0;background:transparent;color:#111;font:28px Arial;cursor:pointer;padding:0 6px}

.demo-carousel-fade .elementor-image-carousel{display:grid;transform:none!important;gap:0}
.demo-carousel-fade .elementor-image-carousel>.swiper-slide{grid-area:1/1;transition:opacity .5s ease}

/* The original desktop and mobile header stays visible while scrolling. */
.elementor-location-header{position:sticky;top:0;z-index:9990}

/* Exact captured feed breakpoints: provider settings name the upper width bound minWidth. */
.demo-instagram-feed{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}
.demo-instagram-feed a{position:relative;display:block;aspect-ratio:1;overflow:hidden}
.demo-instagram-feed img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0}
.demo-instagram-video{position:absolute;right:12px;top:10px;color:#fff;text-shadow:0 1px 4px #0008;font-size:20px}
@media(max-width:1024px){.demo-instagram-feed{grid-template-columns:repeat(4,minmax(0,1fr))}.demo-instagram-feed a:nth-child(n+9){display:none}}
@media(max-width:768px){.demo-instagram-feed{grid-template-columns:repeat(3,minmax(0,1fr))}.demo-instagram-feed a:nth-child(n+7){display:none}}
@media(max-width:375px){.demo-instagram-feed{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-instagram-feed a:nth-child(n+5){display:none}}

/* Elementor's captured popup supplies typography, sections and responsive spacing. */
[data-elementor-type="popup"][data-elementor-id="11497"]{display:none}
#elementor-popup-modal-11497.demo-source-popup{position:fixed;inset:0;margin:0;padding:0;border:0;width:100vw;height:100dvh;max-width:none;max-height:none;overflow:auto;color:inherit}
#elementor-popup-modal-11497.demo-source-popup:not([open]){display:none}
#elementor-popup-modal-11497.demo-source-popup[open]{display:flex}
#elementor-popup-modal-11497 .dialog-widget-content{position:relative;width:90vw;min-height:100dvh;margin:0;background:#262626}
#elementor-popup-modal-11497 .dialog-message{overflow:auto;max-height:100dvh}
#elementor-popup-modal-11497 [data-elementor-type="popup"]{display:block}
#elementor-popup-modal-11497 .dialog-close-button{position:absolute;z-index:10;padding:0;border:0;background:none;border-radius:0;color:#fff;cursor:pointer;line-height:1}
#elementor-popup-modal-11497 .dialog-close-button svg{fill:#fff}
/* WooCommerce's non-first-child rule describes thumbnails before its gallery initialises. */
.woocommerce-product-gallery.demo-gallery .woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image{width:100%!important;max-width:100%!important}
.woocommerce-product-gallery.demo-gallery .woocommerce-product-gallery__wrapper>.woocommerce-product-gallery__image img{width:100%;height:auto}

/* SmartMenus previously sized these panels; keep every label inside its panel. */
.elementor-location-header .elementor-nav-menu--main li{position:relative}
.elementor-location-header .elementor-nav-menu--main .sub-menu{position:absolute;top:100%;left:0;right:auto;width:max-content!important;min-width:280px!important;max-width:min(400px,calc(100vw - 32px))!important;margin:0!important;padding:0;box-sizing:border-box;z-index:10000}
.elementor-location-header .elementor-nav-menu--main .sub-menu .sub-menu{top:0!important;left:100%;right:auto}
.elementor-location-header .elementor-nav-menu--main .sub-menu li{width:100%;margin:0;box-sizing:border-box}
.elementor-location-header .elementor-nav-menu--main .sub-menu a{display:flex;width:100%;box-sizing:border-box;white-space:normal!important;overflow-wrap:break-word;line-height:1.35;gap:14px}
.elementor-location-header .elementor-nav-menu--main .sub-menu .sub-arrow{flex:0 0 auto;margin-left:auto;align-self:center}
.elementor-location-header .elementor-nav-menu--main .sub-menu.demo-menu-left{left:auto;right:100%}
