/*
Theme Name: EcoHub Mobility
Theme URI: https://dekaepta.it/
Description: EcoHub child theme for Hello Elementor. Visual design is managed in Elementor/Elementor Pro.
Author: DekaEpta.it
Version: 0.1.0-alpha.6.9.20
Template: hello-elementor
Text Domain: ecohub-mobility
Requires at least: 6.0
Requires PHP: 7.4
*/

/*
 * STRUCTURAL SHELL ONLY.
 * Sidebar is a fixed Elementor Theme Builder Header. The rules below only
 * reserve its physical width for the Elementor root document.
 * All visual styling remains in Elementor.
 */
:root{
    
    
}

@media (min-width:1025px){
    #ecohub-sidebar{
        position:fixed!important;
        left:0!important;
        top:0!important;
        
        height:100vh!important;
        z-index:9990!important;
        overflow-y:auto;
        overflow-x:hidden!important;
        scrollbar-width:none;
        -ms-overflow-style:none;
    }
    #ecohub-sidebar::-webkit-scrollbar{
        width:0;
        height:0;
        display:none;
    }
    body.admin-bar #ecohub-sidebar{
        top:32px!important;
        height:calc(100vh - 32px)!important;
    }
    #ecohub-mobile-header{
        display:none!important;
    }

    /*
     * Do not offset Hello's generic main wrapper: Elementor Pro can replace
     * the "single" location without using the same wrapper on every route.
     * Offset the actual Elementor root document instead.
     */
    body:not(.elementor-editor-active) #content.site-main,
    body:not(.elementor-editor-active) main.site-main{
        margin-left:0!important;
        width:100%!important;
        max-width:none!important;
    }

    body:not(.elementor-editor-active) .elementor[data-elementor-type="wp-page"],
    body:not(.elementor-editor-active) .elementor[data-elementor-type="product"],
    body:not(.elementor-editor-active) .elementor[data-elementor-type="product-archive"],
    body:not(.elementor-editor-active) .elementor[data-elementor-type="single-post"],
    body:not(.elementor-editor-active) .elementor[data-elementor-type="search-results"]{
        margin-left:var(--ecohub-sidebar-width)!important;
        width:calc(100% - var(--ecohub-sidebar-width))!important;
        max-width:none!important;
    }

    body:not(.elementor-editor-active) .elementor-location-footer{
        margin-left:var(--ecohub-sidebar-width)!important;
        width:calc(100% - var(--ecohub-sidebar-width))!important;
    }
}

