/*
 * EcoHub Services — scoped refinement
 * Version 0.1.0-alpha.6.9.17
 * No generic Elementor selectors. Other pages are not affected.
 */

.ecohub-services-hero{
    min-height:500px;
}

.ecohub-services-hero-media,
.ecohub-services-hero-media .elementor-widget-image,
.ecohub-services-hero-media .elementor-widget-container{
    height:100%;
}

.ecohub-services-hero-media img{
    width:100%!important;
    height:100%!important;
    min-height:500px!important;
    object-fit:cover!important;
    object-position:center 54%!important;
}

.ecohub-services-card{
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
    box-shadow:0 10px 28px rgba(18,63,72,.045);
}

.ecohub-services-card:hover{
    transform:translateY(-4px);
    border-color:#D5E1E1!important;
    box-shadow:0 18px 42px rgba(18,63,72,.09);
}

.ecohub-services-card-media{
    min-height:220px;
}

.ecohub-services-card-media > .elementor-widget-image,
.ecohub-services-card-media > .elementor-widget-image .elementor-widget-container{
    height:220px;
}

.ecohub-services-card-media img{
    width:100%!important;
    height:220px!important;
    object-fit:cover!important;
}

.ecohub-services-card-badge{
    position:absolute!important;
    left:20px!important;
    bottom:-27px!important;
    z-index:4!important;
    box-shadow:0 8px 22px rgba(18,63,72,.10);
}

.ecohub-services-method-row{
    position:relative;
    overflow:visible!important;
}

.ecohub-services-step{
    position:relative;
    text-align:center;
}

.ecohub-services-step:not(:last-child)::after{
    content:"";
    position:absolute;
    top:43px;
    left:calc(50% + 52px);
    width:calc(100% - 104px);
    height:1px;
    background:linear-gradient(90deg,#CFDADA 0%,#CFDADA 72%,transparent 72%);
    background-size:8px 1px;
    pointer-events:none;
}

.ecohub-services-step-icon{
    position:relative;
    z-index:2;
    box-shadow:0 8px 22px rgba(18,63,72,.04);
}

.ecohub-services-value-card{
    transition:transform .2s ease, box-shadow .2s ease;
    box-shadow:0 8px 22px rgba(18,63,72,.035);
}

.ecohub-services-value-card:hover{
    transform:translateY(-3px);
    box-shadow:0 16px 34px rgba(18,63,72,.075);
}

.ecohub-services-value-icon{
    margin-bottom:2px;
}

.ecohub-services-cta{
    box-shadow:0 18px 42px rgba(18,63,72,.16);
}

.ecohub-services-cta .ecohub-services-cta-copy .elementor-widget-text-editor{
    max-width:760px;
}

@media (max-width:1024px){
    .ecohub-services-hero{
        min-height:0;
    }

    .ecohub-services-hero-media img{
        min-height:380px!important;
    }

    .ecohub-services-card-media,
    .ecohub-services-card-media > .elementor-widget-image,
    .ecohub-services-card-media > .elementor-widget-image .elementor-widget-container{
        min-height:190px;
        height:190px;
    }

    .ecohub-services-card-media img{
        height:190px!important;
    }

    .ecohub-services-step:not(:last-child)::after{
        display:none;
    }
}

@media (max-width:767px){
    .ecohub-services-hero > .e-con-inner{
        display:flex!important;
        flex-direction:column!important;
        gap:16px!important;
    }

    .ecohub-services-hero-copy{
        order:1!important;
    }

    .ecohub-services-hero-media{
        order:2!important;
        min-height:0!important;
        border-radius:15px!important;
        overflow:hidden!important;
    }

    .ecohub-services-hero-media img{
        min-height:0!important;
        height:auto!important;
        max-height:240px!important;
        aspect-ratio:16/9!important;
        object-fit:cover!important;
        border-radius:15px!important;
    }

    .ecohub-services-card{
        width:100%!important;
        max-width:100%!important;
    }

    .ecohub-services-card-media,
    .ecohub-services-card-media > .elementor-widget-image,
    .ecohub-services-card-media > .elementor-widget-image .elementor-widget-container{
        min-height:0!important;
        height:auto!important;
    }

    .ecohub-services-card-media img{
        height:auto!important;
        max-height:205px!important;
        aspect-ratio:16/9!important;
    }

    .ecohub-services-card-badge{
        left:16px!important;
        bottom:-25px!important;
    }

    .ecohub-services-step{
        width:100%!important;
        max-width:100%!important;
        display:grid!important;
        grid-template-columns:72px minmax(0,1fr)!important;
        grid-template-rows:auto auto auto!important;
        column-gap:14px!important;
        text-align:left!important;
        align-items:start!important;
        padding:10px 0!important;
    }

    .ecohub-services-step > .ecohub-services-step-icon{
        grid-column:1!important;
        grid-row:1 / span 3!important;
    }

    .ecohub-services-step > .elementor-widget-heading,
    .ecohub-services-step > .elementor-widget-text-editor{
        grid-column:2!important;
    }

    .ecohub-services-step > .elementor-widget-heading:nth-of-type(1){
        grid-row:1!important;
    }

    .ecohub-services-step > .elementor-widget-heading:nth-of-type(2){
        grid-row:2!important;
    }

    .ecohub-services-step > .elementor-widget-text-editor{
        grid-row:3!important;
    }

    .ecohub-services-value-card{
        width:100%!important;
        max-width:100%!important;
    }

    .ecohub-services-cta{
        align-items:stretch!important;
    }

    .ecohub-services-cta-action{
        width:100%!important;
        align-items:stretch!important;
    }
}

@media (prefers-reduced-motion:reduce){
    .ecohub-services-card,
    .ecohub-services-value-card{
        transition:none!important;
    }

    .ecohub-services-card:hover,
    .ecohub-services-value-card:hover{
        transform:none!important;
    }
}
