.elementor-577 .elementor-element.elementor-element-c9fb462{--display:flex;--min-height:322px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-577 .elementor-element.elementor-element-c9fb462:not(.elementor-motion-effects-element-type-background), .elementor-577 .elementor-element.elementor-element-c9fb462 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#008E8F;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-577 .elementor-element.elementor-element-35a2f8b .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-size:60px;font-weight:600;line-height:66px;color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-577 .elementor-element.elementor-element-c38d787{font-family:"Open Sans", Sans-serif;font-size:18px;font-weight:600;line-height:26px;color:#FFFFFF;}.elementor-577 .elementor-element.elementor-element-f914f7a{--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;--padding-top:24px;--padding-bottom:96px;--padding-left:24px;--padding-right:24px;}.elementor-577 .elementor-element.elementor-element-bf1a527{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:96px;--padding-bottom:96px;--padding-left:24px;--padding-right:24px;}.elementor-577 .elementor-element.elementor-element-bf1a527:not(.elementor-motion-effects-element-type-background), .elementor-577 .elementor-element.elementor-element-bf1a527 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#008E8F;}.elementor-577 .elementor-element.elementor-element-de2f455{padding:0px 0px 24px 0px;text-align:center;}.elementor-577 .elementor-element.elementor-element-de2f455 .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-size:48px;font-weight:600;line-height:56px;color:#FFFFFF;}.elementor-577 .elementor-element.elementor-element-8c9641d{width:var( --container-widget-width, 764px );max-width:764px;padding:0px 0px 40px 0px;--container-widget-width:764px;--container-widget-flex-grow:0;text-align:center;font-family:"Open Sans", Sans-serif;font-size:18px;font-weight:600;line-height:26px;color:#FFFFFF;}.elementor-577 .elementor-element.elementor-element-8c9641d p{margin-block-end:0px;}.elementor-577 .elementor-element.elementor-element-dcefe51{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-577 .elementor-element.elementor-element-baf4edd .elementor-button{background-color:#FFFFFF;font-family:"Open Sans", Sans-serif;font-size:14px;font-weight:500;line-height:22px;fill:#008E8F;color:#008E8F;border-radius:7px 7px 7px 7px;padding:8px 16px 8px 16px;}.elementor-577 .elementor-element.elementor-element-baf4edd .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-577 .elementor-element.elementor-element-baf4edd .elementor-button .elementor-button-content-wrapper{gap:11px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-577 .elementor-element.elementor-element-c9fb462{--min-height:306px;--gap:22px 22px;--row-gap:22px;--column-gap:22px;--padding-top:0px;--padding-bottom:0px;--padding-left:22px;--padding-right:22px;}.elementor-577 .elementor-element.elementor-element-35a2f8b .elementor-heading-title{font-size:40px;line-height:54px;}.elementor-577 .elementor-element.elementor-element-c38d787{font-size:16px;}.elementor-577 .elementor-element.elementor-element-f914f7a{--padding-top:22px;--padding-bottom:64px;--padding-left:22px;--padding-right:22px;}.elementor-577 .elementor-element.elementor-element-bf1a527{--padding-top:64px;--padding-bottom:64px;--padding-left:22px;--padding-right:22px;}.elementor-577 .elementor-element.elementor-element-de2f455{padding:0px 0px 14px 0px;}.elementor-577 .elementor-element.elementor-element-de2f455 .elementor-heading-title{font-size:40px;line-height:54px;}.elementor-577 .elementor-element.elementor-element-8c9641d{padding:0px 0px 36px 0px;font-size:16px;}.elementor-577 .elementor-element.elementor-element-dcefe51{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(max-width:767px){.elementor-577 .elementor-element.elementor-element-c9fb462{--min-height:411px;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:36px;--padding-bottom:36px;--padding-left:16px;--padding-right:16px;}.elementor-577 .elementor-element.elementor-element-35a2f8b .elementor-heading-title{font-size:24px;line-height:36px;}.elementor-577 .elementor-element.elementor-element-c38d787{text-align:center;font-size:11px;line-height:16px;}.elementor-577 .elementor-element.elementor-element-f914f7a{--gap:11px 11px;--row-gap:11px;--column-gap:11px;--padding-top:16px;--padding-bottom:26px;--padding-left:16px;--padding-right:16px;}.elementor-577 .elementor-element.elementor-element-bf1a527{--padding-top:36px;--padding-bottom:36px;--padding-left:16px;--padding-right:16px;}.elementor-577 .elementor-element.elementor-element-de2f455{padding:0px 0px 11px 0px;}.elementor-577 .elementor-element.elementor-element-de2f455 .elementor-heading-title{font-size:24px;line-height:36px;}.elementor-577 .elementor-element.elementor-element-8c9641d{padding:0px 0px 24px 0px;font-size:11px;line-height:16px;}.elementor-577 .elementor-element.elementor-element-dcefe51{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-577 .elementor-element.elementor-element-baf4edd .elementor-button{font-size:11px;}}/* Start custom CSS for shortcode, class: .elementor-element-a1d3812 *//* Frontend Styles for Gallery Search Filter */

.gsf-gallery-container {
    max-width: 1550px;
    margin: 0 auto;
   
    font-family: 'Open Sans', sans-serif;
}

/* Controls Area (Search & Filter) */
.gsf-controls {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 32px; /* Standardized gap */
    margin-bottom: 96px;
    padding-bottom: 32px;
    border-bottom: 1px solid #eaecf0;
}

.gsf-search-wrap,
.gsf-filter-wrap {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.gsf-search-wrap {
    flex-grow: 1;
}

.gsf-filter-wrap {
    min-width: 250px;
}

/* Label Styling (Search & Filter) */
.gsf-controls label {
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 22px;
    color: #262626;
}

/* Input Fields Common Styles (Search & Filter Select) */
.gsf-search-input-wrap input,
#gsf-category-filter {
    background-color: #F6F6F6;
    padding: 11px 14px;
    border: none;
    border-radius: 8px;
    width: 100%;
    outline: none;
    font-family: 'Open Sans', sans-serif;
}

/* Specific Search Input Styling */
.gsf-search-input-wrap {
    position: relative;
    width: 100%;
}

.gsf-search-icon {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    color: #6D6D6D; /* Matching placeholder color */
}

.gsf-search-input-wrap input {
    padding-left: 44px; /* Space for icon */
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    color: #262626;
}

.gsf-search-input-wrap input::placeholder {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    line-height: 24px;
    color: #6D6D6D;
}

/* Filter Dropdown Styling */
#gsf-category-filter {
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23262626%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
    background-repeat: no-repeat;
    background-position: right 14px top 50%;
    background-size: 10px auto;
    font-weight: 400;
    font-size: 16px;
    color: #262626;
    line-height: 24px;
}