@media (max-width:1024px){
    #ecohub-sidebar{
        display:none!important;
    }
    #ecohub-mobile-header{
        display:flex!important;
        visibility:visible!important;
        opacity:1!important;
        position:fixed!important;
        left:0!important;
        right:0!important;
        top:var(--ecohub-adminbar-offset,0px)!important;
        z-index:9990!important;
    }

    body:not(.elementor-editor-active) .elementor[data-elementor-type="wp-page"],
    body:not(.elementor-editor-active) .elementor[data-elementor-type="product"],
    body:not(.elementor-editor-active) .elementor[data-elementor-type="product-archive"],
    body:not(.elementor-editor-active) .elementor[data-elementor-type="single-post"],
    body:not(.elementor-editor-active) .elementor[data-elementor-type="search-results"]{
        margin-left:0!important;
        width:100%!important;
    }

    body:not(.elementor-editor-active) #content.site-main,
    body:not(.elementor-editor-active) main.site-main{
        margin-left:0!important;
        width:100%!important;
        
    }
    body:not(.elementor-editor-active) .elementor-location-footer{
        margin-left:0!important;
        width:100%!important;
    }
}
/* alpha.6.9.6 — Desktop Nav Menu and submenu are controlled natively by Elementor. */
html.ecohub-modal-open,
body.ecohub-modal-open{ overflow:hidden!important; }
.ecohub-modal-backdrop{
    position:fixed;
    inset:0;
    background:rgba(10,34,38,.55);
    display:none;
    align-items:center;
    justify-content:center;
    z-index:99999;
    padding:24px;
}
.ecohub-modal-backdrop.is-open{ display:flex; }
.ecohub-modal-panel{
    width:min(1120px, 100%);
    max-height:min(90vh, 960px);
    overflow:auto;
    background:#FFFFFF;
    border-radius:24px;
    box-shadow:0 30px 90px rgba(0,0,0,.22);
    position:relative;
}
.ecohub-modal-close{
    position:absolute;
    top:14px;
    right:16px;
    width:42px;
    height:42px;
    border:0;
    border-radius:999px;
    background:#F2F7F7;
    color:#145761;
    font-size:28px;
    cursor:pointer;
}
.ecohub-modal-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:28px;
    padding:34px;
}
.ecohub-modal-copy,
.ecohub-modal-meeting{
    background:#FFFFFF;
}
.ecohub-modal-eyebrow{
    color:#145761;
    font-size:12px;
    letter-spacing:1.1px;
    font-weight:700;
    margin-bottom:10px;
}
.ecohub-modal-copy h3{
    margin:0 0 12px;
    color:#123F48;
    font-family:Georgia,serif;
    font-size:44px;
    line-height:1.08;
}
.ecohub-modal-copy p,
.ecohub-modal-meeting p{
    color:#62777B;
    font-size:15px;
    line-height:1.7;
}
.ecohub-modal-card-title{
    color:#123F48;
    font-family:Georgia,serif;
    font-size:28px;
    line-height:1.15;
    margin-bottom:12px;
}
.ecohub-modal-form{ margin-top:18px; }
.ecohub-modal-fields.two{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-bottom:14px;
}
.ecohub-modal-form input,
.ecohub-modal-form textarea{
    width:100%;
    border:1px solid #D9E6E6;
    border-radius:12px;
    padding:14px 15px;
    font-size:14px;
    color:#123F48;
    background:#FFFFFF;
}
.ecohub-modal-form textarea{ margin-bottom:12px; }
.ecohub-modal-privacy{
    display:flex;
    align-items:flex-start;
    gap:10px;
    color:#62777B;
    font-size:13px;
    line-height:1.5;
    margin-bottom:16px;
}
.ecohub-modal-privacy input{ width:auto; margin-top:3px; }
.ecohub-modal-submit{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:13px 24px;
    border-radius:12px;
    border:1px solid #145761;
    background:#145761;
    color:#FFFFFF;
    cursor:pointer;
    font-weight:600;
}
.ecohub-modal-meeting{
    background:#F7F9F9;
    border:1px solid #E2ECEC;
    border-radius:18px;
    padding:20px;
}
.ecohub-modal-meeting .meetings-iframe-container{ min-height:560px; }
.ecohub-modal-success{
    background:#F0F7F4;
    border:1px solid #CFE3D9;
    color:#145761;
    border-radius:12px;
    padding:12px 14px;
    margin:12px 0 4px;
}
@media (max-width:1024px){
    .ecohub-modal-grid{   }
    .ecohub-modal-copy h3{  }
    .ecohub-modal-meeting .meetings-iframe-container{ min-height:480px; }
}
@media (max-width:767px){
    .ecohub-modal-backdrop{ padding:12px; }
    .ecohub-modal-grid{ padding:20px; gap:18px; }
    .ecohub-modal-fields.two{ grid-template-columns:1fr; }
    .ecohub-modal-copy h3{ font-size:30px; }
}


