.elementor-46 .elementor-element.elementor-element-2c42e77{--display:flex;}.elementor-46 .elementor-element.elementor-element-781aa27 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-46 .elementor-element.elementor-element-d37d13d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:-15px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-46 .elementor-element.elementor-element-d14cf22 .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-46 .elementor-element.elementor-element-d14cf22 .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:rgba(0,0,0,0.5);}.elementor-46 .elementor-element.elementor-element-d14cf22{--titles-container-justify-content:center;--image-border-color:#FFFFFF;--image-border-width:1px;--image-border-radius:7px;--image-transition-duration:800ms;--overlay-transition-duration:800ms;--content-text-align:center;--title-text-color:#000000;--content-transition-duration:800ms;--content-transition-delay:800ms;--galleries-title-color-normal:#FFFFFF;--galleries-title-color-hover:#FFC107E3;--gallery-title-color-active:#6CBD70;}.elementor-46 .elementor-element.elementor-element-d14cf22 .elementor-gallery-item__title{font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:500;line-height:1.1px;}.elementor-46 .elementor-element.elementor-element-d14cf22 .elementor-gallery-title{font-family:"Poppins", Sans-serif;font-size:15px;}.elementor-46 .elementor-element.elementor-element-d14cf22 .elementor-gallery__titles-container{margin-bottom:33px;}.elementor-46 .elementor-element.elementor-element-5524c26{--display:flex;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-46 .elementor-element.elementor-element-6aca483 .elementor-button{background-color:#580CFF;font-family:"DM Sans", Sans-serif;font-size:14px;font-weight:500;fill:#FFFFFF;color:#FFFFFF;border-radius:20px 20px 20px 20px;padding:11px 19px 11px 19px;}.elementor-46 .elementor-element.elementor-element-6aca483{margin:11px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}/* Start custom CSS for gallery, class: .elementor-element-d14cf22 *//* ----------------------------
   Gallery Root Variables
---------------------------- */
.elementor-46 .elementor-element.elementor-element-d14cf22 {
    --horizontal-gap: 20px;
    --caption-background: #fff;
}

/* ----------------------------
   Gallery Images
---------------------------- */
.elementor-46 .elementor-element.elementor-element-d14cf22 .e-gallery-image {
    background-position: top;
}

.elementor-46 .elementor-element.elementor-element-d14cf22 .elementor-gallery-item__title {
    background: var(--caption-background);
    width: auto;
    padding: 14px 18px;
    border-radius: 4px;
    box-shadow: 0 0 20px 0 rgba(0,0,0,0.1);
    clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0% 100%);
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(10px);
}

.elementor-46 .elementor-element.elementor-element-d14cf22 .e-gallery-item:hover .elementor-gallery-item__title {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    opacity: 1;
    transform: translateY(0);
}

.elementor-46 .elementor-element.elementor-element-d14cf22 .elementor-widget-button {
    clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0% 100%);
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(10px);
}

.elementor-46 .elementor-element.elementor-element-d14cf22 .e-gallery-item:hover .elementor-widget-button {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    opacity: 1;
    transform: translateY(0);
}

/* ----------------------------
   Gallery Grid & Spacing
---------------------------- */
.elementor-46 .elementor-element.elementor-element-d14cf22 .e-gallery-grid {
    --hgap: var(--horizontal-gap) !important;
}

/* ----------------------------
   Accessibility
---------------------------- */
.elementor-46 .elementor-element.elementor-element-d14cf22 a:focus {
    outline: none;
}

/* ----------------------------
   Elementor Editor Fix
---------------------------- */
.elementor-46 .elementor-element.elementor-element-d14cf22:not(.show) .elementor-gallery-item {
    border-color: transparent;
}

body.elementor-editor-preview .elementor-46 .elementor-element.elementor-element-d14cf22:not(.show) .elementor-gallery-item,
body.elementor-editor-active .elementor-46 .elementor-element.elementor-element-d14cf22:not(.show) .elementor-gallery-item {
    border-color: var(--image-border-color);
}

/* ----------------------------
   Gallery Image Container
---------------------------- */
.e-gallery-image {
    background-position: top center !important; /* শুরুতে উপরে */
    background-size: cover !important;
    height: 300px; /* প্রয়োজনমতো height adjust করুন */
    transition: background-position 3.5s ease-in-out !important; /* ধীরে scroll হবে */
}

.e-gallery-item:hover .e-gallery-image {
    background-position: bottom center !important; /* hover করলে নিচে scroll হবে */
}

/* ----------------------------
   Filter Buttons
---------------------------- */
/* Default filter */
.rpb-gallery .elementor-gallery-title {
    background: #ffffff;
    color: #000000 !important;
    padding: 8px 16px;
    border-radius: 5px;
    margin: 5px;
    border: 1px solid #6cbd70;
    transition: all 0.3s ease;
}

/* Active filter */
.rpb-gallery .elementor-gallery-title.elementor-item-active {
    background: #6cbd70;
    color: #ffffff !important;
}

/* Hover */
.rpb-gallery .elementor-gallery-title:hover {
    background: #6cbd70;
    color: #ffffff !important;
    transform: translateY(-3px);
    box-shadow: 0 6px 15px rgba(0,0,0,0.15);
}/* End custom CSS */