/* Grid Layout */
.gsf-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 3 columns */
    gap: 32px;
}

/* Gallery Item Card */
.gsf-gallery-item {
    background-color: #FFFFFF;
    border: 1px solid #EAECF0;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.04);
    border-radius: 8px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
}

.gsf-gallery-item:hover {
    transform: translateY(-2px);
    box-shadow: 0px 8px 12px 0px rgba(0, 0, 0, 0.08); /* Slightly enhanced hover shadow */
}

.gsf-item-image {
    width: 100%;
    background: #f2f4f7;
    line-height: 0;
}

.gsf-item-image img {
    display: block;
    width: 100%;
    height: auto; 
    object-fit: cover;
}

.gsf-item-info {
    padding: 24px;
    display: flex;
    flex-direction: column;
}

.gsf-item-title {
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0;
    color: #262626;
    margin: 0 0 16px 0; /* Gap to category */
}

.gsf-item-category-tag {
    display: inline-block;
    padding: 4px 12px;
    font-family: 'Open Sans', sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 22px;
    letter-spacing: 0;
    color: #008E8F;
    background-color: rgba(0, 142, 143, 0.1);
    border-radius: 4px;
    width: fit-content;
    text-decoration: none;
}

/* Responsive */
@media (max-width: 1024px) {
    .gsf-gallery-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 24px;
    }
}

@media (max-width: 600px) {
    .gsf-gallery-grid {
        grid-template-columns: 1fr !important;
    }
    
    .gsf-controls {
        flex-direction: column;
        gap: 20px;
    }
    
    .gsf-filter-wrap {
        width: 100%;
    }
}
@media (max-width: 767px) {
.gsf-controls {
    margin-bottom: 36px;
    padding-bottom: 16px;
}
    
}/* End custom CSS */