/* alpha.6.4 — archive/listing Loop Grid + pixel-alignment refinements */
.ecohub-loop-grid .elementor-loop-container{
    align-items:stretch;
}
.ecohub-loop-grid .e-loop-item{
    height:100%;
}
.ecohub-loop-card{
    height:100%;
}
.ecohub-loop-card .elementor-widget-theme-post-featured-image img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:contain;
    background:#fff;
}
.ecohub-loop-magazine .elementor-widget-theme-post-featured-image img{
    width:100%;
    aspect-ratio:16/10;
    object-fit:cover;
}
.ecohub-product-main .woocommerce-product-gallery__image img{
    width:100%;
    height:auto;
    object-fit:contain;
}
.ecohub-product-config .variations{
    width:100%;
    border-collapse:separate;
    border-spacing:0 10px;
}
.ecohub-product-config .variations th,
.ecohub-product-config .variations td{
    padding:0 8px 0 0;
}
.ecohub-product-config .variations select{
    width:100%;
    min-height:46px;
    border:1px solid #DCE7E7;
    border-radius:9px;
    padding:8px 12px;
    background:#fff;
}
.ecohub-product-tabs .woocommerce-tabs ul.tabs{
    display:flex;
    gap:8px;
    border-bottom:1px solid #E1EAEA;
    padding:0!important;
}
.ecohub-product-tabs .woocommerce-tabs ul.tabs li{
    border:0!important;
    background:#F7F9F9!important;
    border-radius:8px 8px 0 0!important;
}
.ecohub-product-tabs .woocommerce-tabs .panel{
    padding:24px 0 0!important;
}
@media (min-width:1025px){
    /* Guarantee content never starts under the 260px sidebar, including
       routes where Elementor uses generic document wrappers. */
    body:not(.elementor-editor-active) .elementor.elementor-location-single,
    body:not(.elementor-editor-active) .elementor.elementor-location-archive,
    body:not(.elementor-editor-active) .elementor.elementor-location-search{
        margin-left:var(--ecohub-sidebar-width)!important;
        width:calc(100% - var(--ecohub-sidebar-width))!important;
        max-width:none!important;
    }
}


/* alpha.6.5 — dynamic Loop Item / Single fidelity */
.ecohub-loop-card .elementor-widget-image img{
    width:100%;
    display:block;
}
.ecohub-loop-card .elementor-heading-title a{
    color:inherit;
    text-decoration:none;
}
.ecohub-loop-card .elementor-heading-title{
    margin:0;
}
.ecohub-loop-grid .elementor-pagination{
    margin-top:28px;
    display:flex;
    justify-content:center;
    gap:10px;
    align-items:center;
}
.ecohub-loop-grid .elementor-pagination a,
.ecohub-loop-grid .elementor-pagination span{
    color:#145761;
}
.ecohub-article-main .elementor-widget-theme-post-content,
.ecohub-article-main .elementor-widget-text-editor{
    color:#263F44;
}
.ecohub-article-main h2,
.ecohub-article-main h3{
    color:#123F48;
    font-family:Georgia,serif;
    line-height:1.12;
}
.ecohub-article-main p,
.ecohub-article-main li{
    line-height:1.75;
}


/* alpha.6.6 — Pixel Perfect Pass */
:root{
    
    --ecohub-radius:18px;
    
    
}
.ecohub-pp-hero img{
    width:100%;
    aspect-ratio:16/10;
    
    display:block;
}
.ecohub-pp-card{
    min-height:100%;
}
.ecohub-pp-card img{
    width:100%;
    aspect-ratio:16/10;
    object-fit:cover;
}
.ecohub-brand-panel img{
    width:100%;
    
    
}
.ecohub-official-product img{
    width:100%;
    
    
}
.ecohub-article-hero img{
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
}
.ecohub-related-article img{
    aspect-ratio:16/10;
    object-fit:cover;
}
.ecohub-meeting-compact .meetings-iframe-container,
.ecohub-meeting-compact iframe{
    min-height:430px!important;
    max-height:520px!important;
}
.ecohub-contact-hours p strong{
    display:inline-block;
    min-width:92px;
    color:#123F48;
}
.ecohub-contact-hours p{
    margin:0 0 8px;
}
@media (min-width:1025px){
    body.single-product:not(.elementor-editor-active) .elementor[data-elementor-type="product"]{
        margin-left:var(--ecohub-sidebar-width)!important;
        width:calc(100% - var(--ecohub-sidebar-width))!important;
    }
}
@media (max-width:767px){
    .ecohub-pp-hero img{aspect-ratio:4/3;}
    .ecohub-brand-panel img{max-height:240px;}
}


