/* Post 6532 - Gallery Stylesheet (Exact WordPress Match) */

/* Hero Banner */
.elementor-6532 .elementor-element.elementor-element-cc34780:not(.elementor-motion-effects-element-type-background),
.elementor-6532 .elementor-element.elementor-element-cc34780 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-element-cc34780 {
    background-image: url("/wp-content/uploads/2023/05/1564374342breadcrumb_bg.jpg") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    padding: 95px 0 !important;
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
}
.elementor-6532 .elementor-element.elementor-element-cc34780 > .elementor-background-overlay {
    transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
}
.elementor-6532 .elementor-element.elementor-element-f5fe4a5 .elementor-heading-title,
.elementor-element-f5fe4a5 .elementor-heading-title {
    font-size: 39px !important;
    font-weight: 700 !important;
    color: #222529 !important;
    margin-bottom: 8px !important;
}
.elementor-6532 .elementor-element.elementor-element-9017b4e .elementor-heading-title,
.elementor-element-9017b4e .elementor-heading-title {
    font-size: 18px !important;
    font-weight: 400 !important;
    color: #222529 !important;
    margin: 0 !important;
}

/* Ensure no element remains invisible */
.elementor-6532 .elementor-invisible,
.elementor-invisible {
    visibility: visible !important;
    opacity: 1 !important;
}

/* Gallery Section Boxed Container: Full width matching WP Porto wide layout */
.elementor-6532 .elementor-section.elementor-section-boxed > .elementor-container {
    max-width: none !important;
}

/* Gallery Category Headings - exact WP Porto H2 styling */
.elementor-6532 .elementor-element-c039ccb,
.elementor-6532 .elementor-element-2e07a84,
.elementor-6532 .elementor-element-3474ace,
.elementor-6532 .elementor-element-805131f {
    margin-top: 30px !important;
    margin-bottom: 20px !important;
}
.elementor-6532 .elementor-element-c039ccb .elementor-heading-title,
.elementor-6532 .elementor-element-2e07a84 .elementor-heading-title,
.elementor-6532 .elementor-element-3474ace .elementor-heading-title,
.elementor-6532 .elementor-element-805131f .elementor-heading-title {
    font-family: var(--porto-body-ff, "Open Sans", sans-serif) !important;
    font-size: 30px !important;
    font-weight: 700 !important;
    color: #222529 !important;
    line-height: 40px !important;
    letter-spacing: -0.05em !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Gallery Flex Layout - exact match to WP Porto theme.css */
.elementor-6532 .elementor-image-gallery .gallery.gallery-columns-3 {
    display: flex !important;
    flex-wrap: wrap !important;
    margin-left: -15px !important;
    margin-right: -15px !important;
    margin-bottom: 30px !important;
    padding: 0 !important;
}
.elementor-6532 .gallery.gallery-columns-3 .gallery-item {
    flex: 0 0 33.333333% !important;
    max-width: 33.333333% !important;
    width: 33.333333% !important;
    padding: 15px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    float: none !important;
}
.elementor-6532 .gallery.gallery-columns-3 .gallery-item:hover {
    transform: none !important;
    box-shadow: none !important;
}

.elementor-6532 .gallery-icon {
    display: block !important;
    margin: 0 !important;
    overflow: hidden !important;
}
.elementor-6532 .gallery-icon a {
    display: block !important;
    overflow: hidden !important;
}
.elementor-6532 .gallery-icon img {
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    display: block !important;
    object-fit: initial !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transition: opacity 0.2s ease-in-out !important;
}
.elementor-6532 .gallery-icon a:hover img {
    opacity: 0.88 !important;
}

/* Section 5: Pre-Footer Black Bar (50c9032) */
.elementor-6532 .elementor-element.elementor-element-50c9032 {
    background-color: #000000 !important;
    padding: 35px 25px !important;
    margin-top: 50px !important;
}
.elementor-6532 .elementor-element.elementor-element-50c9032 > .elementor-container {
    max-width: 1200px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
}
.elementor-6532 .elementor-element.elementor-element-e291496,
.elementor-6532 .elementor-element.elementor-element-dea3f97,
.elementor-6532 .elementor-element.elementor-element-941d3f2 {
    width: 33.333% !important;
    flex: 0 0 33.333% !important;
    padding: 15px !important;
    box-sizing: border-box !important;
}
.elementor-6532 .elementor-element.elementor-element-eea7feb img {
    max-width: 230px !important;
    height: auto !important;
    margin-bottom: 15px !important;
}
.elementor-6532 .elementor-element.elementor-element-154ebd0 {
    color: #FFFFFF !important;
    font-size: 14px !important;
    line-height: 1.8 !important;
    text-align: justify !important;
}
.elementor-6532 .elementor-element.elementor-element-5e1cbb2 .elementor-heading-title,
.elementor-6532 .elementor-element.elementor-element-deacc82 .elementor-heading-title {
    color: #FFFFFF !important;
    font-size: 25px !important;
    font-weight: 600 !important;
    margin-bottom: 18px !important;
}
.elementor-6532 .elementor-element.elementor-element-59de27b .elementor-icon-list-item {
    display: flex !important;
    align-items: flex-start !important;
    margin-bottom: 10px !important;
    color: #FFFFFF !important;
    font-size: 14px !important;
}
.elementor-6532 .elementor-element.elementor-element-59de27b .elementor-icon-list-icon i {
    color: #C6983A !important;
    margin-right: 10px !important;
    font-size: 16px !important;
    margin-top: 3px !important;
}
.elementor-6532 .elementor-element.elementor-element-dde7a24 .elementor-heading-title {
    color: #FFFFFF !important;
    font-size: 16px !important;
    margin-top: 15px !important;
    margin-bottom: 10px !important;
}
.elementor-6532 .elementor-element.elementor-element-d628665 .elementor-social-icon {
    background-color: #C6983A !important;
    color: #000000 !important;
    margin-right: 8px !important;
    border-radius: 50% !important;
    width: 36px !important;
    height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.elementor-6532 .elementor-element.elementor-element-d628665 .elementor-social-icon i {
    color: #000000 !important;
    font-size: 16px !important;
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .elementor-6532 .gallery.gallery-columns-3 .gallery-item {
        flex: 0 0 50% !important;
        max-width: 50% !important;
        width: 50% !important;
    }
    .elementor-6532 .elementor-element.elementor-element-e291496,
    .elementor-6532 .elementor-element.elementor-element-dea3f97,
    .elementor-6532 .elementor-element.elementor-element-941d3f2 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        margin-bottom: 25px !important;
    }
    .elementor-6532 .elementor-element.elementor-element-cc34780 {
        padding: 60px 20px !important;
    }
    .elementor-6532 .elementor-element.elementor-element-f5fe4a5 .elementor-heading-title {
        font-size: 28px !important;
    }
    .elementor-6532 .elementor-element-c039ccb .elementor-heading-title,
    .elementor-6532 .elementor-element-2e07a84 .elementor-heading-title,
    .elementor-6532 .elementor-element-3474ace .elementor-heading-title,
    .elementor-6532 .elementor-element-805131f .elementor-heading-title {
        font-size: 24px !important;
        line-height: 32px !important;
    }
}

@media (max-width: 575px) {
    .elementor-6532 .gallery.gallery-columns-3 .gallery-item {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}
