
/* ===============================================================
   # ALORA HOMES CUSTOM SITE OVERRIDES
   =============================================================== */

/* Phlox Scroll Visibility Fix */
.aux-appear-watch-animation,
.elementor-invisible {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Icon Font Alignment Fixes */
.auxicon-chevron-down:before { content: "\e920"; }
.auxicon-chevron-up:before { content: "\e921"; }
.auxicon-menu-bar:before { content: "\e953"; }

/* Inner Page Header Positioning */
body:not(.home) .aux-elementor-header,
body:not(.home) .aux-elementor-header.aux-overlay-header {
    position: relative !important;
    background: #ffffff !important;
    box-shadow: none !important;
    border: none !important;
    border-bottom: none !important;
    z-index: 999;
}

body.home .aux-elementor-header {
    position: absolute !important;
    width: 100%;
    z-index: 999;
}

/* Exact Logo Sizing (250px x 187.2px) */
.elementor-7 .elementor-element.elementor-element-c49eb21 .aux-has-logo img,
.aux-widget-logo .aux-logo-anchor img,
.aux-widget-logo img,
a.aux-logo-anchor.aux-has-logo img {
    width: 250px !important;
    max-width: 250px !important;
    height: 187.2px !important;
    max-height: 187.2px !important;
    object-fit: contain !important;
    display: block !important;
}

a.aux-logo-anchor.aux-has-logo {
    width: 250px !important;
    height: 187.2px !important;
    display: block !important;
}

/* Community Card Image Sizing */
.elementor-widget-image img,
.elementor-widget-image .elementor-widget-container img {
    max-width: 380px !important;
    width: 100% !important;
    height: auto !important;
    border-radius: 6px;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

/* Back to Top Floating Button */
.aux-goto-top-btn {
    position: fixed !important;
    right: 25px !important;
    bottom: 25px !important;
    z-index: 9999 !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    border: 1px solid #d0d0d0 !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.12) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
    opacity: 0;
    visibility: hidden;
}

.aux-goto-top-btn.aux-visible {
    opacity: 1 !important;
    visibility: visible !important;
}

.aux-goto-top-btn:hover {
    background: #fea75e !important;
    border-color: #fea75e !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 6px 20px rgba(254,167,94,0.4) !important;
}

.aux-goto-top-btn .aux-svg-arrow {
    font-size: 18px !important;
    font-weight: bold !important;
    color: #333333 !important;
    line-height: 1 !important;
    transition: color 0.3s !important;
}

.aux-goto-top-btn:hover .aux-svg-arrow {
    color: #ffffff !important;
}

/* ===============================================================
   # DEDICATED HOUSE MODEL POPUP MODAL STYLING
   =============================================================== */
body.house-modal-open {
    overflow: hidden !important;
}

.house-modal-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: rgba(0, 0, 0, 0.90) !important;
    z-index: 9999999 !important;
    display: none; /* HIDDEN BY DEFAULT */
    align-items: center !important;
    justify-content: center !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
}

.house-modal-overlay.house-modal-active {
    display: flex !important; /* DISPLAYED ONLY WHEN ACTIVE */
}

.house-modal-container {
    position: relative !important;
    max-width: 90vw !important;
    max-height: 90vh !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    outline: none !important;
}

.house-modal-body {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

#house-modal-img {
    max-width: 85vw !important;
    max-height: 75vh !important;
    object-fit: contain !important;
    border-radius: 8px !important;
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.6) !important;
    background: #111111 !important;
}

.house-modal-title {
    color: #ffffff !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    margin-top: 16px !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    text-align: center !important;
    font-family: "Poppins", sans-serif !important;
}







.house-modal-prev {
    left: 30px !important;
}

.house-modal-next {
    right: 30px !important;
}



/* Hide legacy Theme Inline Containers */
.aux-portfolio-single-modal,
.aux-lightbox-markup,
.aux-lightbox-container,
#aux-lightbox-markup,
.aux-lightbox-frame,
.aux-ajax-portfolio-single,
.aux-single-portfolio-popup,
.elementor-lightbox {
    display: none !important;
}