/* alpha.6.7 — full pixel alignment refinements */
:root{
    --ecohub-content:1180px;
    --ecohub-page-gap:72px;
    --ecohub-card-radius:16px;
    --ecohub-soft:#F7F9F9;
    --ecohub-border:#E4ECEC;
}
.ecohub-card-media img{
    width:100%;
    aspect-ratio:16/10;
    object-fit:cover;
    display:block;
}
.ecohub-brand-panel img{
    max-height:270px!important;
    object-fit:contain!important;
}
.ecohub-official-product img{
    max-height:430px!important;
    object-fit:contain!important;
}
.ecohub-pp-hero img{
    min-height:360px;
    max-height:540px;
    object-fit:cover;
}
.ecohub-stat-strip > .e-con-inner,
.ecohub-stat-strip{
    align-items:stretch!important;
}
.ecohub-review-grid .e-con{
    height:100%;
}
.ecohub-partners-row img{
    max-width:145px;
    max-height:64px;
    object-fit:contain;
}
.ecohub-article-main{
    max-width:100%;
}
.ecohub-article-main img{
    max-width:100%;
    height:auto;
}
.ecohub-product-main .woocommerce-product-gallery{
    margin-bottom:0!important;
}
.ecohub-product-main .flex-control-thumbs{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
    margin-top:12px!important;
}
.ecohub-product-main .flex-control-thumbs li{
    width:auto!important;
    float:none!important;
}
.ecohub-product-main .flex-control-thumbs img{
    border-radius:10px;
    border:1px solid #E2EAEA;
}
.ecohub-product-config table.variations td,
.ecohub-product-config table.variations th{
    vertical-align:middle!important;
}
.ecohub-product-config table.variations th{
    width:32%;
    color:#123F48;
    font-weight:600;
}
.ecohub-product-config .woocommerce-variation-price{
    display:none!important;
}
.ecohub-product-tabs .woocommerce-tabs .panel h2{
    color:#123F48;
    font-family:Georgia,serif;
    font-weight:500;
}
.ecohub-contact-form .elementor-field,
.ecohub-lead-form .elementor-field{
    min-height:44px;
    border-radius:8px!important;
    border-color:#D9E5E5!important;
}
.ecohub-contact-form textarea.elementor-field,
.ecohub-lead-form textarea.elementor-field{
    min-height:116px;
}
/* ======================================================================
 * alpha.6.9.2 — APPROVED MASTER ALIGNMENT
 * Homepage + sidebar + mobile visual pass based on approved master.
 * =================================================================== */
:root{
    --ecohub-sidebar-width:292px;
    --ecohub-primary:#145761;
    --ecohub-sidebar:#0C5662;
}

@media (min-width:1025px){
    #ecohub-sidebar{
        width:var(--ecohub-sidebar-width)!important;
        background:linear-gradient(180deg,#0A4E59 0%,#0D5C68 100%)!important;
        padding:42px 28px 28px!important;
    }
    #ecohub-sidebar .elementor-widget-image img,
    #ecohub-sidebar .elementor-widget-theme-site-logo img{
        max-width:190px!important;
        width:auto!important;
    }
}

/* Master hero */
.ecohub-home-master-hero{
    min-height:520px;
}
.ecohub-home-hero-media,
.ecohub-home-hero-media .elementor-widget-image,
.ecohub-home-hero-media .elementor-widget-container{
    height:100%;
}
.ecohub-home-hero-media img{
    width:100%!important;
    height:100%!important;
    min-height:520px!important;
    object-fit:cover!important;
    object-position:center 52%!important;
}
.ecohub-home-hero-copy .elementor-heading-title{
    max-width:620px;
}
.ecohub-home-usp-item:not(:last-child){
    border-right:1px solid #E6E7E2;
}
.ecohub-home-usp-item .elementor-widget-icon .elementor-icon{
    border:0!important;
}
.ecohub-home-card-media{
    min-height:220px;
}
.ecohub-home-card-media > .elementor-widget-image,
.ecohub-home-card-media > .elementor-widget-image .elementor-widget-container{
    height:220px;
}
.ecohub-home-card-media img{
    width:100%!important;
    height:220px!important;
    object-fit:cover!important;
}
.ecohub-home-card-badge{
    position:absolute!important;
    left:18px!important;
    bottom:-27px!important;
    z-index:3!important;
}
.ecohub-home-solution-card{
    box-shadow:0 8px 26px rgba(20,87,97,.045);
    transition:transform .22s ease, box-shadow .22s ease;
}
.ecohub-home-solution-card:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 34px rgba(20,87,97,.09);
}
.ecohub-home-stat-item:not(:last-child){
    border-right:1px solid #DEDCD3;
}
.ecohub-home-value{
    position:relative;
}
.ecohub-home-value:not(:last-child){
    border-right:1px solid #E7ECEC;
}
.ecohub-home-review-card{
    min-height:190px;
}
.ecohub-home-master-cta{
    background:linear-gradient(105deg,#0B4C57 0%,#0E6471 100%)!important;
    box-shadow:0 16px 34px rgba(11,76,87,.12);
}
.ecohub-home-cta-icon .elementor-icon{
    color:#FFFFFF!important;
}

/* Partner row closer to approved master */
.ecohub-partners-row{
    border-top:0!important;
}
.ecohub-partners-row > .e-con{
    position:relative;
}
@media (min-width:1025px){
    .ecohub-partners-row > .e-con:not(:last-child)::after{
        content:"";
        position:absolute;
        right:-12px;
        top:50%;
        width:1px;
        height:44px;
        background:#E4E7E4;
        transform:translateY(-50%);
    }
    .ecohub-partners-row img{
        max-width:175px!important;
        max-height:62px!important;
    }
}

/* alpha.6.9.4 — Elementor editor fallback only.
   No frontend rule is changed by this block. */
body.elementor-editor-active #ecohub-sidebar,
body.elementor-editor-preview #ecohub-sidebar{
	position:relative!important;
	left:auto!important;
	right:auto!important;
	top:auto!important;
	bottom:auto!important;
	inset:auto!important;
	transform:none!important;
	max-height:none!important;
	overflow:visible!important;
}


