.wp-block-custom-blocks-image-carousel{position:relative;margin-top:2rem;margin-bottom:2rem}.wp-block-custom-blocks-image-carousel .image-carousel-editor{position:relative;width:100%;padding:0 30px}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-placeholder{display:flex;align-items:center;justify-content:center;height:100%;background:#f5f5f5;border:2px dashed #ddd;color:#666;font-style:italic}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-container{position:relative;overflow:hidden}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-track{display:flex;transition:transform .5s ease-in-out;height:100%}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-slide{position:relative;flex-shrink:0;height:100%;padding:0 5px;box-sizing:border-box}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-slide:first-child{padding-left:0}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-slide:last-child{padding-right:0}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-slide img{width:100%;height:100%;object-fit:cover;display:block;border-radius:4px;cursor:pointer;transition:transform .3s ease}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-slide img:hover{transform:scale(1.02)}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-slide .remove-image-btn{position:absolute;top:10px;right:10px;background:hsla(0,0%,100%,.9);border:none;border-radius:4px;padding:5px 10px;font-size:12px;cursor:pointer;transition:background .2s}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-slide .remove-image-btn:hover{background:#fff}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-arrow{position:absolute;top:45%;transform:translateY(-45%);border:none;font-size:40px;cursor:pointer;z-index:10;background:none;color:#2b1377}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-arrow.carousel-prev{left:0}.wp-block-custom-blocks-image-carousel .image-carousel-editor .carousel-arrow.carousel-next{right:0}.wp-block-custom-blocks-image-carousel .carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:20px}.wp-block-custom-blocks-image-carousel .carousel-dots .carousel-dot{width:12px;height:12px;border-radius:50%;border:2px solid rgba(0,0,0,.3);background:rgba(0,0,0,0);cursor:pointer;transition:all .3s ease}.wp-block-custom-blocks-image-carousel .carousel-dots .carousel-dot:hover{background:rgba(0,0,0,.2)}.wp-block-custom-blocks-image-carousel .carousel-dots .carousel-dot.active{background:#2b1377;border-color:#2b1377}.wp-block-custom-blocks-image-carousel:not(.is-selected) .image-carousel-editor .remove-image-btn{display:none}.carousel-modal{display:none;position:fixed;z-index:9999;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.9);backdrop-filter:blur(5px);opacity:0;transition:opacity .3s ease}@media(max-width:768px){.carousel-modal{display:none!important}}.carousel-modal.active{display:flex;opacity:1;align-items:center;justify-content:center}.carousel-modal .carousel-modal-content{position:relative;max-width:80vw;max-height:80vh;margin:auto;display:flex;flex-direction:column;align-items:center;justify-content:center}.carousel-modal .carousel-modal-image{max-width:100%;max-height:70vh;object-fit:contain;border-radius:8px;box-shadow:0 10px 30px rgba(0,0,0,.5);transform:scale(.9);transition:transform .3s ease}.carousel-modal .carousel-modal-image.loaded{transform:scale(1)}.carousel-modal .carousel-modal-caption{color:#fff;text-align:center;margin-top:20px;font-size:16px;max-width:80%;line-height:1.5;opacity:0;transform:translateY(20px);transition:all .3s ease}.carousel-modal .carousel-modal-caption.visible{opacity:1;transform:translateY(0)}.carousel-modal .carousel-modal-close{position:absolute;top:-50px;right:0;color:#fff!important;font-size:40px;font-weight:700;cursor:pointer;transition:color .3s ease;z-index:10}.carousel-modal .carousel-modal-close:hover{color:#ff6b6b}@media(max-width:768px){.carousel-modal .carousel-modal-close{top:-40px;font-size:32px}}.carousel-modal .carousel-modal-nav{position:absolute;top:50%;transform:translateY(-50%);background:hsla(0,0%,100%,.1);color:#fff;border:none;padding:10px 17px;cursor:pointer;font-size:24px;border-radius:50%;transition:all .3s ease;backdrop-filter:blur(10px)}.carousel-modal .carousel-modal-nav:hover{background:hsla(0,0%,100%,.2);transform:translateY(-50%) scale(1.1)}.carousel-modal .carousel-modal-nav.carousel-modal-prev{left:-60px}.carousel-modal .carousel-modal-nav.carousel-modal-next{right:-60px}@media(max-width:768px){.carousel-modal .carousel-modal-nav{padding:12px 10px;font-size:20px}.carousel-modal .carousel-modal-nav.carousel-modal-prev{left:20px}.carousel-modal .carousel-modal-nav.carousel-modal-next{right:20px}}.carousel-modal-image:not(.loaded)::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border:3px solid hsla(0,0%,100%,.3);border-top:3px solid #fff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0deg)}100%{transform:translate(-50%,-50%) rotate(360deg)}}