.house-modal-close {
    position: fixed !important;
    top: 25px !important;
    right: 30px !important;
    color: #ffffff !important;
    font-size: 32px !important;
    font-weight: 300 !important;
    cursor: pointer !important;
    z-index: 10000000 !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    max-width: 48px !important;
    max-height: 48px !important;
    padding: 0 !important;
    border: none !important;
    outline: none !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.22) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    line-height: 1 !important;
    transition: all 0.2s ease !important;
}

.house-modal-close:hover {
    background: #fea75e !important;
    color: #ffffff !important;
    transform: scale(1.1) !important;
}

.house-modal-prev,
.house-modal-next {
    position: fixed !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #ffffff !important;
    font-size: 36px !important;
    font-weight: 300 !important;
    cursor: pointer !important;
    z-index: 10000000 !important;
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    max-width: 52px !important;
    max-height: 52px !important;
    padding: 0 !important;
    border: none !important;
    outline: none !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.22) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    line-height: 1 !important;
    user-select: none !important;
    transition: all 0.2s ease !important;
}

.house-modal-prev {
    left: 30px !important;
}

.house-modal-next {
    right: 30px !important;
}

.house-modal-prev:hover,
.house-modal-next:hover {
    background: #fea75e !important;
    color: #ffffff !important;
    transform: translateY(-50%) scale(1.1) !important;
}

/* Remove All Header Shadows and Borders Globally */
.aux-elementor-header,
.aux-header,
.site-header,
.aux-elementor-header .elementor-section {
    box-shadow: none !important;
    border: none !important;
    border-bottom: none !important;
    outline: none !important;
}




/* ===============================================================
   # SUBPAGE TITLE BANNER BACKGROUND (EXACT MATCHING OUR COMMUNITIES)
   =============================================================== */
.elementor-element.elementor-element-c5bbc94,
.page-id-69 .elementor-element-c5bbc94 {
    background-image: url("../images/banner-1.png") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    min-height: 220px !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding-left: 50px !important;
}

.elementor-element.elementor-element-c5bbc94 .elementor-background-overlay,
.page-id-69 .elementor-element-c5bbc94 .elementor-background-overlay {
    background-color: rgba(135, 110, 40, 0.72) !important;
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.elementor-element.elementor-element-c5bbc94 .elementor-container,
.page-id-69 .elementor-element-c5bbc94 .elementor-container {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
}

.elementor-element.elementor-element-c5bbc94 .aux-modern-heading-primary,



/* Banner Title Heading ONLY (White Text) */
.elementor-element-c5bbc94 .aux-modern-heading-primary,
.elementor-element-37c45832 .aux-modern-heading-primary,
.elementor-element-4fc0a1f8 .aux-modern-heading-primary {
    color: #ffffff !important;
    font-size: 42px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    margin: 0 !important;
    text-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
}

/* Body Content Section Headings (Dark Text) */
.aux-main .aux-modern-heading-primary,
h2.aux-modern-heading-primary {
    color: #222222;
}


/* ===============================================================
   # MOBILE RESPONSIVE NAVIGATION MENU SYSTEM
   =============================================================== */
@media screen and (max-width: 768px) {
    .aux-elementor-header .elementor-container,
    .aux-elementor-header .elementor-widget-wrap {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100% !important;
    }

    .aux-elementor-header .elementor-widget-aux_logo {
        max-width: 180px !important;
    }

    .aux-burger-box {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 44px !important;
        height: 44px !important;
        cursor: pointer !important;
        z-index: 100001 !important;
        position: relative !important;
        background: transparent !important;
    }

    .aux-burger-box .aux-burger {
        width: 26px !important;
        height: 20px !important;
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important;
    }

    .aux-burger-box .aux-burger span,
    .aux-burger-box .aux-burger::before,
    .aux-burger-box .aux-burger::after {
        content: "" !important;
        display: block !important;
        width: 100% !important;
        height: 3px !important;
        background-color: #222222 !important;
        border-radius: 2px !important;
        transition: all 0.3s ease !important;
    }

    /* Hide Main Menu by default on Mobile */
    .menu-main-menu-container,
    ul.aux-master-menu {
        display: none !important;
    }

    /* Mobile Dropdown Panel when Active */
    body.aux-mobile-menu-open .menu-main-menu-container,
    body.aux-mobile-menu-open ul.aux-master-menu,
    .menu-main-menu-container.aux-active,
    ul.aux-master-menu.aux-active {
        display: block !important;
        position: fixed !important;
        top: 90px !important;
        left: 0 !important;
        width: 100vw !important;
        background: #ffffff !important;
        box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2) !important;
        z-index: 999999 !important;
        padding: 15px 0 !important;
        margin: 0 !important;
        border-bottom: 3px solid #fea75e !important;
        max-height: calc(100vh - 90px) !important;
        overflow-y: auto !important;
    }

    ul.aux-master-menu.aux-active li.menu-item,
    body.aux-mobile-menu-open ul.aux-master-menu li.menu-item {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
        padding: 12px 20px !important;
        border-bottom: 1px solid #f0f0f0 !important;
        float: none !important;
    }

    ul.aux-master-menu.aux-active li.menu-item a,
    body.aux-mobile-menu-open ul.aux-master-menu li.menu-item a {
        color: #222222 !important;
        font-size: 16px !important;
        font-weight: 600 !important;
        text-transform: uppercase !important;
        letter-spacing: 1px !important;
        display: block !important;
        text-decoration: none !important;
    }

    ul.aux-master-menu.aux-active li.menu-item a:hover,
    body.aux-mobile-menu-open ul.aux-master-menu li.menu-item a:hover {
        color: #fea75e !important;
    }
}