/* DESKTOP ONLY: Elementor Nav Menu controls submenu state, typography,
   spacing and dropdown behavior. No display/visibility state is forced here. */


/* ======================================================================
 * alpha.6.9.14 — ELEMENTOR AUTHORITY CONTRACT
 * Theme CSS is limited to structural integration and component-specific
 * behavior. Typography, spacing, widths and visual styling remain editable
 * from Elementor unless a selector is explicitly scoped to an EcoHub custom
 * structural component.
 * =================================================================== */


/* ======================================================================
 * alpha.6.9.16 — CHI SIAMO REFINEMENT
 * Scoped only to the About page components. No global Elementor override.
 * =================================================================== */
.ecohub-about-hero-card{
    border:1px solid #ECEBE5;
    box-shadow:0 22px 60px rgba(18,63,72,.055);
}
.ecohub-about-hero-media,
.ecohub-about-story-media{
    min-height:100%;
}
.ecohub-about-hero-media img{
    display:block;
    width:100%;
    height:100%;
    min-height:430px;
    aspect-ratio:16/10;
    object-fit:cover;
}
.ecohub-about-story-media img{
    display:block;
    width:100%;
    min-height:410px;
    aspect-ratio:16/10;
    object-fit:cover;
}
.ecohub-about-hero-tags > .e-con-inner,
.ecohub-about-hero-tags{
    align-items:center;
}
.ecohub-about-hero-tags .elementor-widget-text-editor{
    padding:7px 11px;
    border:1px solid #DCE7E7;
    border-radius:999px;
    background:#FFFFFF;
}
.ecohub-about-story-notes > .e-con-inner,
.ecohub-about-story-notes{
    align-items:stretch;
}
.ecohub-about-story-notes .elementor-widget-text-editor{
    flex:1 1 0;
    padding:14px 15px;
    border:1px solid #E5ECEC;
    border-radius:12px;
    background:#FAFBF9;
}
.ecohub-about-photo-card{
    box-shadow:0 16px 40px rgba(18,63,72,.035);
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.ecohub-about-photo-card:hover{
    transform:translateY(-3px);
    border-color:#D5E2E2;
    box-shadow:0 22px 48px rgba(18,63,72,.065);
}
.ecohub-about-photo-card-media{
    position:relative;
}
.ecohub-about-photo-card-media img{
    display:block;
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
}
.ecohub-about-card-number{
    position:absolute!important;
    left:18px;
    bottom:18px;
    z-index:3;
    box-shadow:0 8px 18px rgba(18,63,72,.20);
}
.ecohub-about-value-card{
    box-shadow:0 12px 34px rgba(18,63,72,.025);
}
.ecohub-about-value-icon .elementor-icon{
    display:flex;
    align-items:center;
    justify-content:center;
}
.ecohub-about-network-wrap{
    border:1px solid #ECEBE5;
}
.ecohub-about-network-card{
    box-shadow:0 16px 42px rgba(18,63,72,.04);
}
.ecohub-about-network-card .elementor-widget-image img{
    width:auto;
    max-width:230px;
    max-height:84px;
    object-fit:contain;
}
.ecohub-about-network-points .elementor-widget-text-editor{
    position:relative;
    padding-left:18px;
}
.ecohub-about-network-points .elementor-widget-text-editor:before{
    content:"";
    position:absolute;
    left:0;
    top:.72em;
    width:6px;
    height:6px;
    border-radius:50%;
    background:#145761;
}
.ecohub-about-cert-card{
    box-shadow:0 10px 30px rgba(18,63,72,.025);
}
.ecohub-about-cert-media img{
    width:auto;
    max-width:130px;
    max-height:94px;
    object-fit:contain;
}
.ecohub-about-certs-section,
.ecohub-about-values-section,
.ecohub-about-approach-section{
    overflow:clip;
}


/* ======================================================================
 * alpha.6.9.17 — DESKTOP SIDEBAR SUBMENU FLYOUT
 * Navigation structure still comes exclusively from the WordPress menu.
 * This layer only fixes desktop presentation/interaction.
 * =================================================================== */
@media (min-width:1025px){
    body:not(.elementor-editor-active) #ecohub-sidebar{
        overflow:visible!important;
    }

    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-widget-nav-menu,
    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-widget-nav-menu .elementor-widget-container,
    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main,
    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main > .elementor-nav-menu{
        overflow:visible!important;
    }

    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main .menu-item-has-children{
        position:relative!important;
    }

    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main .menu-item-has-children > .sub-menu{
        position:absolute!important;
        left:calc(100% + 12px)!important;
        top:-8px!important;
        display:block!important;
        min-width:220px!important;
        width:max-content!important;
        max-width:280px!important;
        margin:0!important;
        padding:8px!important;
        background:#0C5662!important;
        border:1px solid rgba(255,255,255,.14)!important;
        border-radius:12px!important;
        box-shadow:0 18px 46px rgba(4,40,47,.22)!important;
        opacity:0!important;
        visibility:hidden!important;
        pointer-events:none!important;
        transform:translateX(-6px)!important;
        transition:opacity .18s ease, transform .18s ease, visibility .18s ease!important;
        z-index:10050!important;
    }

    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main .menu-item-has-children:hover > .sub-menu,
    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main .menu-item-has-children:focus-within > .sub-menu{
        opacity:1!important;
        visibility:visible!important;
        pointer-events:auto!important;
        transform:translateX(0)!important;
    }

    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main .sub-menu .menu-item-has-children > .sub-menu{
        left:calc(100% + 8px)!important;
        top:-8px!important;
    }

    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main .sub-menu a{
        min-height:42px!important;
        padding:10px 12px!important;
        border-radius:8px!important;
        color:#FFFFFF!important;
        background:transparent!important;
        white-space:nowrap!important;
    }

    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main .sub-menu a:hover,
    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main .sub-menu a:focus{
        background:rgba(255,255,255,.10)!important;
    }

    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main .menu-item-has-children > a .sub-arrow{
        transition:transform .18s ease!important;
    }

    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main .menu-item-has-children:hover > a .sub-arrow,
    body:not(.elementor-editor-active) #ecohub-sidebar .elementor-nav-menu--main .menu-item-has-children:focus-within > a .sub-arrow{
        transform:rotate(-90deg)!important;
    }
}


/* ======================================================================
 * alpha.6.9.20 — GLOBAL PRE-FOOTER
 * Reviews + global CTA + Partners live exclusively in Theme Builder Footer.
 * =================================================================== */
.ecohub-global-footer-section{
    width:100%;
}
.ecohub-global-reviews,
.ecohub-global-cta,
.ecohub-global-partners{
    position:relative;
}
.ecohub-global-partners + #ecohub-footer{
    margin-top:0!important;
}

@media (max-width:767px){
    .ecohub-global-footer-section{
        overflow:hidden;
    }
}