/* ===============================================================
   # COMPREHENSIVE RESPONSIVE DESIGN SYSTEM (MOBILE & TABLET)
   =============================================================== */

/* Prevent Horizontal Page Overflow */
html, body {
    max-width: 100vw !important;
    overflow-x: hidden !important;
}

/* Global Responsive Image Rule */
img, video, iframe, embed, object {
    max-width: 100% !important;
    height: auto !important;
}

/* Tablet Breakpoint Overrides (769px - 1024px) */
@media screen and (max-width: 1024px) {
    .aux-elementor-header .aux-logo-anchor img {
        max-width: 200px !important;
        height: auto !important;
    }

    .elementor-section-boxed .elementor-container {
        max-width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .aux-modern-heading-primary {
        font-size: 34px !important;
        line-height: 1.3em !important;
    }
}

/* Mobile Breakpoint Overrides (<= 768px) */
@media screen and (max-width: 768px) {
    /* Layout Columns Stacking */
    .elementor-container,
    .elementor-row {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
        box-sizing: border-box !important;
    }

    .elementor-column,
    .elementor-column.elementor-col-100,
    .elementor-column.elementor-col-50,
    .elementor-column.elementor-col-33,
    .elementor-column.elementor-col-25,
    .aux-parallax-section {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-bottom: 25px !important;
    }

    .elementor-column:last-child {
        margin-bottom: 0 !important;
    }

    /* Subpage Banner Section Mobile Sizing */
    .elementor-element.elementor-element-c5bbc94,
    .elementor-element.elementor-element-37c45832,
    .elementor-element.elementor-element-4fc0a1f8,
    .page-id-69 .elementor-element-c5bbc94 {
        min-height: 160px !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .elementor-element-c5bbc94 .aux-modern-heading-primary,
    .elementor-element-37c45832 .aux-modern-heading-primary,
    .elementor-element-4fc0a1f8 .aux-modern-heading-primary,
    .page-id-69 .aux-modern-heading-primary {
        font-size: 28px !important;
        line-height: 1.2em !important;
    }

    /* Primary Headings on Mobile */
    h1, h2, .aux-modern-heading-primary {
        font-size: 26px !important;
        line-height: 1.3em !important;
    }

    h3, .aux-modern-heading-secondary {
        font-size: 20px !important;
        line-height: 1.3em !important;
    }

    p, .elementor-widget-text-editor {
        font-size: 14px !important;
        line-height: 1.7em !important;
    }

    /* Gallery Grid Responsive Adaptations */
    .gallery-columns-3 .gallery-item,
    .gallery-columns-4 .gallery-item,
    .gallery-columns-2 .gallery-item {
        width: 100% !important;
        max-width: 100% !important;
        margin-bottom: 15px !important;
        display: block !important;
        float: none !important;
    }

    /* Modal Popup Responsive Adjustments */
    .house-modal-container {
        max-width: 95vw !important;
        max-height: 95vh !important;
    }

    #house-modal-img {
        max-width: 92vw !important;
        max-height: 65vh !important;
    }

    .house-modal-prev {
        left: 10px !important;
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        font-size: 28px !important;
    }

    .house-modal-next {
        right: 10px !important;
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        font-size: 28px !important;
    }

    .house-modal-close {
        top: 15px !important;
        right: 15px !important;
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
        font-size: 26px !important;
    }

    /* Footer Mobile Alignment */
    .aux-elementor-footer,
    .elementor-54 .elementor-container {
        text-align: center !important;
        padding: 30px 15px !important;
    }

    .elementor-icon-list-items.elementor-inline-items {
        justify-content: center !important;
    }
}

/* Extra Small Screens (<= 480px) */
@media screen and (max-width: 480px) {
    .aux-elementor-header .aux-logo-anchor img {
        max-width: 150px !important;
    }

    .aux-burger-box {
        width: 38px !important;
        height: 38px !important;
    }

    h1, h2, .aux-modern-heading-primary {
        font-size: 22px !important;
    }
}


/* ===============================================================
   # FIX LOGO OVERLAP AND EMPTY WHITE GAP ON MOBILE
   =============================================================== */

/* 1. Fix Logo Overlap with Hero Heading on Mobile */
@media screen and (max-width: 768px) {
    .aux-elementor-header {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    .aux-widget-logo .aux-logo-anchor img,
    .aux-widget-logo img,
    a.aux-logo-anchor.aux-has-logo img {
        max-height: 110px !important;
        width: auto !important;
        object-fit: contain !important;
    }

    a.aux-logo-anchor.aux-has-logo {
        height: 110px !important;
    }

    /* Push Hero Content Down below Logo */
    body.home .elementor-element-72a0fdd6,
    body.home main .elementor-section:first-of-type {
        padding-top: 0px !important;
    }

    body.home .elementor-element-336eafb0 > .elementor-widget-container,
    body.home .elementor-element-336eafb0 {
        padding-top: 0 !important;
        margin-top: 0 !important;
    }
}

/* 2. Remove Giant Empty White Box Gap Below Hero Image */
@media screen and (max-width: 1024px) {
    .elementor-element.elementor-element-177d82f0,
    .elementor-element.elementor-element-15ead971,
    .elementor-element.elementor-element-1771708d,
    .elementor-element.elementor-element-21de5022,
    .elementor-element.elementor-element-a628135 {
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }
}


/* ===============================================================
   # FIX SPECIALIZATION CARDS WIDTH AND WORD WRAPPING ON MOBILE
   =============================================================== */
@media screen and (max-width: 768px) {
    /* Full Width Container for Specialization Cards */
    .elementor-element-6291743e,
    .elementor-element-21181987,
    .elementor-element-5c9fefb6,
    .elementor-element-65574da3,
    .elementor-element-38104591,
    .elementor-element-62d76cb3,
    .aux-widget-text,
    .aux-widget-advanced-text {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Reduce Side Padding from 60px to 20px */
    .elementor-element-65574da3 .aux-widget-text .aux-text-widget-header,
    .elementor-element-38104591 .aux-widget-text .aux-text-widget-header,
    .elementor-element-62d76cb3 .aux-widget-text .aux-text-widget-header,
    .aux-widget-text .aux-text-widget-header {
        padding: 40px 20px 15px 20px !important;
    }

    .elementor-element-65574da3 .aux-widget-text .aux-text-widget-content,
    .elementor-element-38104591 .aux-widget-text .aux-text-widget-content,
    .elementor-element-62d76cb3 .aux-widget-text .aux-text-widget-content,
    .aux-widget-text .aux-text-widget-content {
        padding: 0 20px 40px 20px !important;
    }

    /* Card Title Styling - Prevent Word Break Split */
    .col-title,
    .col-title a,
    .aux-widget-text .col-title {
        font-size: 24px !important;
        line-height: 1.3em !important;
        word-break: normal !important;
        hyphens: none !important;
        overflow-wrap: normal !important;
        letter-spacing: 1px !important;
        margin-bottom: 12px !important;
    }

    /* Card Content Paragraph Styling */
    .widget-content,
    .aux-widget-text .widget-content {
        font-size: 15px !important;
        line-height: 1.6em !important;
        word-break: normal !important;
        hyphens: none !important;
        overflow-wrap: normal !important;
    }
}


/* Hide Legacy Lightbox Close & Redundant Footer Elements */
.aux-lightbox-close,
.aux-lightbox-modal,
.aux-close,
.aux-panel-close {
    display: none !important;
}


/* ===============================================================
   # MOBILE POPUP LIGHTBOX MODAL UX OPTIMIZATION
   =============================================================== */
@media screen and (max-width: 768px) {
    .house-modal-overlay {
        padding: 0 !important;
    }

    .house-modal-container {
        width: 100vw !important;
        height: 100vh !important;
        max-width: 100vw !important;
        max-height: 100vh !important;
        padding: 65px 10px 75px 10px !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
    }

    #house-modal-img {
        max-width: 92vw !important;
        max-height: 60vh !important;
        width: auto !important;
        height: auto !important;
        object-fit: contain !important;
        border-radius: 6px !important;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.7) !important;
    }

    .house-modal-title {
        font-size: 16px !important;
        margin-top: 12px !important;
        padding: 0 15px !important;
        letter-spacing: 1px !important;
        text-align: center !important;
    }

    .house-modal-close {
        top: 15px !important;
        right: 15px !important;
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
        font-size: 26px !important;
        background: rgba(0, 0, 0, 0.65) !important;
        border: 1px solid rgba(255, 255, 255, 0.3) !important;
    }

    .house-modal-prev,
    .house-modal-next {
        top: auto !important;
        bottom: 20px !important;
        transform: none !important;
        width: 46px !important;
        height: 46px !important;
        min-width: 46px !important;
        min-height: 46px !important;
        font-size: 28px !important;
        background: rgba(0, 0, 0, 0.65) !important;
        border: 1px solid rgba(255, 255, 255, 0.3) !important;
    }

    .house-modal-prev {
        left: calc(50% - 56px) !important;
    }

    .house-modal-next {
        right: calc(50% - 56px) !important;
    }
}


/* Remove 70px Padding from Homepage Element 5ce83905 */
@media screen and (max-width: 1024px) {
    .elementor-56 .elementor-element.elementor-element-5ce83905 > .elementor-element-populated {
        padding: 0 !important;
    }
}


/* ===============================================================
   # PERMANENT FIX: PREVENT HOMEPAGE LOGO & HERO TEXT OVERLAP ON MOBILE
   =============================================================== */
@media screen and (max-width: 768px) {
    body.home .aux-elementor-header {
        position: relative !important;
        background: #ffffff !important;
        z-index: 999 !important;
        box-shadow: 0 2px 10px rgba(0,0,0,0.05) !important;
    }

    body.home .aux-widget-logo .aux-logo-anchor img,
    body.home .aux-widget-logo img,
    body.home a.aux-logo-anchor.aux-has-logo img {
        max-height: 90px !important;
        width: auto !important;
        object-fit: contain !important;
    }

    body.home a.aux-logo-anchor.aux-has-logo {
        height: 90px !important;
    }

    body.home .elementor-element-72a0fdd6,
    body.home main .elementor-section:first-of-type {
        padding-top: 30px !important;
        margin-top: 0 !important;
    }

    body.home .elementor-element-336eafb0 > .elementor-widget-container,
    body.home .elementor-element-336eafb0 {
        padding-top: 20px !important;
        margin-top: 0 !important;
    }
}


/* ===============================================================
   # EXACT USER MOBILE LOGO SIZING
   =============================================================== */
@media screen and (max-width: 768px) {
    .elementor-7 .elementor-element.elementor-element-c49eb21 .aux-has-logo img,
    .aux-widget-logo .aux-logo-anchor img,
    .aux-widget-logo img,
    a.aux-logo-anchor.aux-has-logo img {
        width: 130px !important;
        max-width: 250px !important;
        height: 100.2px !important;
        max-height: 187.2px !important;
        object-fit: contain !important;
        display: block !important;
    }

    a.aux-logo-anchor.aux-has-logo {
        width: 130px !important;
        height: 100.2px !important;
        display: block !important;
    }
}


/* Remove Mobile Padding for Element 177d82f0 */
@media screen and (max-width: 768px) {
    .elementor-56 .elementor-element.elementor-element-177d82f0 {
        padding: 0px !important;
    }
}


/* ===============================================================
   # CLIENT / PARTNER LOGOS UNIFORM GRID ARRANGEMENT
   =============================================================== */


/* Constrain every partner logo to an aligned 140px x 65px grid item */




.elementor-widget-image:hover img {
    transform: scale(1.06) !important;
}

@media screen and (max-width: 768px) {
    

    .elementor-element-d33d4bd,
    .elementor-element-88f7d98,
    .elementor-element-cd83202,
    .elementor-element-dcb6097,
    .elementor-element-a5d1cae,
    .elementor-element-d4c467e,
    .elementor-element-1e49108,
    .elementor-element-51115f4,
    .elementor-element-188444c2,
    .elementor-element-1b6ee8f8,
    .elementor-element-52fa19d,
    .elementor-element-a1e8226,
    .elementor-element-80859c9 {
        width: 130px !important;
        max-width: 130px !important;
        height: 60px !important;
        padding: 6px !important;
    }
}


/* ===============================================================
   # EXPLICIT CSS GRID ARRANGEMENT FOR CLIENT LOGOS
   =============================================================== */


@media screen and (max-width: 1024px) {
    
}

@media screen and (max-width: 600px) {
    
}










/* ===============================================================
   # UNIFIED ALL 13 CLIENT & CERTIFICATION LOGOS GRID SYSTEM
   =============================================================== */
.client-logos-grid-container {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px 20px !important;
    align-items: center !important;
    width: 100% !important;
}

@media screen and (max-width: 1024px) {
    .client-logos-grid-container {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 16px 16px !important;
    }
}

@media screen and (max-width: 600px) {
    .client-logos-grid-container {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px 12px !important;
    }
}

.client-logo-card {
    width: 100% !important;
    height: 85px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    border: 1px solid #e8e8e8 !important;
    border-radius: 10px !important;
    padding: 12px 16px !important;
    box-sizing: border-box !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04) !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
}

.client-logo-card:hover {
    border-color: #fea75e !important;
    box-shadow: 0 8px 25px rgba(254, 167, 94, 0.2) !important;
    transform: translateY(-3px) !important;
}

.client-logo-card img {
    max-width: 100% !important;
    max-height: 58px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
}


/* ===============================================================
   # EXACT SCREENSHOT LOGO GRID ARRANGEMENT
   =============================================================== */
.community-logos-grid-container {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 16px 16px !important;
    align-items: center !important;
    width: 100% !important;
}

@media screen and (max-width: 1024px) {
    .community-logos-grid-container {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 14px 14px !important;
    }
}

@media screen and (max-width: 600px) {
    .community-logos-grid-container {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px 10px !important;
    }
}

.cert-logos-grid-container {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 24px !important;
    flex-wrap: wrap !important;
    width: 100% !important;
}

.client-logo-card.cert-card {
    width: 160px !important;
    height: 80px !important;
}


/* ===============================================================
   # CLEAN 13 LOGO GRID SYSTEM (NO EMPTY CARDS)
   =============================================================== */
.community-logos-grid-container {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 16px 16px !important;
    align-items: center !important;
    width: 100% !important;
}

@media screen and (max-width: 1024px) {
    .community-logos-grid-container {
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 14px 14px !important;
    }
}

@media screen and (max-width: 600px) {
    .community-logos-grid-container {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px 10px !important;
    }
}

.community-logos-grid-container .client-logo-card {
    width: 100% !important;
    height: 85px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    border: 1px solid #e8e8e8 !important;
    border-radius: 10px !important;
    padding: 10px 14px !important;
    box-sizing: border-box !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04) !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
}

.community-logos-grid-container .client-logo-card:hover {
    border-color: #fea75e !important;
    box-shadow: 0 8px 25px rgba(254, 167, 94, 0.2) !important;
    transform: translateY(-3px) !important;
}

.community-logos-grid-container .client-logo-card img {
    max-width: 100% !important;
    max-height: 58px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
}
